[샌프란시스코(미국)=김우용 기자] 마이크로소프트(MS)가 아마존웹서비스(AWS) 람다와 경쟁하는 ‘애저 펑션’을 공개했다.
MS는 31일(현지시간) 미국 샌프란시스코에서 열린 ‘빌드2016’ 컨퍼런스에서 ‘애저 펑션(function)’ 프리뷰를 공개했다.
애저 펑션은 서버없이 연산을 실행하는 이벤트 드리븐 솔루션이다. 웹, 모바일, 빅데이터, IoT 환경에서 특정 이벤트 발생 시 작동하도록 가벼운 코드를 만들어 두면, 이벤트에 따라 사전 정의된 실행을 하게 된다. 애저 펑션 실행에 필요한 인프라는 수요에 따라 자동으로 확장된다.
특히, 사물인터넷 시나리오에 적합하다. 애저 IoT 스위트의 요소 중 하나인 ‘애저 IoT 허브’를 데이터 파이프라인으로 두고, 저장소로 애저 데이터레이크나 SQL서버 데이터베이스를 설정한 뒤, 실시간 데이터 흐름 속에서 특정 이벤트에 반응해 ‘애저 펑션’에 정의된 기능이 작동하게 할 수 있다.
애저 펑션 실행 시에만 과금하므로, 평상시 유휴 상태에서 VM 비용을 지불하지 않아도 된다.
MS는 애저 펑션의 런타임을 오픈소스로 공개해 애저 밖 어느 인프라 환경에서든 애저 펑션을 이용할 수 있게 하겠다고 밝혔다.
애저 펑션은 AWS 람다와 경쟁하는 서비스다. 대규모 데이터를 수집, 처리, 저장 절차를 거치지 않고 실시간으로 활용하려는 트렌드에 대응한다. 또한, 이벤트 드리븐 애플리케이션, 데이터 드리븐 애플리케이션 유행과 맥을 같이 한다.
빅데이터, IoT, 머신러닝 등 최근 IT업계의 핫이슈는 공통적으로 방대한 데이터를 어떻게 다룰 것인가를 핵심에 둔다. 초기 빅데이터의 흐름이 수많은 데이터를 어떤 방식으로든 저장해둔 뒤 인사이트를 찾는 쪽이었다면, 이제 흘러가는 데이터에 실시간으로 쿼리를 날려 즉각적으로 활용하는 것도 중요해졌다.
하지만, 스트리밍 데이터 분석은 데이터의 양도 많고, 형태도 소스에 따라 제각각이다. 데이터는 유실없이 끊기지 않고 흘러 종국의 저장소에 적재돼야 한다.
스트림 데이터를 실시간으로 활용하려면 프로그래밍을 위한 그림을 완전히 달리 그리는 게 필요하다. ‘이벤트 소스-스트림 파이프-이벤트 싱크’로 전체 뼈대를 만들고, 정형화된 분류법에 따라 특정 이벤트를 걸러내는 ‘필터’, 혹은 ‘이벤트 리스너(listener)’를 스트림에 붙여 이벤트 발생에 반응하게 하는 식이다.
이때 동시성(concurrency) 확보와 상태 문제 해결을 위해 함수형 패러다임을 활용하는게 유용하다. 자바스크립트처럼 람다 표현식을 사용하거나, 시간의 흐름에 따라 상태의 변화값을 리스트(list)로 만드는 것이다. 후자의 경우가 좀더 유연한데, 특정 순간의 상태값을 알기 위해 시점만 알면 된다. 이벤트 발생 시점에 따른 모든 값을 누적될 가치가 있는 것으로 본다는 게 중요하다.
관련기사
- MS, 비주얼스튜디오용 자마린 무료화2016.04.01
- MS “두려워 말고, AI와 대화하라”2016.04.01
- MS, AI 채팅봇 개발도구 공개2016.04.01
- MS '윈도10' 올 여름 더 강력해진다2016.04.01
전통적 객체지향프로그래밍의 경우 필요없는 I/O를 빈번하게 일으키고, 항상 실행을 위한 자원을 대기시켜놔야 한다. 이벤트 드리븐 프로그래밍과 애저 펑션은 이같은 문제를 해결하는데 적합하다.
스콧 거스리 MS 클라우드및엔터프라이즈사업부 총괄부사장은 “애저 펑션은 C#, 노드JS 등 다양한 언어로 코드를 작성할 수 있으며, 다양하게 발생하는 이벤트 상황에 자동으로 응답하도록 설정할 수 있다”며 “코드 실행 시에만 과금하므로 막대한 비용 효과를 거둘 수 있다”고 강조했다.