Abstract
This paper proposes a method for storing graphs and defining graph algorithms based on the well-developed relational database. In this method, graphs are represented in the form of relations. Each vertex and edge of a graph is represented as tuples of the table and saved in a database. We developed a library of graph operations for the storage and management of graphs and the development of graph applications. Furthermore, we defined graph algorithms in terms of relational algebraic operations such as projection, selection, and join. They can be implemented with the database language such as SQL. This database approach provides an efficient methodology to deal with very large-scale graphs and to support the development of graph applications.
본 논문은 관계형 데이터베이스 기반하여 그래프를 저장하고 그래프 알고리즘을 정의할 수 있는 방법을 제안한다. 이 방법에서 그래프는 릴레이션으로 표현되며, 그래프의 각 정점과 간선은 이 릴레이션의 튜플로서 데이터베이스에 저장된다. 이를 위해 그래프의 저장 및 관리뿐만 아니라 다양한 응용프로그램 개발에도 사용될 수 있는 기본적인 그래프 함수들을 라이브러리로 개발하였다. 또한, 그래프에 대한 알고리즘을 추출, 선택, 죠인과 같은 관계대수 연산을 이용하여 정의하였으며, SQL과 같은 데이터베이스 언어를 사용하여 구현하였다. 이와 같은 데이터베이스에 기반한 방법은 메모리에 수용되지 않는 크기의 그래프를 효과적으로 처리할 수 있을 뿐만 아니라 다양한 응용프로그램 개발을 용이하게 할 것이다.