그래프(Graph) ?

 

그래프 이론은 그래프의 특성을 연구하는 수학과 컴퓨터 과학의 한 분야로써특정 집단내 대상들 간의 관계를 그래프로 나타낸 수학적 구조입니다여기서의 그래프는 노드(Nodes)와 두 노드를 연결하는 선(Edge)으로 구성되어 있습니다


정점과 간선 ]

 

이는 페이스북에서 사람이 정점이 되고친구 관계가 간선으로 표현되는 것으로 비교할 수 있습니다이 기술은 페이스북트위터와 같은 규모가 있는 분산 환경에서 대상 사이의 연관 관계를 파악하기 쉽게 해 줍니다예를 들어 사람들 사이의 관계를 그래프로 처리해두면아무리 복잡한 인간관계라도 빠르게 파악할 수 있습니다.

 

 

쾨니히스베르크 다리 문제

그래프 이론을 말할 때 자주 인용되는 이야기 중의 하나가 쾨니히스베르크 다리’ 문제입니다아래 그림처럼 프로이센의 쾨니히스베르크(오늘날 러시아 칼리닌그라드)에는 강이 있었고강으로 둘러싸인 섬이 하나 있었습니다섬을 잇는 다리가 7개가 있는데 사람들 가운데 운동이나 산책을 하면서 이 다리들을 모두 한 번씩만 건너서 출발한 곳으로 다시 돌아오려고 하는 이들이 있었습니다


오일러 시절 쾨니히스베르크의 지도 ]

 

쾨니히스베르크 다리 문제로 잘 알려진 이 문제는 스위스의 수학자 오일러가 관심을 두기 전에는 누구도 해답을 찾지 못했다고 합니다수학자 오일러는 이 문제를 해결하기 위하여 강으로 분할된 도시의 부분들을 꼭짓점으로 생각하고다리를 변으로 생각하여 다음과 같은 그래프를 고안하였습니다.


[ 오일러 그래프 ]


오일러는 어떤 그래프가 한 꼭지점에서 시작하여 펜을 떼지 않고 모든 변을 한 번씩만 지나서 처음 출발점으로 되돌아올 수 있으려면 그래프의 각 꼭짓점에 연결된 변의 개수가 모두 짝수이어야 함을 증명하였습니다따라서 쾨니히스베르크의 다리에 관한 문제는 해가 존재하지 않는다는 것을 밝혔습니다.

 

 

그래프 데이터베이스(Graph Database)

그래프 데이터베이스 저장소는 엔티티와 엔티티 사이의 관계를 저장합니다그래프 데이터베이스 내에서 데이터 모델은 엔티티와 관계를 중심으로 돌아갑니다그들은 표현하고 저장하고 데이터를 쿼리하기 위해 그래프형의 구조 (노드와 관계 그리고 속성)을 사용합니다그래프 데이터베이스는 더 많은 데이터들이 각각의 데이터 포인트의 집합의 연결로 표현될 수 있기 때문에 근래들어 많이 채택되고 있습니다.


[ 엔티티 개념의 예]



[ 부서와 사원간의 관계의 예 ]


그래프 데이터베이스는 대부분 지역적인 문제들추천 엔진네트워크/클라우드 분석생물정보학(bioinformatics) 등에 사용되는데크게 보면 데이터 사이의 관계가 데이터 자체 만큼이나 중요한 어느 곳이든 쓰일 수 있습니다이는 다양한 금융 분석 기능에서도 중요한 기술이 될 것입니다.

'빅데이터 > No SQL' 카테고리의 다른 글

레디스(Redis, Remote Dictionary Server)  (0) 2017.08.03
와이드 컬럼 스토어(Wide column store)  (0) 2017.08.03
문서 저장소(Document Store)  (0) 2017.08.03
키-밸류 스토어(Key-value store)  (0) 2017.08.03
NoSQL 개요  (0) 2017.08.03

+ Recent posts