Neo4J Desktop에서 CSV 데이터 셋으로 DB 구축하기

zoo_gathers·2024년 11월 6일

Neo4J

목록 보기
2/4

이 글은 Neo4J Desktop이 pc에 깔려있다는 전제로 글을 작성한다.

준비물 : Neo4J Desktop, CSV 데이터 셋


먼저 Neo4J를 키면 위와 같이 화면이 나오는 것을 볼 수 있다.

화면에서 우리는 먼저 프로젝트를 새로 만들어 볼 것이다.

New 버튼을 클릭해 Create project를 눌러 새로운 프로젝트를 만들도록 한다.

만들게 되면 위와 같이 화면이 나오는데 이후 오른쪽 상단에 Add 버튼을 클릭해 DBMS를 만들도록 한다.

로컬에 DB를 만들 것이기 때문에 Local DBMS를 클릭한다.

여기서 프로젝트의 이름과 비밀번호를 지정하도록 하는데 이때 비밀번호는 기억하도록 하자.

(비밀번호를 까먹어도 별도의 절차 없이 바로 바꿀 수 있다)

이름과 비밀번호를 지정하고 Create를 통해 DBMS 생성을 한다.

Test라는 이름으로 위와 같은 프로젝트를 생성했고 이제 준비한 CSV 파일을 넣어보도록 하자.

CSV 파일을 import하기 위해서는 생성한 Test에 마우스를 올려두면 위와 같이 "..." 아이콘의 Open folder 버튼을 클릭하고 Import 버튼을 클릭하면 된다.

클릭하게 되면 위와 같이 폴더가 열리게 되고 이 폴더에 준비한 CSV 파일을 넣으면 준비는 끝이다.


이제 데이터를 불러와 저장하는 과정을 진행해보자.

먼저 Test를 Start 버튼을 클릭해 시작하도록 한다.

정상적으로 시작하면 아래와 같은 화면이 보인다.

이제 Open 버튼을 클릭해 보도록 하자.

Open 버튼을 클릭하면 위와 같은 화면이 나오고 가장 상단의 바에 명령어를 입력하면 된다.

1. 기본 CSV 파일 로드 설정
LOAD CSV WITH HEADERS FROM 'file:///medical_ko.csv' AS row

2. 노드 생성 예제 (각 행을 Person 노드로 생성)
MERGE (p:Person {id: row.id})
SET p.name = row.name,
    p.age = toInteger(row.age),
    p.email = row.email

3. 관계 생성 예제 (예: Person과 City 노드 간의 관계 생성)
MERGE (c:City {name: row.city})
MERGE (p)-[:LIVES_IN]->(c)

위 코드는 GPT를 이용한 간단한 예제이다.

위 예제와 같은 방식으로 CSV 파일 로드와 함께 노드를 생성하고 관계를 이어주도록 하면 된다.

이후 노드가 제대로 생성되었는지 확인하면 끝난다.


다음 포스터에선 로컬 컴퓨터에서 실행 중인 Neo4J 데스크탑에 Python을 통해 접속하는 것과 GPT를 활용한 내용 검색을 진행해 보고자 한다.

profile
전공: 소프트웨어, 관심 분야: LLM, NLP, 지식 그래프

0개의 댓글