SlideShare a Scribd company logo
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Graph Database Meetup
#2 Graph Database Usecase
Ver 1.0
2018.02.26
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Index
1. Session 0. Graph Database 소개
2. Session 1. Graph Database Usecase 소개
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Session 0.
What is The Graph Database
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Database 동향
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 5
Database
관계형 데이터베이스는 지난 40여년 간 기업 IT 환경의 주요 역할을 수행하였음
Relational Database
1970년대 개발되어 현재까지 다양한
시스템에서 데이터 운영에 크게 기여한
데이터베이스
운영 시스템
(Database Management System)
테이블 형태(Tabular Format)에 객체(Entity)를
적재하고 외래키(Foreign Key)와 Join 문을
통하여 각 Entity 간 관계를 정의
2000년대 들어 급격하게 변화하는 데이터
환경에 따라, 새로운 형태의 데이터 운영
방식의
필요성이 대두됨에 따라 NoSQL 개발 운동의
기폭제가 됨
Social
Data
Mobile
Data
i18n
Spatial
Sensor
interwebs
broadband
mobile access
cultural changes
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 6
Database 패러다임의 변화
DB시장의 패러다임의 변화에 따라 NoSQL의 필요성이 대두됨
PC/인터넷 발달로
물리적인 정보들의 데이터화
(3차 산업)
관계형
DB
그래프
DB
형식과 규격이 정의된
정형 데이터만 존재
(고객신상/매출/재고/회계 등)
MB/GB 단위 규모로
수용 가능
기간 통계 분석
(년/분기/월/주)
빅데이터 분석/
기계학습을 통한 산업자동화
(4차 산업)
TB/PB 단위의
대규모 저장소가 필요해짐
실시간
추이 분석
형식이 없는
비정형 데이터가 증가
(비정형/음악/메시지/소셜/위치 등)
산업 패러다임 변화 데이터 형태 증가 데이터 량 증가 활용 주기 증가
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 7
Graph Database 전망
Graph Database는 전체 데이터베이스 중에서 5년 연속 인지도 상승률 1위 기록
“시장 패러다임은 DB시장의 교체 대상으로, ‘Graph DB’를 지목하고 있다.”
Graph DBMS
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Graph Database의 개념
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 9
Graph 개념
Graph는 점(Vertex)와 선(Edge)의 연결로 데이터를 저장하여, 특정 대상 간 상관관계를 파악하기 용이 함
Vertex Edge Graph+ =
대상 객체를 표현함
ex) 홍길동/21세/남/…
ex) 모자/캡/남성용/...
관계를 표현함
ex) 구입하다, 대행하다, 선물하다
대상 간 인과관계를 표현함
ex) OOO쇼핑몰 8월 구매 흐름
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 10
Graph Data
모든 종류의 데이터 간의 관계를 점(Vertex or Node)과 선(Edge or Relationship)으로 연결한 데이터 모델
Property
Edge
Vertex
Label
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 11
Graph Database
Graph Data Model을 기반으로 데이터를 저장, 관리, 분석할 수 있는 기술을 제공하는 데이터베이스
Graph Query Language
Administration Tools
Data Management
데이터 처리 및 분석을 위한 직관적인 언어
시스템 관리, 백업, 모니터링 등과 같은 관리 도구
데이터 캐시, 클러스터 구성, 트랜잭션 관리
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 12
RDB와 GDB 비교 (1/3) – Performance
데이터 조회시 Join을 위한 테이블 스캔 연산이 없어 응답속도가 매우 빠름.
Depth RDBMS execution time(s) GraphDB execution time(s) Records returned
2 0.016 0.01 ~2500
3 30.267 0.168 ~110,000
4 1543.505 1.359 ~600,000
5 Unfinishied 2.132 ~800,000
했을 때,
응답 시간 차이 1.6~1135배
Relational Database Graph Database
Alisa의 친구의 친구를
검색하는 질의(Query)를
요청
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 13
RDB와 GDB 비교 (2/3) – Flexibility
데이터 구조 변경이 자유로운 Schema-less한 데이터 구조로 급변하는 비즈니스 환경에 유연하게 적용 가능.
Relational Database Graph Database
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 14
RDB와 GDB 비교 (3/3) - Intuitive
시각적인 그래프를 통해 데이터를 확인하므로 직관적으로 문제에 대한 파악 및 insight 도출 가능
고객정보 테이블
상품정보 테이블 상품유형 테이블
주문정보 테이블
구매하다
ㆍID: 1
ㆍName: Bill
ㆍGender: Male
ㆍAge: 25
ㆍProductID: 10235
ㆍProductName: ElectricRazor
ㆍUnitPrice: 164,000
ㆍProductType: Home_Appliances
ㆍOrderID: 17082101
ㆍProductID: 10235
ㆍUserID: 1
ㆍQuantity: 1
ㆍPrice: 164,000
Bill E_Razor
property property property
Relational Database Graph Database
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 15
활용 사례
파나마 페이퍼(Panama Papers) 유출 사건 자료 분석에 활용된 Graph Database
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Session 1.
- 주요 GDB 솔루션 소개
- Usecase #1. 블록체인(가상화폐) 데이터 적용
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
주요 Graph Database 솔루션 소개
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 18
Graph Database 제품 소개
Graph Database 시장의 주요제품 특성 비교
● 개발언어: Java
● 라이선스: GPL v3 / Commercial
● 질의 언어: Cypher
● HA: Master-Slave
● 데이터 분산: 미지원
● 저장 형태: Graph
● 개발언어: C
● 라이선스: Apache 2.0
● 질의 언어: SQL, Cypher
● HA: Master-Slave
● 데이터 분산: Hadoop 커넥터 제공
● 저장 형태: Graph, Table, Document
● 개발언어: Java
● 라이선스: Apache 2.0 / Commercial
● 질의 언어: Orient SQL
● HA: Master-Slave / Master-Master
● 데이터 분산: 지원
● 저장 형태: Graph, Document
● 개발언어: C/C++
● 라이선스: Apache 2.0 / Commercial
● 질의 언어: AQL
● HA: Master-Slave / Master-Master
● 데이터 분산: 지원
● 저장 형태: Graph, Document, Key-Value
빅데이터
인지도
생산성
유연성 성능
빅데이터
인지도
생산성
유연성 성능
빅데이터
인지도
생산성
유연성 성능
빅데이터
인지도
생산성
유연성 성능
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 19
Graph Database 제품 소개
Graph Database 제품 별 장단점
+ 멀티모델 지원
+ 다양한 툴 제공
- 불안정한 엔진
- 관계데이터 X
+ 시장 점유율 1위
+ 직관적 언어 지원
- GDB Only
- GC로 성능 불안정
+ 멀티모델 지원
+ RDB수준의 백업/리커버리
+ RDB수준의 ACID
+ 직관적 언어 지원
+ 자체 연동 모듈 지원
- 시장 진입 단계
+ 멀티모델 지원
+ C 기반 빠른 엔진
- 그래프 질의 복잡
- 툴 안정성 부족
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 20
지원 언어 비교
ANSI SQL(RDBMS)
SELECT me.ID, count(fof.fof_id)
FROM PERSON AS me, FRIEND AS myfriend,
(SELECT p1.ID AS friend_id,
p2.FRIEND_ID AS fof_id
FROM PERSON AS p1, FRIEND AS p2
WHERE p1.ID = p2.MY_ID
) AS fof
WHERE me.ID = myfriend.MY_ID
AND myfriend.FRIEND_ID = fof.friend_id
AND me.ID BETWEEN 50000 AND 60000;
Cypher(Neo4J&AgensGraph)
MATCH (p1:PERSON)-[:FRIEND*2]->(p3:PERSON)
WHERE p1.ID <=50000 AND p1.ID >= 60000
RETURN p1.ID, count(p3.ID);
AQL(ArangoDB)
LET users = ( FOR user IN person
FILTER user.ID <= 50000
FILTER user.ID >= 60000
RETURN user.ID)
LET foafs = ( FOR foaf IN 2..2
OUTBOUND users friend
COLLECT
WITH COUNT INTO num_of_foaf
RETURN num_of_foaf)
RETURN MERGE ( users, foafs )
Orient SQL(OrientDB)
SELECT traversedVertex(0),
count(traversedVertex(2))
FROM (TRAVERSE out(“friend”)
FROM person
WHERE id <= 50000
AND id >= 60000
WHILE $depth <= 2)
WHERE @class = ‘socialGraph’;
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.
Usecase #1. 블록체인(가상화폐) 적용 사례
1. Bitcoin Blockchain Modeling(Neo4j)
2. Graph Model 을 이용한 Bitcoin W - Real User 찾기
3. Bitnine Bitcoin 가시화 프로젝트 소개
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 22
Bitcoin Blockchain Modeling
Bitcoin Blockchain Modeling
1) Neo4j 소개 자료
https://neo4j.com/blog/import-bitcoin-blockchain-neo4j/
2) Neo4j 깃허브
https://github.com/in3rsha/bitcoin-to-neo4j
3) 관련 블로그
http://learnmeabitcoin.com/guide/
1. 비트 코인의 작동 원리
2. 블록 체인 데이터
3. Graph Modeling
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 23
Bitcoin Blockchain Modeling
참고 Links
Bitcoin API : https://blockchain.info/api
Real Time tx Subscribe http://192.168.0.54:1880/
Total Block Size : https://blockchain.info/ko/charts/blocks-size
Latest Block https://blockchain.info/block-index/1674370?format=json
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 24
연구 소개 [Graph Model을 이용한 Bitcoin Wallet - Real User 찾기]
https://arxiv.org/pdf/1502.01657.pdf
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 25
연구 소개 [Graph Model을 이용한 Bitcoin Wallet - Real User 찾기]
실크로드 사건
실크로드 사이트 FBI
마약 운반 등 혐의로 가석방 없는 종신형을선고받은
온라인 암거래 사이트 ‘실크로드’ 운영자 로스
윌리엄 울브리히트(가운데. 출처 :
프리로스닷오아르지)
비트코인 사건들 : https://steemkr.com/coinkorea/@tintom/27jykb
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 26
기술 및 범위
● Graph기술을 이용한 서로다른 Layer에 대하여 모니터링/분석/예측이 가능한 시스템
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 27
통합 분석 - Global / Internal Trading 연계 모델
ⓒ 2017 by Bitnine Co, Ltd. All Rights Reserved.
예측 - 이상 행위/거래 예측 및 사고 예방
28
예측
사고예방
패턴 리스트 관리 패턴 분석 조치행위
Internal Trading
Global Trading
이상 패턴 80% 일치 패턴
이상 패턴 리스트 관리를 통해 일정 확률 이상의 패턴 발생 시 신속한 대응이 가능한 시스템 제공
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 29
Value of GraphDB
Analysis
Find Pattern
Storage
Easy Modeling
Prediction
High Speed
ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.

