그래프/그래프 데이터6 06. 관계형을 그래프로 관계형을 그래프로 전 세계의 기술 팀은 데이터 관리 문제를 해결하는 방법 중 하나로 그래프 데이터를 채택하고 있다. 그래프 데이터 형식이 기존의 관계형 솔루션 대비 가지는 이점은 데이터 내 관계 모델링, 저장 그리고 검색을 하는데에 있어 유용성을 들 수 있다. 이러한 이점이 부각되는 문제에서 관계형 솔루션을 사용하고 있었다면 그래프 데이터 솔루션으로의 이동을 고려해 볼 만하다. 하지만 이를 위해서는 데이터의 변환 및 통합이 필요한데, 관계형으로 구축된 데이터를 처리하는 과정에서 종종 어려움을 겪곤 한다. 이러한 어려움을 최소화하기 위해, 우리는 그래프 데이터 어플리케이션을 시작하기 위한 공통 과정을 정의하고 표준화할 것이다. 또한 Customer360(이하 C360) 예제를 이용해 관계형과 그래프 기술을.. 그래프/그래프 데이터 2024. 2. 18. 05. 그래프의 다중성 그래프의 다중성 그래프 모델링을 진행하다 보면 두 정점 레이블 간 관계가 여러 개 존재하는 경우가 종종 있다. 대다수의 그래프 데이터베이스에서는 모든 간선 레이블을 다대다로 표현하며, 이렇게 표현된 모든 정점은 특정 간선 레이블을 사용해 다른 많은 정점과 연결될 수 있다. ERD에서는 이를 many-to-many라고 부르며 UML에서는 0..* to 0..*라 표현한다. 이러한 개념이 바로 다중성(multiplicity)이다. 다중성이란, 그룹이 가질 수 있는 최대 허용 cardinality 범위를 가리키는 말로, 인접한 정점 그룹이 한 정점 그룹과 맺을 수 있는 간선 레이블 수의 최대치를 가리킨다. 그래프 스키마 언어로 다중성 모델링하기 그래프 스키마에 다중성을 적용하려면 인접한 정점 그룹의 종류를 이.. 그래프/그래프 데이터 2024. 2. 3. 04. 그래프 스키마 언어 그래프 스키마 언어 그래프를 공부하다보면 이를 이해하는 주체에 따라 다르게 해석되는 용어들이 존재한다. 이로 인해 발생하는 오해와 소통 오류를 방지하기 위해 그래프 스키마를 설명하는 공식 용어가 있는데, 이를 그래프 스키마 언어(Graph Schema Language, GSL)라고 한다. 그래프 스키마 언어는 그래프 데이터베이스 스키마를 만들기 위해 개념을 적용하는 시각적 언어로, 개념적 그래프 모델, 그래프 스키마, 그래프 데이터베이스를 설계하고 공유하며 소통을 돕기 위해 사용된다. 정점 레이블과 간선 레이블 정점과 간선이 그래프의 필수 요소 중 하나인만큼, 그래프 스키마 언어에서도 첫 번째로 알아야할 것을 꼽자면 정점 레이블(vertex label)과 간선 레이블(edge label)을 들 수 있다... 그래프/그래프 데이터 2024. 1. 28. 03. 관계형에서 그래프 씽킹으로 관계형에서 그래프 씽킹으로 그래프를 도입하여 그래프 씽킹을 시작하기 전에 생각해봐야 할 세 가지 질문이 있다. 관계형 기술보다 그래프 기술이 문제 해결에 더 적합한가? 데이터를 어떻게 그래프로 사고할 수 있는가? 그래프 스키마는 어떻게 모델링하는가? 이 세 가지 질문을 이해하고 답변하기 위해 많은 시간을 투자한다면 그래프 기술을 성공적으로 도입할 수 있을 것이다. 그럼 이러한 질문들을 이해하기 위해 다음을 살펴보도록 하자. 질문에 답하기 위해, 이번 포스팅에서 관계형 기술과 그래프 기술의 차이점을 알아보고 예제 데이터를 두 가지 방식으로 생각해 볼 것이다. 또한 다음 포스팅에서 그래프 스키마 언어를 알아보고 이를 이용하여 그래프 스키마 모델링을 진행해 볼 것이다. 마지막으로 이를 종합하여 관계형과 그래프.. 그래프/그래프 데이터 2024. 1. 21. 02. 그래프 씽킹 그래프 씽킹 그래프 씽킹(Graph Thinking)은 말 그대로 '데이터 간의 관계를 그래프로 생각하는 방법'으로, 도메인 문제를 연결된 그래프로 표현하고 그래프 기술을 사용해 도메인 역학 관계를 설명함으로써 문제를 해결한다. 데이터를 그래프로 표현하면 해당 도메인 내 데이터 간 복잡한 네트워크를 직관적으로 이해할 수 있어 문제 해결에 도움이 된다. 데이터를 잘 저장하고 불러오는 것에 초점을 맞췄던 것에서 데이터 내에 숨어있는 가치를 발굴하는 것으로 초점이 넘어감에 따라 그래프 기술은 새로운 데이터 혁신을 불러왔다. 복잡한 문제와 복잡한 시스템 먼저 여기서 말하고자 하는 '복잡한 문제'와 '복잡한 시스템'에 대해서 정의하고 넘어가도록 하자. 복잡한 문제란 복잡한 시스템에 존재하는 네트워크를 가리킨다. .. 그래프/그래프 데이터 2023. 12. 21. 01. 떠오르는 그래프 기술 떠오르는 그래프 기술 최근 수십 년간 기술 산업의 중심이 데이터의 효율적인 저장에서 데이터의 가치를 잘 얻어내는 것으로 바뀌면서 데이터베이스 기술 또한 관계형에서 NoSQL쪽으로 변화해왔다. 데이터베이스 기술의 역사는 크게 계층형, 관계형, NoSQL로 나눌 수 있는데, 각 시대별로 간략하게 알아보고 최근 그래프가 주목받게 된 배경에 대해 알아보자. 1) 1960~1980년대: 계층 데이터 1960년대에서 1980년대까지의 데이터베이스 기술은 계층형(hierachical) 또는 탐색형(navigational)이라고 불리는 트리(tree) 형태의 자료구조로 이루어졌다. 현재 통용되는 데이터베이스의 의미로써보다는 데이터를 효율적으로 정리하고 탐색할 수 있게 하는 구조로써, 데이터를 서로 연결된 레코드 형태로.. 그래프/그래프 데이터 2023. 12. 6. 이전 1 다음