성장通

[리뷰] 실무자를 위한 그래프 데이터 활용법 본문

리뷰/도서 리뷰

[리뷰] 실무자를 위한 그래프 데이터 활용법

백악기작은펭귄 2022. 5. 23. 10:46

* 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

실무자를 위한 그래프 데이터 활용법 (The Practitioner's Guide to Graph Data)

데니즈 고즈넬, 마티아스 브뢰헬러 저, 우정은 역

 

실무자를 위한 그래프 데이터 활용법

국내 최초 그래프 씽킹 안내서! 문제 해결력을 키우는 그래프 씽킹 완벽 가이드북. 그래프 씽킹으로 그래프 데이터를 효율적으로 구축하는 방법을 배워 은행 고객 관리 시스템부터 넷플릭스와

m.hanbit.co.kr


간단 서평

이름에서부터 당당하게 밝히듯이, 이론적인 연구보다는 실무적인 활용에 더욱 초점을 맞춘 책이다. 저자인 데니즈 고즈넬과 마티아스 브뢰헬러 모두 현업에서 그래프를 다루는만큼, 순수 이론보다는 실무적인 개념을 유용한 팁과 함께 다룬다.

 

데이터베이스의 등장과 RDBMS로의 발전, 그리고 NoSQL의 등장 및 그래프 데이터가 각광 받게 된 배경을 자연스럽게 풀어내며 읽는 사람으로 하여금 그래프 데이터를 하나의 선택지로 둘 수 있게 한다. 여기서 '하나의 선택지'라 말한 이유는, 저자도 그래프 데이터가 만능이 아님을 정확히 명시하고 있기 때문이다. 어떤 문제에 어떻게 그래프를 적용해 풀어낼 것인지에 대한 고민을 '그래프씽킹'이라 칭하며 그래프 도입을 고려할 때 생각해보아야 할 질문들을 배치하였다. 사고에 있어서 균형을 잃는 것은, 연구자의 길을 걷는 사람이든 현업에 종사하는 엔지니어든 중요하므로 이처럼 오해가 없도록 명시한 점이 참 좋았다.

 

또 실무에 초점이 맞춰진 책인만큼, 예제 데이터를 RDBMS와 그래프 데이터베이스 두 가지 방식으로 구축해보면서 각각의 장단점을 명료하게 설명하고 있다. 그래프가 효율적인 다양한 데이터를 가져와 함께 그래프 표현법을 익히고 데이터베이스를 구축하면서 그래프의 매력을 쉽고 즐겁게 알아갈 수 있다.

 

경로 찾기나 추천 시스템에 이를 어떻게 적용할 수 있을지를 두 챕터씩을 들여가며 충분히 설명한 것도 이 책의 매력 중 하나이다. 엔지니어를 위한 책이라 해놓고, 이론은 한가득인데 실무 내용은 뒤에 부록 느낌으로 '첨부'한 책이 많은데 이 책은 '실무'를 강조한 만큼 최신 트렌드를 가득 채워 읽는 사람들을 즐겁게 한다. 그렇다고 이론에 소홀한 것은 또 아니라서, 그래프 데이터베이스뿐만 아니라 데이터베이스를 다루는 모든 사람들에게 단단한 기반을 마련해줄 좋은 책이라고 생각한다.


목차

CHAPTER 1 그래프 씽킹

1.1 떠오르는 그래프 기술

1.2 그래프 씽킹이란

1.3 복잡한 문제를 해결하는 기술 선택하기

1.4 그래프 씽킹 여정 시작하기

 

CHAPTER 2 관계형에서 그래프 씽킹으로

2.1 2장 미리 보기: 관계형 개념을 그래프 용어로 변환하기

2.2 관계형과 그래프의 차이

2.3 관계형 데이터 모델링

2.4 그래프 데이터의 개념

2.5 그래프 스키마 언어

2.6 관계형 vs 그래프: 결정 고려 사항

2.7 마치며

 

CHAPTER 3 간단한 Customer 360

3.1 3장 미리 보기: 관계형 vs 그래프

3.2 그래프 데이터 기본 사용 사례: Customer 360(C360)

3.3 관계형 시스템으로 C360 애플리케이션 구현하기

3.4 그래프 시스템으로 C360 애플리케이션 구현하기

3.5 관계형 vs 그래프: 선택의 기로에 서 있다면

3.6 마치며

 

CHAPTER 4 이웃 탐색 개발

4.1 4장 미리 보기: 더 현실적인 C360 만들기

4.2 그래프 데이터 모델링 101

4.3 이웃 탐색 개발 세부 구현

4.4 기본적인 그렘린 탐색

4.5 고급 그렘린: 질의 결과 다듬기

4.6 개발 단계에서 제품 단계로 이동하기

 

CHAPTER 5 이웃 탐색 제품화

5.1 5장 미리 보기: 아파치 카산드라의 분산 그래프 데이터 이해하기

5.2 아파치 카산드라에서 그래프 데이터 사용하기

5.3 그래프 데이터 모델링 201

5.4 최종 제품 구현

5.5 더 복잡한, 분산 그래프 문제

 

CHAPTER 6 트리 사용 개발

6.1 6장 미리 보기: 트리 탐색, 계층 데이터, 순환

6.2 세 가지 예제로 살펴보는 계층, 중첩 데이터

6.3 용어의 숲에서 길 찾기

6.4 센서 데이터로 계층 구조 이해하기

6.5 개발 모드: 리프에서 루트로 질의하기

6.6 개발 모드: 루트에서 리프로 질의하기

6.7 시간 정보 확인

 

CHAPTER 7 트리 사용 제품화

7.1 7장 미리 보기: 분기 계수, 깊이, 간선의 시간 이해

7.2 센서 데이터의 시간 이해

7.3 분기 계수 이해

7.4 센서 데이터 제품 스키마

7.5 제품 모드: 리프에서 루트로 질의하기

7.6 제품 모드: 루트에서 리프로 질의하기

7.7 타워 장애 시나리오에 질의 적용하기

7.8 나무를 위해 숲 보기

 

CHAPTER 8 경로 찾기 개발

8.1 8장 미리 보기: 네트워크의 신뢰 수량화하기

8.2 세 가지 예제로 살펴보는 신뢰

8.3 경로 기초 개념

8.4 신뢰 네트워크에서 경로 찾기

8.5 비트코인 신뢰 네트워크로 탐색 이해하기

8.6 최단 경로 질의

 

CHAPTER 9 경로 찾기 제품화

9.1 9장 미리 보기: 가중치, 거리, 가지치기 이해하기

9.2 가중치 경로와 검색 알고리즘

9.3 최단 경로 문제에 알맞게 간선 가중치 정규화하기

9.4 최단 가중치 경로 질의

9.5 제품의 가중치 경로와 신뢰

 

CHAPTER 10 추천 개발

10.1 10장 미리 보기: 영화 추천 협업 필터링

10.2 추천 시스템 예

10.3 협업 필터링 소개

10.4 영화 데이터: 스키마, 로딩, 질의 검토

10.5 그렘린의 항목 기반 협업 필터링

 

CHAPTER 11 그래프의 간단한 개체 해석

11.1 11장 미리 보기: 여러 데이터셋을 하나의 그래프로 병합하기

11.2 다른 복잡한 문제 정의: 개체 해석

11.3 두 영화 데이터셋 분석하기

11.4 영화 데이터 매칭, 병합

11.5 거짓 긍정 해결

 

CHAPTER 12 추천 제품화

12.1 12장 미리 보기: 지름길 간선, 사전 계산, 고급 가지치기 기술 이해하기

12.2 실시간 추천용 지름길 간선

12.3 영화 데이터의 지름길 간선 계산하기

12.4 영화 추천 제품 스키마와 데이터 로딩

12.5 지름길 간선을 이용한 추천 질의

 

CHAPTER 13 마치며

13.1 이제 어디로 가야 할까

13.2 연락 주고받기