More Related Content

What's hot (20)

PDF
[DL Hacks 実装]MIDINET: A Convolutional Generative Adversarial Network For Symb...
Deep Learning JP
 
PDF
Data Modeling & Metadata for Graph Databases
DATAVERSITY
 
PDF
ACM SIGIR 2020 Tutorial - Reciprocal Recommendation: matching users with the ...
Iván Palomares Carrascosa
 
PPTX
1. 아키텍쳐 설계 프로세스
Terry Cho
 
PDF
Nnstreamer stream pipeline for arbitrary neural networks
NAVER Engineering
 
PDF
AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기
Amazon Web Services Korea
 
PPTX
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 2.3.0対応)
fisuda
 
PDF
디지털 트윈 기술과 활용 사례 - 공간정보를 중심으로
SANGHEE SHIN
 
PDF
Slides: Knowledge Graphs vs. Property Graphs
DATAVERSITY
 
PDF
RDF 해설서
Hansung University
 
PDF
[금융사를 위한 AWS Generative AI Day 2023] 8_Wrap-up과 QnA_금융사의 AI와 관련하...
AWS Korea 금융산업팀
 
PDF
[215] Druid로 쉽고 빠르게 데이터 분석하기
NAVER D2
 
PDF
OAuth 2.0の概要とセキュリティ
Hiroshi Hayakawa
 
