Intelligent Product/RDB to Neo4J
-
우리관계를 그래프로? - RDB to Neo4j 자동화 #4Intelligent Product/RDB to Neo4J 2022. 11. 1. 00:53
지난 포스트까지 Node를 이전하는 것 까지 완료하였다. 이번에는 Relation을 Migration 해본다. RDB에서 Mapper 테이블은 다음과 같이 구성되어 있다. 이를 테이블을 조인하면 다음과 같이 자세한 데이터를 확인할 수 있다. 이 데이터를 Neo4J로 마이그레이션 하기 위한 플로우는 다음과 같다. Node 를 마이그레이션 하는 플로우에서 SplitJSON이 새로 추가 되었다. 이는 Relation 추가시 기존의 있는 노드를 확인하여 데이터를 추가해야하기 때문에 Cypher Query 를 한번에 작성하는것이 아닌 Row단위로 쿼리를 작성하기 때문이다. 1. Get Like Mapper Table(QueryDatabaseTable) : like_mapper 테이블에서 매핑 정보를 가져온다. S..
-
우리관계를 그래프로? - RDB to Neo4j 자동화 #3Intelligent Product/RDB to Neo4J 2022. 11. 1. 00:42
이번에는 RDB 에서 Neo4J로 데이터를 이전하는 플로우를 테스트한다. 테스트를 위해서 RDB에 아래와 같이 샘플데이터를 생성하였다. CREATE TABLE `person` ( `id` int AUTO_INCREMENT NOT NULL COMMENT '사람 ID', `name` varchar(200) NOT NULL COMMENT '이름', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='사람 정보'; CREATE TABLE `location` ( `id` int AUTO_INCREMENT NOT NULL COMMENT '장소 ID', `name` varchar(200) NOT NULL COMM..
-
우리관계를 그래프로? - RDB to Neo4j 자동화 #2Intelligent Product/RDB to Neo4J 2022. 10. 31. 18:07
지난 포스트 까지 Neo4J를 사용하기 위해 Apache NiFi 에 프로세서를 추가하는 작업을 진행하였다. 이번에는 프로세서를 확인해보고 Cypher Query를 실행해보는 작업을 진행해보려고 한다. 새로 추가된 ExecuteGraphQuery의 설정부분은 다음과 같다. Client Service : 데이터 소스 정보를 연결 Graph Query : 실행할 Query 정보 데이터 소스는 RDB 연결 했을때와 비슷한 형식으로 설정가능하다. Client Service 항목을 누르면 초기설정에는 아무것도 없으므로 새로 생성을 선택한다. Compatible Controller Services에서 Neo4J 를 선택하면 된다. 그러면 다음과 같이 설정이 되며 우측의 화살표를 눌러 Contoller Service..
-
우리관계를 그래프로? - RDB to Neo4j 자동화 #1Intelligent Product/RDB to Neo4J 2022. 10. 31. 17:53
지난 포스트들을 통해서 Neo4j 에 대한 사용법과 Apache NiFi에 대해 학습 하였다. 이제 이 둘을 이용하여 RDB의 데이터들을 Apache NiFi 에 마이그레이션을 자동화 하여 기존 RDB 데이터 들도 그래프로 간단하게 변경하는 자동화 작업을 진행하려한다. Apache NiFi에서는 기본적으로 제공하는 프로세서들 이외에 추가적으로 제공하는 번들들이 존재한다. 이중에는 Neo4j 와같은 Cyhper Query 를 지원하는 번들 또한 존재한다. 최근에도 업데이트 되고 있으며, Apache 에서 지속적으로 지원하는 것으로 보여진다. 이를 NiFi에서 사용하기 위해서는 빌드를 하여 NiFi 설치경로에 있는 라이브러리에 추가하여야한다. 해당 Repository를 가져와서 maven을 이용하여 빌드를 ..