NoSQL(Not Only)
DOCUMENT
MongoDB, CouchDB
KEY/VALUE
Riak, Redis
COLUMNAR
HBase/Hadoop, Cassandra
GRAPH
GRAPHS
are everywhere, used by everyone, for everything
Neo4J, HyperGraphDB
SPRING DATA
JPA
MONGODB
REST
GEMFIRE
NEO4J
REDIS
JDBC EXTENSIONS
HADOOP
COUCHBASE
CASSANDRA
DYNAMODB
그래프 데이터베이스는
노드, 방향성, 속성들을
그래프 구조로 구성하여
저장하는 데이터베이스다.
네트워크 및 데이터센터 관리
물리적, 가상으로 연결된 네트워크 레이어 계층들이 완벽하게 Neo4j 그래프와 매칭
소셜 기능
추천 기능
인증 및 접근 권한 관리
노드(Nodes) - 그래프 데이터 기록
USE CASES
물류 시스템의 배송 관련
관계(Relationships) - 노드들을 연결
속성(Properties) - key/value 로 구성된 값
SIMPLE SAMPLE
More Nodes
Relationship properties
Consider Relationships
Labels
A Graph Database
- 그래프에 저장되는 데이터들을 노드(Node)라고함
- 데이터 값들은 속성(Properties)으로 불림
- 간단한 KEY/VALUE 형태로 저장
- 하나의 노드에 0개 이상의 Label 지정가능
- Labels 자체에는 속성을 저장할 수 없다
- Emil has known joahn since 2001
- Emil rates lan 5(out of 5)
- Every else can have similar relationship properties
- Emil KNOWS johan and lan
- Johan KNOWS lan and Rik
- Rik and Ian KNOWS Allison
- 비슷한 노드들이라도 각각 다른 속성값을 가질 수 있다
- 속성값은 문자열, 숫자, boolean 값을 가진다
- Neo4j는 수십억개의 노드 저장이 가능!
CUSTOMERS