2. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL?
= Non SQL
= Non relational
= Not only SQL
3. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
Non SQL
Non Relational
Why not
Relational ?
Why not SQL?
4. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
Relational DB (관계형
DB). 데이터 – 관계 분리
. 데이터 일관성 보장
. JOIN 등 복잡한 연산 가능
. 대량 데이터 입력/처리
. 비정형 데이터 관리
. 간단한 데이터로 빠른 응답
필요 시?
5. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL
. 특정 용도 특화
. RDB 약점 보완
. Next Gen DBs
- non-relational
- distributed
- open-source
- horizontally scalable
Not only
SQL
6. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
Distributed
. 데이터 독립적으로 설계
. 대량데이터 입력 용이
. JOIN 미사용
Horizontally
Scalable. Scale-up << Scale-out
7. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL
. 데이터 Cache
. 배열형식 데이터 고속 처리
. 대량/비정형 데이터 보존
9. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
“By 2017, the "NoSQL" label will
cease to distinguish DBMSs, leading
data and analytics leaders to select
multimodel and/or specific document-
style, key-value, graph and table-style
engines.”
- Gartner “Magic Quadrant for Operational Database Management Systems
2016”
10. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Key-value store
- data 저장 : key-value 형태
- key 사용한 완전 일치검색 사용
- 속도 빠름
- 종류 : eventually consistent,
ordered,
RAM (휘발성),
solid-state drive or rotating disk (영
속성)
11. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Key-value store
eventually consistent ordered RA M solid-state drive
D ynam o IBM Inform ix C -ISA M A erospike A erospike
O racle N oSQ L D atabase InfinityD B C oherence C ouchbase Server
Riak M em cachedD B M em cached C oherence
Redis O racle N oSQ L D atabase
Tokyo C abinet
- 제품
- 사용 예
- 세션정보
- 쇼핑카트 정보
- 제품 카테고리
- 제품 리뷰
- IP forwarding 테이블
12. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Document store (Document-
oriented DB)
- data 저장 : document
- Schemaless
- 복잡한 검색조건 사용 가능 (JOIN 불가)
: Xquery, JSON, SPASQL
data(value)에 대한 조회 가능
- Scale-out이 쉬움 (Sharding)
13. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Document store
- 제품
- 사용 예
- 블로그 플랫폼
- Web 사용분석
- Twit
- 채팅프로그램
- MongoDB
- Amazon Dynamo
- Couchbase
- MarkLogic
- Azure DocumentDB
- Google Cloud Datastore
출처 : Database.guide
14. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Column-oriented DB (table-style)
- data 관리 : 열 단위 (RDB : 행 단위 관리)
- 대량 데이터 특정 열 검색 용이
- 모든 행에 대한 특정 열의 일괄 갱신 용이
- 대량 데이터 쓰기속도 강점
- 압축을 통한 스토리지 효율화 이득
- record 전체에 대한 조회 대응 느림
- 사용이 어려움
Row-based
Column-based
15. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
- 제품
- 사용 예
- Data warehouse
- Relational DB 대체 (OLAP 성)
- HBase
- Cassandra
- Accumulo
- Hypertable
- Azure table storage
- Amazon Redshift
- Oracle Exadata
• Column-oriented DB
16. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
• Graph Database
- data + 관계 저장
- 대량 데이터 복잡한 Query에 강점
- depth 2 초과하는 검색 비교적 빠름
- ACID 제공 (보통 NoSQL은 BASE 제공)
- nodes, edges, properties 구성
17. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
NoSQL 종류
- 제품
- 사용 예
- Fraud Detection
- Real-time 추천엔진
- 관계 기반 Search
- SNS 분석
- IAM
- neo4j
- OrientDB
- Titan
- ArangDB
• Graph DB
18. Sarc Seminar January 2017 – Data Series I
by sarc.io
NoSQL??삵
Reference
- 4 predictions for NoSQL technologies in 2016 (http://www.information-
age.com/evolution-knowledge-workers-123460640/)
- Magic Quadrant for Operational Database Management Systems
(https://www.gartner.com/document/3467318?ref=solrResearch&refval=17892
5527&qid=3a2cd31003f6a3917500e34591634ac1)
- What is ~~ Database? (http://database.guide)