PDF
스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...
AWSKRUG - AWS한국사용자모임
 
PDF
AI-Driven Personalized Email Marketing
Databricks
 
PDF
[AKIBA.AWS] AWS Elemental MediaConvertから学ぶコーデック入門
Shuji Kikuchi
 
PPTX
Socially-aware Traffic Management (Workshop Sozioinformatik)
SmartenIT
 
PDF
텐서플로우로 배우는 딥러닝
찬웅 주
 
PDF
New SmartEMR Architecture Paradigm of Focus Based Contents Meta Model
제관 이
 
PDF
대규모 온프레미스 하둡 마이그레이션을 위한 실행 전략과 최적화 방안 소개-유철민, AWS Data Architect / 박성열,AWS Pr...
Amazon Web Services Korea
 
[DL Hacks 実装]MIDINET: A Convolutional Generative Adversarial Network For Symb...
Deep Learning JP
 
Data Modeling & Metadata for Graph Databases
DATAVERSITY
 
ACM SIGIR 2020 Tutorial - Reciprocal Recommendation: matching users with the ...
Iván Palomares Carrascosa
 
1. 아키텍쳐 설계 프로세스
Terry Cho
 
Nnstreamer stream pipeline for arbitrary neural networks
NAVER Engineering
 
AWS Summit Seoul 2023 | 생성 AI 모델의 임베딩 벡터를 이용한 서버리스 추천 검색 구현하기
Amazon Web Services Korea
 
