가끔 조인 기능에 대한 질문을 받는다. 대부분 RDB의 조인을 기대하는 질문. 결론부터 말하면 다음 구조로 운영 가능한 데이터라면 엘라스틱 조인이 답이 될 수 있다.
하나의 데이터를 (고유성을 가진 필드로 분리된) 하나의 레코드로 관리하는 RDB에 익숙하다면 어색하기 짝이 없는 구조. 엘라스틱 조인은 여러 개의 필드 분리가 필요 없는 단일 문서 구조, '질문-답변'처럼 쌍을 이루는 문서 구조에 적합한 기능임을 알 수 있다.
RDB 테이블 구조의 조인 기능을 사용하고 싶다면 성에 차진 않더라도 enrich processor나 aggregate 필터 등등 다른 방법을 찾는 게 장수의 지름길.
아마존이나 엘라스틱의 SQL 기능이 아직까지 초기 수준을 벗어나지 못하고 있다는 사실에서도 알 수 있지만, NoSQL이 SQL처럼 동작하기란 자동차가 물 위를 달리는 것만큼이나 어렵지 않나 싶다. 그런데 스플렁크를 보면 아닌 것도 같고?
사실 조인도 필요 없음 |
엘라스틱이 런타임 필드 소개할 때부터 느낌이 오긴 했는데, 공식 문서 페이지 디자인도 스플렁크랑 비슷해지고, 아마존은 SPL 비슷한 PPL(Piped Processing Language) 만들고 있는 걸 보면 스플렁크가 NoSQL의 워너비쯤 되는 모양.
관련 글
댓글 없음:
댓글 쓰기