* 빅데이터 3대 활용 요소
자원 |
활용할 수 있는 빅데이터 발견 |
기술 |
빅데이터 플랫폼의 데이터 저장/관리 기술(NoSQL, ETL) 및 처리 기술(Hadoop) |
인력 |
Data Scientist 역량 향상 |
NoSQL(Not only Sql)은 지금까지 사용되왔던 관계형 데이터베이스 모델에 얽매이지 않고 비테이블 기반이다.
NoSQL은 추가/추출 Operation과 레코드 저장 기능에 대해서 최적화가 적용되어 대용량 데이터 처리에 대해서
기존 관계형 데이터베이스가 가지고 있던 단점을 보완할 수 있다.
* 클라우드 서비스에 적용되는 데이터베이스 솔루션
|
가상 머신 기반으로 적용 |
데이터베이스 서비스 |
SQL 데이터 모델 |
- Oracle DB - IBM DB2 - Ingres - PostgreSQL - MySQL - NuoDB - GaianDB |
- MySQL - MS-SQL - Heroku PostgreSQL - Clustrix DB - Xeround cloud DB - EnterpriseDB Postgres + Cloud DB |
NoSQL 데이터 모델 |
- CouchDB(아마존) - Hadoop(아마존) - Apache cassandra(아마존) - Neo4J(아마존) - MongoDB(아마존) |
- Amazon DynamoDB - Amazon SimpleDB - Cloudant Data Layer (CouchDB) - Google AppEngine DataStore - MongoDB |
HBase는 구글 빅테이블의 클론 솔루션이며 무한한 데이터 수용 확장성을 지원한다.
HBase는 HDFS(Hadoop Distributed File System)에 구현한 분산 칼럼 기반 데이터베이스이며,
대규모 데이터셋에 실시간으로 랜덤 엑세스가 필요할 때 사용할 수 있는 Hadoop 응용프로그램이다.
* Oracle NoSQL Database 특징
- 단순한 데이터 모델 지원(Major/Sub key를 사용한 key/value 쌍 지원)
- 단순한 프로그래밍 모델 지원(ACID transaction과 JSON 지원)
- Oracle DB & Hadoop 연동
- 확장가능한 throughput 제공
- 동적인 용량 추가 동작 지원
- 설정 가능한 다중 복제를 이용한 높은 가용성 제공
* MongoDB 특징
- 실행용 공식 Binary 파일은 Windows,Mac, Linux, Solaris에서 사용가능
- 공식 드라이버는 C,C#,C++, Haskell, JAVA, javascript, Perl, PHP, Python, Ruby, Scala에서 사용가능
- 임시(Ad-hoc) Javascript Query 지원(모든 문서 속성에서 기준을 사용해 데이터 검색)
- Query에서 정규 표현식 지원
- MongoDB의 Query 결과는 limit(),skip(),sort(),count(),distinct(),group()을 포함해 필터링과 수집 및 정렬에 필요한 다양한 함수를 제공하는 커서에 저장
- 고급 수집용 map/reduce 구현
- GridFS를 사용하는 대용량 파일 스토리지
- RDBMS 형태의 속성 인덱싱 지원
- Query 최적화 기능 지원
- MySQL 과 비슷한 Master/Slave 복제
- 참조쿼리를 허용하는 콜렉션 기반 오브젝트 스토리지
- Auto-sharding 을 이용한 수평적 확장
- 고성능의 동시성을 구현 가능 : 제자리 쓰기(In-place update)
'프로그래밍 > DataBase' 카테고리의 다른 글
[NoSQL] Riak - Full Text Search (0) | 2013.03.18 |
---|---|
[NoSQL] Visual Guide to NoSQL Systems (0) | 2013.03.18 |
카산드라 - Apache Cassandra (0) | 2013.01.29 |
[Mobile] SQLite - 모바일기기 (0) | 2012.11.07 |
[Oracle] 오라클 HINT (0) | 2012.09.26 |