NGSIv1 を知っている開発者向けの NGSIv2 の概要 (Orion 2.3.0対応)
fisuda
 
디지털 트윈 기술과 활용 사례 - 공간정보를 중심으로
SANGHEE SHIN
 
Slides: Knowledge Graphs vs. Property Graphs
DATAVERSITY
 
RDF 해설서
Hansung University
 
[금융사를 위한 AWS Generative AI Day 2023] 8_Wrap-up과 QnA_금융사의 AI와 관련하...
AWS Korea 금융산업팀
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
NAVER D2
 
OAuth 2.0の概要とセキュリティ
Hiroshi Hayakawa
 
스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...
AWSKRUG - AWS한국사용자모임
 
AI-Driven Personalized Email Marketing
Databricks
 
[AKIBA.AWS] AWS Elemental MediaConvertから学ぶコーデック入門
Shuji Kikuchi
 
Socially-aware Traffic Management (Workshop Sozioinformatik)
SmartenIT
 
텐서플로우로 배우는 딥러닝
찬웅 주
 
New SmartEMR Architecture Paradigm of Focus Based Contents Meta Model
제관 이
 
대규모 온프레미스 하둡 마이그레이션을 위한 실행 전략과 최적화 방안 소개-유철민, AWS Data Architect / 박성열,AWS Pr...
Amazon Web Services Korea
 

Similar to Graph Database Meetup in Korea #2. Graph Database Usecase (그래프 데이터베이스 활용사례) (20)

PDF
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
Amazon Web Services Korea
 
PDF
No sql survey report
Gichan Lee
 
PDF
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
InBum Kim
 
PDF
NoSQL 간단한 소개
Wonchang Song
 
PPT
The nosql echossytem
종석 박
 
PPT
빅데이터 기본개념
현주 유
 
PDF
Amazon Neptune- 신규 그래프 데이터베이스 서비스 활용::김상필, 강정희::AWS Summit Seoul 2018
Amazon Web Services Korea
 
PDF
[AWS Builders] 우리 워크로드에 맞는 데이터베이스 찾기
Amazon Web Services Korea
 
PPT
3장
상혁 권
 
PDF
MongoDB 도입을 위한 제언
DongHan Kim
 
PDF
MongoDB 도입을 위한 제언 @krmug
Ha-Yang(White) Moon
 
PDF
Introduction to mongo db
Minho Kim
 
PDF
NoSQL Guide & Sample
Sangon Lee
 
PDF
워크로드에 맞는 데이터베이스 찾기 - 박주연 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
Amazon Web Services Korea
 
PDF
2012 빅데이터 big data 발표자료
Wooseung Kim
 
PDF
2012.04.11 미래사회와 빅 데이터(big data) 기술 nipa
영진 박
 
PDF
(OkdevTV) 2024년 9월 2일 개발 이야기 - 좋은 리팩토링 vs 나쁜 리팩토링
Jay Park
 
PDF
XML, NoSQL, 빅데이터, 클라우드로 옮겨가는 시장 상황 속, 데이터모델링 여전히 중요한가
Devgear
 
PDF
빅데이터 기술 현황과 시장 전망(2014)
Channy Yun
 
PDF
Not only sql 정리
상봉 이
 
AWS CLOUD 2018- Amazon Neptune, 신규 그래프 데이터베이스 서비스 (김상필 솔루션즈 아키텍트)
Amazon Web Services Korea
 
No sql survey report
Gichan Lee
 
