12 11월 2015 뉴스

Timelion: The time series composer for Kibana

By Rashid Khan

Kibana 데모를 준비하면서 'Kibana로 시계열 데이터를 보다 다양하게 활용하고 싶다'는 생각이 들었습니다. 동시에 Kibana에 필요한 새로운 표현식 구문에 대해 '쿼리, 변환, 시각화를 한 곳에서 한 줄로 설명할 수 있는 방법이 있다면 어떨까?'라는 생각도 했었습니다. 하지만 다음날, 대서양 횡단 비행기를 타야 했고 다른 일정도 있었습니다. 타임 시리즈와 표현식을 모두 수정한 실험을 준비하기 위해 기내에서 소규모 1인 해커톤을 수행했어야 했습니다.

휴스톤에 도착했을 때는 구문, 여러 차트와 몇 가지 간단한 함수를 완성한 상태였습니다. 몇 시간 동안의 추가 해킹을 통해 저는 피닉스에서 이전에는 답하지 못했던 질문에 대한 해답을 얻게 되었습니다.

  • 일정 시간 동안 고유한 사용자마다 각각 몇 개의 페이지가 노출되는가?
  • 이번 주 금요일과 지난 주 금요일에는 어떤 차이가 있는가?
  • 오늘 내 사이트를 방문한 사용자는 일본 인구의 몇 %인가?
  • S&P 500 지수의 10일 이동 평균은 얼마인가?
  • 지난 2년 간 수행된 모든 검색의 누적 합계는 얼마인가?

Timelion은 이 모든 것은 물론, 그 이상의 것을 가능하게 합니다. Timelion은 시계열 데이터에 대한 Elastic {Re}search 프로젝트로서 단순한 실험 차원을 넘어 실제로 완벽하게 사용 가능합니다. 누구나 지금 즉시 사용 가능합니다.

Elastic {Re}search란?

{Re}search는 Elastic의 최첨단 기술 연구소입니다. {Re}search는 가장 매력적인 모래성을 지을 수 있는 모래로 가득 찬 놀이터와 같습니다. {Re}search 프로젝트는 아이디어를 얻고 그 아이디어를 실현, 공유하려는 Elastic 엔지니어들로부터 시작되었습니다. {Re}search 태그로 실행되는 프로젝트는 차세대 혁신 기능을 현재도 사용(또는 적극적으로 남용) 가능한 패키지로 강조합니다. 독립적으로 실행되는 프로젝트도 있지만 다수는 기존 제품의 플러그인과 확장 기능입니다. {Re}search를 설치, 실험적으로 사용해보고 그 경험을 함께 공유해보시기 바랍니다. 새로운 아이디어에 대한 피드백 수집에 많은 도움이 됩니다.

Timelion 소개

Timelion(확실하게 "타임라인" 과 연관이 있으며 발음도 비슷합니다.) 은 완전히 독립적인 데이터 소스를 데이터 검색, 시계열 조합, 변환 및 시각화를 결합하는 간단한 1행 표현식 언어로 구동되는 단일 인터페이스로 통합합니다. 모든 Timelion 표현식은 데이터 소스 함수(예를 들어,.elasticsearch(*) 또는 줄여서 .es(*) 로 시작됩니다. 이는 일정 기간 Elasticsearch에서 모든 항목의 수를 올바르게 계산하는 것만큼 간단합니다. 정말 쉽습니다. 예와 같이 함수는 항상 '.'(도트)로 시작됩니다. 위 첫 번째 질문, “일정 시간 동안 고유한 사용자마다 각각 몇 개의 페이지가 노출되는가?”에 대한 해답을 제시하려면 어떻게 해야 할까요? 두 파트를 쉼표로 구분하여 동일한 차트에서 함께 나타낼 수 있을 것입니다. 그러나 보다 효과적인 방법은...

Screen Shot 2015-11-12 at 2.16.23 PM.png개별 함수보다 많은 작업을 수행할 수 있고 함수를 연결할 수도 있지만 실제로 원하는 것은 총 노출 수를 고유 사용자 수로 나누는 것입니다. 이제 이 작업을 수행할 수 있습니다. 즉, 모든 것을 가져와 해당 시리즈의 모든 포인트를 .divide()

Screen Shot 2015-11-12 at 2.14.56 PM.png그 밖에 많은 작업을 수행할 수 있습니다. Timelion은 동일한 구문을 사용하여 다른 데이터 소스에 연결될 수 있습니다. 예를 들어, Worldbank의 데이터 API. 시리즈는 괄호와 그룹에 적용된 함수를 사용하여 목록에 그룹화될 수도 있습니다. 모든 데이터 소스는 오프셋 인수(예: offset=-1M)를 수신하여 지난 달을 현재와 같이 비교합니다. Timeline은 레퍼런스에 대해 다른 간격으로 시리즈를 맞출 수도 있으며 이 경우 예를 들어, 연간 Worldbank 데이터를 포함하는 Elasticsearch 시리즈를 분 단위로 나눌 수 있습니다.

Screen Shot 2015-11-12 at 2.27.39 PM.png

이는 동일한 표현식 내에서도 해당 소스를 mix and match할 수 있음을 의미합니다. 따라서 "미국 국내 총생산 중 우리 회사가 차지하는 전년 대비 비율을 얼마일까"와 같은 엉뚱한 질문을 제시할 수 있습니다. 또한 수치가 크다면 오랜 친구 Rashid와 함께 공유할 수도 있습니다. 물론 농담입니다.

Funk-shun Al

T덧셈, 나눗셈과 같은 단순 연산에서 이동 평균, 누적 합계, 편차와 같은 25가지 다양한 함수가 존재합니다. 이는 Timelion 함수와 데이터 소스를 연달아 사용이 가능하고 작성 방법 또한 매우 간단함을 의미합니다. 새로운 제안을 완성하는 데는 여러분의 도움이 필요합니다. 마음껏 해킹해보세요!

직접 경험해보세요!

여기서 모든 것을 알려드리지 않겠습니다. 이 포스팅의 내용보다 많은 것을 기대하셔도 좋습니다. Timelion은 구성과 일부 간단한 초보 기능을 안내하기 위한 자습서를 제공할 계획입니다. 나머지는 여러분 스스로 찾아내시기 바랍니다.

설치 방법도 간단합니다. 실행 후 Kibana 서버와 함께 브라우저에서 ./bin/kibana plugin -i kibana/timelion. 을 여십시오. 또는 최고의 Elasticsearch호스팅 서비스인 Found에서 무료로 시도해볼 수 있습니다. Found by Elastic.

직접, 마음껏 사용해보십시오.

설치가 완료되면 Kibana에 새 아이콘이 나타납니다. 이 아이콘을 누르면 app switcher 가 열려 다른 앱을 실행할 수 있습니다.

Screen Shot 2015-11-12 at 5.33.20 PM.png

Elastic{ON} tour에 참여한 사용자들은 이 동영상을 이미 보았을 것입니다. Elastic{ON}에 참여하지 않았던 사용자라면 좋은 교훈을 얻었을 것입니다. Elastic{ON}16 을 방문해 보시기 바랍니다.


이 블로그에서는 유용한 팁과 정보를 얻을 수 있습니다. Elastic 트위터 에서 제공되는 정보에도 주의를 기울이십시오. 좋은 아이디어가 있으신가요? 멋진 Timelion 함수를 작성하셨나요? 여기서 완성해보십시오..