1. ๊ทธ๋ํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค๋?
๊ทธ๋ํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค๋ ๊ทธ๋ํ ์ด๋ก ์ ํ ๋๋ฅผ ๋ ์ผ์ข ์ NoSQL ๋ก์ ๊ด๊ณ๋ฅผ ์ ์ฅํ๊ณ ํ์ํ๋๋ก ๊ตฌ์ถ๋์ด์๋ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ด๋ค.
๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ์ ์ด์ ์ ๋ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ด๋ค.
๊ธฐ์กด์๋ ๋ฐ์ดํฐ๊ฐ ๋ถ๊ท์นํด์ง๊ณ ๋ณต์กํด์ง์๋ก ๊ด๊ณํ DB๋ก ํํํ๊ธฐ์ ํ๊ณ๊ฐ ์์๋ค. ๋ํ ์์ฒญ๋ ์๊ฐ๊ณผ ์ปดํจํ ํ์๊ฐ ํ์ํ๋ค.
์ด๋ฅผ ํด๊ฒฐํด ์ค ๊ฒ์ด ๊ทธ๋ํ DB ์ด๋ค.
๊ทธ๋ํ DB๋ node(Vertex)๋ฅผ ์ฌ์ฉํ๋ฉฐ, ๋ฐ์ดํฐ ์ํฐํฐ๋ฅผ ์ ์ฅํ๊ณ ์ฃ์ง๋ก๋ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ ์ฅํ๋ค.
์ฃ์ง๋ ํญ์ ์์ ๋ ธ๋, ๋ ๋ ธ๋, ์ ํ๊ณผ ๋ฐฉํฅ์ ๊ฐ์ง๋ฉฐ, ์-ํ์ ๊ด๊ณ, ๋์, ์์ ์ ๋ฑ์ ๋ฌธ์ํ ํ๋ค.
ํ๋์ ๋ ธ๋๊ฐ ๊ฐ์ง ์ ์๋ ๊ด๊ณ์ ์์ ์ข ๋ฅ์๋ ์ ํ์ด ์๋ค.
2. ๊ทธ๋ผ ์ฅ์ ์?
์คํค๋ง๊ฐ ์๋ ๊ตฌ์กฐ์ด๋ค. ๊ทธ๋ํ DB๋ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๊ฐ์ฒด๋ก ์ ์ฅํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์ฉํฅ์ด ๋์ด๋๊ฑฐ๋ ์ ๋ ฅ๋๋ ํํ๊ฐ ๋ค์ํด๋ ๋ฌธ์ ๊ฐ ๋์ง ์๋๋ค.
์ง์ ์ฒ๋ฆฌ ์๋๊ฐ ๋น ๋ฅด๋ค. ์กฐ์ธ์ด ๋ง์ ๊ด๊ณํ DB์ ๋นํด ์ ์ํ๊ฒ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํ ์ ์๋ค.
--> ์ด๊ฒ ๊ฐ์ฅ ํฐ ์ฅ์ ๊ฐ๋ค. ์ด๋ ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํ์ง ์์๋ ์ฐ๊ฒฐ๋ ๋
ธ๋๋ฅผ ์ฐพ๋ ๊ฒ์ด ๋น ๋ฅด๊ธฐ ๋๋ฌธ์ด๋ค.
์ง๊ด์ ์ธ ๋ชจ๋ธ๋ง์ด ๊ฐ๋ฅํ๋ค. ์ฌ์ฉ์์๊ฒ ํ์ค ๋ชจํ์ ๊ฐ๊น์ด ์ง๊ด์ ์ธ ๋ฐ์ดํฐ ํํ๋ฅผ ์ ๊ณตํ๋ค.
3. ๊ทธ๋ผ ๋จ์ ์?
๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฐธ์กฐํ๋ ๋ ธ๋์ ์์ง ์๊ฐ ์ฆ๊ฐํ๋ฉด ์๋ต์ด ๋๋ ค์ง๋ค.
์๋ก๋ ์๋ฐฑ๋ง ํ๋ก์๊ฐ ์๋ ์ ๋ช ์ธ์ด ์กด์ฌํ๋ ์์ ๊ทธ๋ํ์ ๊ฒฝ์ฐ, ๊ทธ ์ ๋ช ์ธ์ ํ๋ก์ฐํ๊ณ ์๋ค๋ ์กฐ๊ฑด์ผ๋ก ์์ํ์ฌ ์ํํด ๋๊ฐ๋ฉด, ์๋ฐฑ๋ง ์ฃ์ง๋ฅผ ์ฐธ์กฐํ๊ฒ ๋๋ฏ๋ก ์ฆ์ ๊ฒฐ๊ณผ๋ฅผ ๋๋ ค์ฃผ๋ ๊ฒ ์ด๋ ค์์ง๋ค.
ํ์๋ ๋ ํ์ ์ ์ถ๊ณ ๊ด๋ฆฌ๋ฅผ ์ํ ๋ฌผ๋ฅ ํ๋ฆ์ ๊ทธ๋ํ DB๋ก ์๊ฐํํ๋ ๊ฒ์ ๋ชฉํ๋ก ๋๋ค. ์ด๋ฅผ ๋์ฌ๋ณด๋๋ก ํ์ธํ๊ธฐ ์ํด Neo4j๋ฅผ ์ ํํ๋ค. (NeoDash)
https://www.devkuma.com/docs/graph-database/overview/
๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์
๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ์ ๋ณํ ๊ทธ๋ํ ์ฝํน์ ๋ฑ์ฅ ๊ณผ์ ์ ๋ณด์ฌ์ฃผ๋ ์ญ์ฌ์ ๊ด์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ์ ๋ณํ 1960๋ ๋ : ๊ณ์ธตํ 1980๋ ๋ : ๊ด๊ณํ 2000๋ ๋ : NoSQL 2020๋ ๋ : ๊ทธ๋ํ ์ฝํน ๊ทธ๋ํ DB ์๊ฐ ๊ทธ
www.devkuma.com
4. ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ Neo4j
Neo4j์ฌ๊ฐ ๊ฐ๋ฐํ '๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค' ๊ด๋ฆฌ ์์คํ Neo4j๋ GPL3 ๋ผ์ด์ ์ค์ ์คํ ์์ค ์ปค๋ฎค๋ํฐ ์๋์ ์ผ๋ก ์ด์ฉ์ด ๊ฐ๋ฅํ๋ค.
Neo4j๋ Java๋ก ๊ตฌํ๋์ด ์๊ณ , Cypher Query Language ๋ฅผ ํตํด ๋ค๋ฅธ ์ธ์ด๋ก ์์ฑ๋ ์ํํธ์จ์ด์์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
5. Mac OS์ Neo4j ์ค์น
๋งฅ์ ์ค์นํ๋ ๊ณผ์ ์ 2๊ฐ๊ฐ ์๋๋ฐ, Desktop์ or homebrew๋ก ํ๋ ๊ฒ์ด๋ค. (์ฐธ๊ณ ๋ก Docker๋ก๋ ์ค์น ๊ฐ๋ฅํ๋ค.)
Windows OS ๋ฑ ์ฐธ๊ณ >
https://memostack.tistory.com/93
Neo4j ๋?
Neo4j Neo4j์ฌ๊ฐ ๊ฐ๋ฐํ '๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค' ๊ด๋ฆฌ ์์คํ Neo4j๋ GPL3 ๋ผ์ด์ ์ค์ ์คํ ์์ค ์ปค๋ฎค๋ํฐ ์๋์ ์ผ๋ก ์ด์ฉ์ด ๊ฐ๋ฅ Neo4j๋ Java๋ก ๊ตฌํ๋์ด ์์ Cypher Query Language ๋ฅผ ํตํด ๋ค๋ฅธ ์ธ์ด๋ก ์
memostack.tistory.com
https://www.devkuma.com/docs/neo4j/installation-macos/
Neo4j macOS ํ๊ฒฝ์์ ๋ค์ด๋ก๋ ๋ฐ์ ์ค์น
macOS ์ค์น macOS์ Neo4j๋ฅผ ์ค์นํ๊ธฐ ์ ์ ์์คํ ์๊ตฌ ์ฌํญ์ ํ์ธํ์ฌ ์ค์ ์ด ์ ํฉํ์ง ํ์ธํ๋ค. ์ ๋์ค ์ฝ์ ์ ํ๋ฆฌ์ผ์ด์ OpenJDK 17 ๋๋ Oracle Java 17๊ฐ ์์ง ์ค์น๋์ง ์์ ๊ฒฝ์ฐ ์ค์น๋ฅผ ํด์ผ ํ
www.devkuma.com
1) homebrew ์ด์ฉ
์ค์น์ 1๋ถ ์์
% brew install neo4j
๊ทธ ๋ค์ ๋ฒ์ ํ์ธ(ํ์๋ 5.19.0)
% neo4j --version
๊ทธ๋ค์ ๋ก์ปฌ ํธ์คํธ ์ฃผ์๋ก ๋ค์ด๊ฐ๊ธฐ ์ํด(๊ทธ๋ฌ๋ฉด http://localhost:7474 ๋จ๋๊ฒ ์ฌ๊ธฐ๋ก ๋ค์ด๊ฐ๋ฉด ๋จ)
% neo4j start
๊ทธ๋ฆฌ๊ณ ์ค์งํ๋ ค๋ฉด ์๋ ์ ๋ ฅํ๋ฉด ๋จ
% neo4j stop
์ด์ ๋ค์ neojs 4๋ก -->
์ด๊ธฐ๋
Username: neo4j
Password: neo4j
๊ทธ๋ค์์ ๋น๋ฒ ์ฌ์ค์ ํ๋ฉด์ ์ํ๋ ๋น๋ฒ ํ๋ฉด ๋จ
2) Desktop์ ์ค์น
1. ํ์ด์ง ์ ์: https://neo4j.com/deployment-center/?desktop-gdb
2. Get Started Free ํด๋ฆญ
3. ๊ณ์ ์ ๋ ฅ --> ๋ค์ด
๊ทผ๋ฐ ์ด๊ฑฐ ๋ธ. ๋ญ์?
DBMS Movie DBMS can not be started due to conflicts with external processes.
To fix this problem, let us change these port configurations:
- discovery: 5000 → 5001
- cluster.raft: 7000 → 7001
4. ํค ๋ณต์ฌ --> ๋ค์ด ์ด๊ธฐ
5. ๋ณต์ฌํ ํค ๋ถ์ฌ๋ฃ๊ธฐ ๋ฐ ์ ๋ ฅ
6. ํ์ธ
7.ํ์ธ
๋
2) ์ค์น ํ์ธ
๊ตฟ
์ฐธ๊ณ
'๐ Back-end & ๐ฉ๐ปโ๐ป > Database' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Graph DB] Neo4j + D3.js ๋ฐ๋ชจ (2) (0) | 2024.05.29 |
---|---|
[Graph DB] Neo4j ๋ฐ D3.js ๋ฐ๋ชจ (1) (0) | 2024.05.24 |
[Graph DB] Neo4j - Cypher Query - Demo (0) | 2024.05.21 |
[Graph DB] Neo4j ๋ฌผ๋ฅํ๋ฆ ์ฟผ๋ฆฌ ์์ฑ (0) | 2024.05.03 |
[Graph DB] Neo4j์ CSV ํ์ผ ๋ถ๋ฌ์ค๊ธฐ (0) | 2024.04.24 |