(11th korea data_tech_seminar)using_mongo_db_4.0_and_nosql_inbum_kim(skc&amp;c)
InBum Kim
 
NoSQL 간단한 소개
Wonchang Song
 
The nosql echossytem
종석 박
 
빅데이터 기본개념
현주 유
 
Amazon Neptune- 신규 그래프 데이터베이스 서비스 활용::김상필, 강정희::AWS Summit Seoul 2018
Amazon Web Services Korea
 
[AWS Builders] 우리 워크로드에 맞는 데이터베이스 찾기
Amazon Web Services Korea
 
3장
상혁 권
 
MongoDB 도입을 위한 제언
DongHan Kim
 
MongoDB 도입을 위한 제언 @krmug
Ha-Yang(White) Moon
 
Introduction to mongo db
Minho Kim
 
NoSQL Guide & Sample
Sangon Lee
 
워크로드에 맞는 데이터베이스 찾기 - 박주연 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
Amazon Web Services Korea
 
2012 빅데이터 big data 발표자료
Wooseung Kim
 
2012.04.11 미래사회와 빅 데이터(big data) 기술 nipa
영진 박
 
(OkdevTV) 2024년 9월 2일 개발 이야기 - 좋은 리팩토링 vs 나쁜 리팩토링
Jay Park
 
XML, NoSQL, 빅데이터, 클라우드로 옮겨가는 시장 상황 속, 데이터모델링 여전히 중요한가
Devgear
 
빅데이터 기술 현황과 시장 전망(2014)
Channy Yun
 
Not only sql 정리
상봉 이
 
Ad

