주목할만한 OLAP 데이터베이스 아파치 피노(Apache Pinot)
![]() |
출처: https://pinot.apache.org/ |
아파치 피노(Apache Pinot)는 실시간 분산 OLAP 데이터베이스입니다. OLAP 쿼리를 빠르게 처리합니다.
Pinot Noir 와인처럼 '피노'라고 읽습니다. 위 이미지 가운데에 있는 와인잔을 생각하시면 쉽게 기억하실 수 있을 것 같습니다.
오픈소스이고 Java(자바)로 만들어졌습니다.
피노는 column oriented/based 데이터베이스입니다. 빠른 속도를 내기 위해 데이터를 row(행)가 아닌 column(열)을 중심으로 저장하고 처리합니다.
카프카(Kafka), 하둡(Hadoop), 스파크(Spark), 클라우드 스토리지(cloud storage)에서 데이터를 ingest(냠냠)할 수 있습니다.
컨트롤러, 브로커, 세그먼트 등의 개념이 등장하지만 Kafka 같은 실시간 데이터 스트리밍 플랫폼을 다뤄보신 분은 익숙하실 겁니다. 피노는 자바로 만들어졌고, 카프카도 자바로 만들어졌습니다. 왠지 궁합이 좋을 것 같고 실제 많은 사용사례(use case)에도 카프카와 연동되어 사용되고 있습니다. 어찌보면 당연한 것 같습니다. 카프카 같은 플랫폼에서 실시간으로 처리된 빅데이터를 실시간으로 저장하는 분산 데이터베이스입니다. 피노에 저장된 데이터에 OLAP 쿼리를 실행하게 됩니다. 빅데이터를 다루려면 실시간(real-time), 분산(distributed), 수평적확장(horizontally scalable), low latency(낮은 지연성), concurrency(동시성) 등을 다 고려해야 하고 그래서 빅데이터를 다루는 많은 기업들이 피노를 선택해 사용하는 것 같습니다.
![]() |
출처: https://pinot.apache.org/ |
![]() |
출처: https://pinot.apache.org/ |
피노는 헬릭스 (Apache Helix)를 사용해서 클러스터를 관리합니다. 헬릭스는 주키퍼(Apache Zookeeper)를 사용해서 클러스터 상태를 관리합니다.
![]() |
출처: https://pinot.apache.org/ |
아래는 현재 아파치 피노(Pinot)를 사용하는 대표 기업들 리스트입니다.
![]() |
출처: https://pinot.apache.org/ |
진입 장벽은 조금 높은 데이터베이스이지만, 실시간 분산 처리를 할 수 있는 고성능 데이터베이스이기 때문에 앞으로 어떻게 될지 기대가 큽니다.
아파치 피노의 공식사이트 링크입니다.
- The End -
Comments
Post a Comment