2012.08.20

기고 | 빅 데이터 시대, 어떤 DBMS를 골라야 할까

Andrew Oliver | InfoWorld
빅 데이터 시대에서 관계형 DBMS는 더 이상 많은 데이터베이스 업무용으로 적합하지 않다. NoSQL 대안 제품들 중 무엇을 선택해야 할 지를 참고할 만한 기준을 소개하고자 한다.

필자는 지난 몇 주간 시카고에서 필자 회사의 지사를 설립하는 일에 전념했다. 실리콘밸리가 빅 데이터 업체들의 집결지라면, 시카고는 빅 데이터 사용자와 종사자들의 집결지라 할 수 있다. 그래서 이곳의 많은 사람들은 거의 매일 빽빽한 미팅과 빅 데이터 행사에 참석하는 일에도 어느정도 익숙한 편이다.

거의 대부분의 빅 데이터 행사들에서 NoSQL에 대한 소개와, 우리가 더 이상 모든 것을 RDBMS에 담을 수 없는 이유를 들을 수 있다. 당장 많은 청중들에게는 생소한 이야기다. 몇 가지 NoSQL 데이터베이스가 존재하고, 각기 다른 데이터세트를 위한 각각의 데이터세트를 사용해야할 타당한 이유도 존재한다. 이건 “NoSQL=규모(scale)”라는 IT업계의 마케팅보다 훨씬 얽히고 설킨 문제다.

그렇게 많은 종류의 NoSQL 데이터베이스가 존재하는 이유로 브루어의 정리(Brewer’s Theorem)로 알려진 CAP정리를 들 수 있다. CAP정리는, 지속성(consistency), 가용성(availability), 파티션 수용성(partition tolerance)이라는 세 가지 요소들 중 최대 두 가지밖에 제공할 수 없다는 법칙이다. 각기 다른 데이터세트와 다른 런타임 규칙으로, 당신은 얻는 것이 있으면 잃는 것도 생기게 된다. 각각의 데이터베이스 기술마다 각각의 장단점이 있다. 데이터의 복잡성과 시스템와 확장성 또한 여기에 개입하여 작용한다.

NoSQL 데이터베이스 선정 기준

NoSQL 다양성의 또 다른 이유는 기초 컴퓨터 공학이나, 심지어 기초 수학에서 찾을 수 있다. 어떤 데이터세트의 경우, 키 값이 쌍으로 쉽게 매핑된다. 본질적으로, 데이터 평준화로 인한 의미축소는 일어나지 않고, 그 관계의 재구성또한 필요하지 않다. 반면, 다른 데이터 아이템과의 관계가 데이터 아이템들 자체만큼이나 중요한 데이터세트도 존재한다.

관계형 데이터베이스는 세트 이론(set theory)에서 파생된 관계 대수(relational algebra)에 기반한다. 세트 이론에 기반한 관계들은 많은 데이터세트에서 유효하지만, 부자간 혹은 관계의 거리가 필수적인 경우, 세트 이론은 그다지 효과가 없다. 그럴땐 그래프 이론(graph theory)으로 데이터 솔루션을 효율적으로 설계할 수 있다. 다시 말하자면, 관계형 데이터베이스는 키-값을 쌍으로 사용할 수 있는 데이터에는 너무 과하고, 더 많은 컨텍스트(context)가 필요한 데이터의 경우에는 좀 부족하다. 과하게 되면 확장가능성을 낭비하는 셈이고 부족하게되면 성능저하를 감수해야 한다.




2012.08.20

기고 | 빅 데이터 시대, 어떤 DBMS를 골라야 할까

Andrew Oliver | InfoWorld
빅 데이터 시대에서 관계형 DBMS는 더 이상 많은 데이터베이스 업무용으로 적합하지 않다. NoSQL 대안 제품들 중 무엇을 선택해야 할 지를 참고할 만한 기준을 소개하고자 한다.

필자는 지난 몇 주간 시카고에서 필자 회사의 지사를 설립하는 일에 전념했다. 실리콘밸리가 빅 데이터 업체들의 집결지라면, 시카고는 빅 데이터 사용자와 종사자들의 집결지라 할 수 있다. 그래서 이곳의 많은 사람들은 거의 매일 빽빽한 미팅과 빅 데이터 행사에 참석하는 일에도 어느정도 익숙한 편이다.

거의 대부분의 빅 데이터 행사들에서 NoSQL에 대한 소개와, 우리가 더 이상 모든 것을 RDBMS에 담을 수 없는 이유를 들을 수 있다. 당장 많은 청중들에게는 생소한 이야기다. 몇 가지 NoSQL 데이터베이스가 존재하고, 각기 다른 데이터세트를 위한 각각의 데이터세트를 사용해야할 타당한 이유도 존재한다. 이건 “NoSQL=규모(scale)”라는 IT업계의 마케팅보다 훨씬 얽히고 설킨 문제다.

그렇게 많은 종류의 NoSQL 데이터베이스가 존재하는 이유로 브루어의 정리(Brewer’s Theorem)로 알려진 CAP정리를 들 수 있다. CAP정리는, 지속성(consistency), 가용성(availability), 파티션 수용성(partition tolerance)이라는 세 가지 요소들 중 최대 두 가지밖에 제공할 수 없다는 법칙이다. 각기 다른 데이터세트와 다른 런타임 규칙으로, 당신은 얻는 것이 있으면 잃는 것도 생기게 된다. 각각의 데이터베이스 기술마다 각각의 장단점이 있다. 데이터의 복잡성과 시스템와 확장성 또한 여기에 개입하여 작용한다.

NoSQL 데이터베이스 선정 기준

NoSQL 다양성의 또 다른 이유는 기초 컴퓨터 공학이나, 심지어 기초 수학에서 찾을 수 있다. 어떤 데이터세트의 경우, 키 값이 쌍으로 쉽게 매핑된다. 본질적으로, 데이터 평준화로 인한 의미축소는 일어나지 않고, 그 관계의 재구성또한 필요하지 않다. 반면, 다른 데이터 아이템과의 관계가 데이터 아이템들 자체만큼이나 중요한 데이터세트도 존재한다.

관계형 데이터베이스는 세트 이론(set theory)에서 파생된 관계 대수(relational algebra)에 기반한다. 세트 이론에 기반한 관계들은 많은 데이터세트에서 유효하지만, 부자간 혹은 관계의 거리가 필수적인 경우, 세트 이론은 그다지 효과가 없다. 그럴땐 그래프 이론(graph theory)으로 데이터 솔루션을 효율적으로 설계할 수 있다. 다시 말하자면, 관계형 데이터베이스는 키-값을 쌍으로 사용할 수 있는 데이터에는 너무 과하고, 더 많은 컨텍스트(context)가 필요한 데이터의 경우에는 좀 부족하다. 과하게 되면 확장가능성을 낭비하는 셈이고 부족하게되면 성능저하를 감수해야 한다.


X