Graph Database Meetup in Korea #2. Graph Database Usecase (그래프 데이터베이스 활용사례)

  • 1. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Graph Database Meetup #2 Graph Database Usecase Ver 1.0 2018.02.26
  • 2. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Index 1. Session 0. Graph Database 소개 2. Session 1. Graph Database Usecase 소개
  • 3. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Session 0. What is The Graph Database
  • 4. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Database 동향
  • 5. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 5 Database 관계형 데이터베이스는 지난 40여년 간 기업 IT 환경의 주요 역할을 수행하였음 Relational Database 1970년대 개발되어 현재까지 다양한 시스템에서 데이터 운영에 크게 기여한 데이터베이스 운영 시스템 (Database Management System) 테이블 형태(Tabular Format)에 객체(Entity)를 적재하고 외래키(Foreign Key)와 Join 문을 통하여 각 Entity 간 관계를 정의 2000년대 들어 급격하게 변화하는 데이터 환경에 따라, 새로운 형태의 데이터 운영 방식의 필요성이 대두됨에 따라 NoSQL 개발 운동의 기폭제가 됨 Social Data Mobile Data i18n Spatial Sensor interwebs broadband mobile access cultural changes
  • 6. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 6 Database 패러다임의 변화 DB시장의 패러다임의 변화에 따라 NoSQL의 필요성이 대두됨 PC/인터넷 발달로 물리적인 정보들의 데이터화 (3차 산업) 관계형 DB 그래프 DB 형식과 규격이 정의된 정형 데이터만 존재 (고객신상/매출/재고/회계 등) MB/GB 단위 규모로 수용 가능 기간 통계 분석 (년/분기/월/주) 빅데이터 분석/ 기계학습을 통한 산업자동화 (4차 산업) TB/PB 단위의 대규모 저장소가 필요해짐 실시간 추이 분석 형식이 없는 비정형 데이터가 증가 (비정형/음악/메시지/소셜/위치 등) 산업 패러다임 변화 데이터 형태 증가 데이터 량 증가 활용 주기 증가
  • 7. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 7 Graph Database 전망 Graph Database는 전체 데이터베이스 중에서 5년 연속 인지도 상승률 1위 기록 “시장 패러다임은 DB시장의 교체 대상으로, ‘Graph DB’를 지목하고 있다.” Graph DBMS
  • 8. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Graph Database의 개념
  • 9. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 9 Graph 개념 Graph는 점(Vertex)와 선(Edge)의 연결로 데이터를 저장하여, 특정 대상 간 상관관계를 파악하기 용이 함 Vertex Edge Graph+ = 대상 객체를 표현함 ex) 홍길동/21세/남/… ex) 모자/캡/남성용/... 관계를 표현함 ex) 구입하다, 대행하다, 선물하다 대상 간 인과관계를 표현함 ex) OOO쇼핑몰 8월 구매 흐름
  • 10. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 10 Graph Data 모든 종류의 데이터 간의 관계를 점(Vertex or Node)과 선(Edge or Relationship)으로 연결한 데이터 모델 Property Edge Vertex Label
  • 11. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 11 Graph Database Graph Data Model을 기반으로 데이터를 저장, 관리, 분석할 수 있는 기술을 제공하는 데이터베이스 Graph Query Language Administration Tools Data Management 데이터 처리 및 분석을 위한 직관적인 언어 시스템 관리, 백업, 모니터링 등과 같은 관리 도구 데이터 캐시, 클러스터 구성, 트랜잭션 관리
  • 12. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 12 RDB와 GDB 비교 (1/3) – Performance 데이터 조회시 Join을 위한 테이블 스캔 연산이 없어 응답속도가 매우 빠름. Depth RDBMS execution time(s) GraphDB execution time(s) Records returned 2 0.016 0.01 ~2500 3 30.267 0.168 ~110,000 4 1543.505 1.359 ~600,000 5 Unfinishied 2.132 ~800,000 했을 때, 응답 시간 차이 1.6~1135배 Relational Database Graph Database Alisa의 친구의 친구를 검색하는 질의(Query)를 요청
  • 13. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 13 RDB와 GDB 비교 (2/3) – Flexibility 데이터 구조 변경이 자유로운 Schema-less한 데이터 구조로 급변하는 비즈니스 환경에 유연하게 적용 가능. Relational Database Graph Database
  • 14. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 14 RDB와 GDB 비교 (3/3) - Intuitive 시각적인 그래프를 통해 데이터를 확인하므로 직관적으로 문제에 대한 파악 및 insight 도출 가능 고객정보 테이블 상품정보 테이블 상품유형 테이블 주문정보 테이블 구매하다 ㆍID: 1 ㆍName: Bill ㆍGender: Male ㆍAge: 25 ㆍProductID: 10235 ㆍProductName: ElectricRazor ㆍUnitPrice: 164,000 ㆍProductType: Home_Appliances ㆍOrderID: 17082101 ㆍProductID: 10235 ㆍUserID: 1 ㆍQuantity: 1 ㆍPrice: 164,000 Bill E_Razor property property property Relational Database Graph Database
  • 15. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 15 활용 사례 파나마 페이퍼(Panama Papers) 유출 사건 자료 분석에 활용된 Graph Database
  • 16. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Session 1. - 주요 GDB 솔루션 소개 - Usecase #1. 블록체인(가상화폐) 데이터 적용
  • 17. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 주요 Graph Database 솔루션 소개
  • 18. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 18 Graph Database 제품 소개 Graph Database 시장의 주요제품 특성 비교 ● 개발언어: Java ● 라이선스: GPL v3 / Commercial ● 질의 언어: Cypher ● HA: Master-Slave ● 데이터 분산: 미지원 ● 저장 형태: Graph ● 개발언어: C ● 라이선스: Apache 2.0 ● 질의 언어: SQL, Cypher ● HA: Master-Slave ● 데이터 분산: Hadoop 커넥터 제공 ● 저장 형태: Graph, Table, Document ● 개발언어: Java ● 라이선스: Apache 2.0 / Commercial ● 질의 언어: Orient SQL ● HA: Master-Slave / Master-Master ● 데이터 분산: 지원 ● 저장 형태: Graph, Document ● 개발언어: C/C++ ● 라이선스: Apache 2.0 / Commercial ● 질의 언어: AQL ● HA: Master-Slave / Master-Master ● 데이터 분산: 지원 ● 저장 형태: Graph, Document, Key-Value 빅데이터 인지도 생산성 유연성 성능 빅데이터 인지도 생산성 유연성 성능 빅데이터 인지도 생산성 유연성 성능 빅데이터 인지도 생산성 유연성 성능
  • 19. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 19 Graph Database 제품 소개 Graph Database 제품 별 장단점 + 멀티모델 지원 + 다양한 툴 제공 - 불안정한 엔진 - 관계데이터 X + 시장 점유율 1위 + 직관적 언어 지원 - GDB Only - GC로 성능 불안정 + 멀티모델 지원 + RDB수준의 백업/리커버리 + RDB수준의 ACID + 직관적 언어 지원 + 자체 연동 모듈 지원 - 시장 진입 단계 + 멀티모델 지원 + C 기반 빠른 엔진 - 그래프 질의 복잡 - 툴 안정성 부족
  • 20. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 20 지원 언어 비교 ANSI SQL(RDBMS) SELECT me.ID, count(fof.fof_id) FROM PERSON AS me, FRIEND AS myfriend, (SELECT p1.ID AS friend_id, p2.FRIEND_ID AS fof_id FROM PERSON AS p1, FRIEND AS p2 WHERE p1.ID = p2.MY_ID ) AS fof WHERE me.ID = myfriend.MY_ID AND myfriend.FRIEND_ID = fof.friend_id AND me.ID BETWEEN 50000 AND 60000; Cypher(Neo4J&AgensGraph) MATCH (p1:PERSON)-[:FRIEND*2]->(p3:PERSON) WHERE p1.ID <=50000 AND p1.ID >= 60000 RETURN p1.ID, count(p3.ID); AQL(ArangoDB) LET users = ( FOR user IN person FILTER user.ID <= 50000 FILTER user.ID >= 60000 RETURN user.ID) LET foafs = ( FOR foaf IN 2..2 OUTBOUND users friend COLLECT WITH COUNT INTO num_of_foaf RETURN num_of_foaf) RETURN MERGE ( users, foafs ) Orient SQL(OrientDB) SELECT traversedVertex(0), count(traversedVertex(2)) FROM (TRAVERSE out(“friend”) FROM person WHERE id <= 50000 AND id >= 60000 WHILE $depth <= 2) WHERE @class = ‘socialGraph’;
  • 21. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. Usecase #1. 블록체인(가상화폐) 적용 사례 1. Bitcoin Blockchain Modeling(Neo4j) 2. Graph Model 을 이용한 Bitcoin W - Real User 찾기 3. Bitnine Bitcoin 가시화 프로젝트 소개
  • 22. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 22 Bitcoin Blockchain Modeling Bitcoin Blockchain Modeling 1) Neo4j 소개 자료 https://neo4j.com/blog/import-bitcoin-blockchain-neo4j/ 2) Neo4j 깃허브 https://github.com/in3rsha/bitcoin-to-neo4j 3) 관련 블로그 http://learnmeabitcoin.com/guide/ 1. 비트 코인의 작동 원리 2. 블록 체인 데이터 3. Graph Modeling
  • 23. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 23 Bitcoin Blockchain Modeling 참고 Links Bitcoin API : https://blockchain.info/api Real Time tx Subscribe http://192.168.0.54:1880/ Total Block Size : https://blockchain.info/ko/charts/blocks-size Latest Block https://blockchain.info/block-index/1674370?format=json
  • 24. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 24 연구 소개 [Graph Model을 이용한 Bitcoin Wallet - Real User 찾기] https://arxiv.org/pdf/1502.01657.pdf
  • 25. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 25 연구 소개 [Graph Model을 이용한 Bitcoin Wallet - Real User 찾기] 실크로드 사건 실크로드 사이트 FBI 마약 운반 등 혐의로 가석방 없는 종신형을선고받은 온라인 암거래 사이트 ‘실크로드’ 운영자 로스 윌리엄 울브리히트(가운데. 출처 : 프리로스닷오아르지) 비트코인 사건들 : https://steemkr.com/coinkorea/@tintom/27jykb
  • 26. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 26 기술 및 범위 ● Graph기술을 이용한 서로다른 Layer에 대하여 모니터링/분석/예측이 가능한 시스템
  • 27. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 27 통합 분석 - Global / Internal Trading 연계 모델
  • 28. ⓒ 2017 by Bitnine Co, Ltd. All Rights Reserved. 예측 - 이상 행위/거래 예측 및 사고 예방 28 예측 사고예방 패턴 리스트 관리 패턴 분석 조치행위 Internal Trading Global Trading 이상 패턴 80% 일치 패턴 이상 패턴 리스트 관리를 통해 일정 확률 이상의 패턴 발생 시 신속한 대응이 가능한 시스템 제공
  • 29. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved. 29 Value of GraphDB Analysis Find Pattern Storage Easy Modeling Prediction High Speed
  • 30. ⓒ 2018 by Bitnine Co, Ltd. All Rights Reserved.