Tags

호튼웍스 하둡과 NoSQL 데이터베이스의 연동 방법 (Apache Accumulo case – Security)

This article is based on Hortonworks Partner Content and Expertise

지금까지 다양한 솔루션을 하둡과 연동하는 것의 의미와 방법에 대해서 소개를 드렸습니다.
자사의 솔루션을 하둡과 연동하는 것의 의미와 방법
엔터프라이즈 레벨 실시간 시스템의 최강 조합(하둡 + 인메모리 데이터베이스)
HIVE를 통해 다른 분석툴과 연동하는 방법

하지만 최근에 그 확장성과 빠른 성능때문에 많은 주목을 받고 있는 NoSQL 데이터베이스와의 연동 트렌드에 대해서는 특별히 소개드린 적이 없습니다.
가장 큰 이유는 이미 HBase라고 하는 데이터베이스가 하둡 에코시스템의 중요한 부분으로서 긴밀하게 연동하면서 발전하고 있기 때문입니다.
HBase는 구글의 빅테이블의 설계를 구현하면서 Billion 단위의 많은 로우(Row)를 가진 큰 테이블을 처리할 수 있는 확장성을 가지고 있고 이미 여러 가지 레퍼런스를 통해서 그 효용성을 입증하고 있습니다.

이번에 호튼웍스와 ‘Apache Accumulo’의 개발자들이 독립한 회사인 ‘Sqrrl Inc’과의 제휴를 통해서 공개한 레퍼런스 아키텍쳐를 소개드리려고 합니다.

그렇다면 이미 검증된 HBase가 엔터프라이즈 레벨로 진화해 나가는 상황에서 역시 빅데이블의 철학을 계승한 또 하나의 NoSQL 데이터베이스와의 협력 혹은 연동이 필요한 이유는 무엇일까요?

Apache Accumulo는 최근에 3 ~ 4번 째로 가장 적용이 많이 되는 NoSQL 데이터베이스라고 합니다만 주로 금융회사나 정부 기관 및 의료 기관에서 급격히 보급되고 있는 빅테이블 클론입니다.
태생이 NSA(National Security Agency)에서 2008년에 시작된 프로젝트라는 것에서 부터 특히 보안 부분에 특화되었다는 인상을 받을 수도 있겠습니다.
그 시작점이 암시하는 것처럼 보안을 강화하고 성능을 높히기 위한 아키텍쳐를 가지고 있습니다.

빅데이터도 역시 데이터를 다루는 시스템이기 때문에 보안이라는 측면은 항상 양날의 칼과 같습니다.
일전에도 하둡의 저장 및 전송시의 암호화API Gateway를 통한 보안 시스템에 대한 글을 소개드렸습니다만 데이터베이스 관점에서 보안을 강화한다는 점은 역시나 중요한 출발점이 되겠습니다.

그래서 ‘Apache Accumulo’의 가장 큰 특징인 ‘Cell-level Security’에 대해서 간략하게 소개하겠습니다.
용어는 어려워 보이지만 컨셉은 간단합니다. 기존의 빅데이블 데이터 모델(Data Model)에 이 칼럼 혹은 ‘(Key, Value)’를 읽을 수 있는 권한을 명시한 다른 Key를 하나 더 추가한 것입니다.

유저가 쿼리(Query)를 실행시켜서 이 칼럼을 읽을 수 있으려면 위의 Key에 저장된 ‘보안 라벨’을 만족시켜야 한다는 컨셉입니다.
이것은 계속 변화하는 보안 정책에 맞춰서 각 칼럼의 ‘보안 라벨’의 값을 유연하게 지정함으로써 금융회사나 공공 기관 등의 보안 수준을 유지할 수 있게 해 주는 역할을 가지고 있습니다.
즉, 유저는 본인이 인증되어서 접근할 수 있는 칼럼에만 접근할 수 있도록 아주 세밀하게 보안 정책을 적용할 수 있습니다.

하둡 에코시스템이 빅데이터의 기반 플랫폼이 되면서 일전에 설명드린 하둡 파일시스템(HDFS)과 API 호출 레벨의 보안 플랫폼과 더불어서 에코 시스템 요소들의 전체적인 보안도 큰 고려 요소입니다.

호튼웍스는 Accumulo가 가지고 있는 이 아키텍쳐를 통해서 보다 보안 정책이 중요한 기업 고객들에게도 어플하려고 합니다.
실제로 미국의 의료기관에서는 ‘Affordable Care Act’에서 파생하는 엄격한 데이터 보안 정책이 요구되는 데 Accumulo는 이러한 데이터의 보안성을 유지하면서 데이터를 공유할 수 있는 레퍼런스를 많이 제공하면서 급격히 보급이 되었습니다.

호튼웍스는 이러한 Accumulo를 호튼웍스 데이터 플랫폼(Hortonworks Data Platform)에 통합하면서 아래와 같이 다양한 관점에서 보안성을 향상시켰습니다.
- Secure SQL search to enable real-time aggregations of multi-structured data
- Secure full-text search, using the Lucene syntax to enable keyword search
- Secure graph search, to enable exploration of how data is connected
- JSON support, to enable development of document-style data models
- High concurrency to power applications supporting large numbers of users
- A policy engine and labeling engine to simplify the application of fine-grained security labels to datasets and to enable both Attribute Based and Role Based Access Controls.
이러한 보안성 향성은 결국 Accumulo가 각 칼럼 별로 접근 권한을 유연하게 적용할 수 있다는 특징에서 나온다는 것을 바로 캐치할 수 있을 것입니다.

squirll

위 레퍼런스 아키텍쳐를 보면 기존의 HBase를 ‘Apache Accumulo’로 완전히 대체하는 것이 가능합니다.
이 연동을 통해서 보안에 민감한 금융 기관, 정부 기관, 의료 기관의 빅데이터 프로젝트에 중요한 컴포넌트의 하나로 적용될 수 있을 것으로 기대합니다.

호튼웍스 데이터 플랫폼은 ‘Apache Accumulo’에 대한 기술 지원도 함께 담당하고 있으니 연동 아키텍쳐에 대한 좀 더 자세한 사항은 아래에서 다운로드받아서 검토해 보기 바랍니다.
호튼웍스와 Apache Accumulo의 레퍼런스 아키텍쳐 <-- 다운로드

-----------------------------------------------------------------------------------------------------------------------------
ASD Technologies는 호튼웍스(Hortonworks Inc)와의 Consulting Partnership을 통해서
빅데이터에 대한 도입 컨설팅 및 구축을 도와드리고 있습니다.

ASD Technologies는 펜타호(Pentaho Inc)와의 Consulting and Distribution Partnership을 통해서
빅데이터에서 비즈니스 인사이트를 얻기 위한 방법을 함께 모색하고 있습니다.

호튼웍스 파트너 홈페이지
ASD Technologies Korea 홈페이지

Contact Point : sunung@asdtech.co
—————————————————————————————————————————–