Neo4j15 [neo4j] Minimum Spanning Tree 사용하기 오늘은 MST(Minimum Spanning Tree) 알고리즘을 neo4j에서 사용하는 법에 대해서 써본다. 굳이 쓰는 이유는 neo4j라이브러리가 업데이트되면서 알고리즘을 쓰는 방법들이 조금씩 달라졌기 때문이다. 그럼 시작해본다. MST? A minimum spanning tree (MST) or minimum weight spanning tree is a subset of the edges of a connected, edge-weighted undirected graph that connects all the vertices together, without any cycles and with the minimum possible total edge weight. 위키피디아엔 위와같이 정의되어 있다.. 2022. 7. 6. [Neo4j / 데이터 불러오기] web csv에서 데이터 불러오기 이전에 다뤘던 주제인지 기억이 나지 않는다. 아무튼 일단 이야기해봐야지 데이터 구조 이해하기 https://github.com/neo4j-graph-analytics/book/tree/master/data GitHub - neo4j-graph-analytics/book Contribute to neo4j-graph-analytics/book development by creating an account on GitHub. github.com 위의 링크로 들어가면 transport-nodes.csv 라는 파일과, transport-relationships.csv 라는 파일이 존재한다. 즉 node와 edge다. 여기서 유의할점은 node를 먼저 만든 후 edge(relation)을 만든다는 것이다. neo.. 2022. 7. 5. [그래프 데이터베이스][무작정해보기] [14/30] count, collect, size,map, list 활용하기 데이터 집계하기 기본적으로 Neo4j에서는 데이터를 모아줌 아래의 Cypher문을 작동했을 때 결과 MATCH (p:Person)-[:REVIEWED]->(m:Movie) RETURN p.name, m.title 위의 결과를 잘 보면 오른쪽에 "The Replacements"가 연속되고 그 후 왼쪽에 "Jessica Thompson"이 연속되는 것을 볼 수 있음. 결과를 List로 모으기 Neo4j에서는 자료를 List형태로 모을 수 있음 다음 예시는 톰크루즈가 연기한 영화들을 리스트로 보여줌 MATCH (p:Person)-[:ACTED_IN]->(m:Movie) WHERE p.name ='Tom Cruise' RETURN collect(m.title) AS `movies for Tom Cruise` 위.. 2021. 2. 17. [그래프 데이터베이스][무작정해보기] [13/30] 쿼리 패턴 익히기 이 모듈이 끝나면 다음과 같은 것을 할 수 있어야 한다 - 여러 MATCH 패턴 사용 - 여러 MATCH 절 사용 - OPTIONAL 사용 - subgraph return - 변화하는 paths 길이 사용 MATCH절 순회 The Replacements라는 영화를 리뷰한 사람들을 팔로우하는 사람들을 찾고 싶다면 MATCH (follower:Person)-[:FOLLOWS]->(reviewer:Person)-[:REVIEWED]->(m:Movie) WHERE m.title = 'The Replacements' RETURN follower.name, reviewer.name 다음과 같은 순서로 그래프 엔진이 작동한다. 우선 영화를 찾는다. 그 후 영화를 리뷰한 사람들을 찾는다. 그런 후 다시 리뷰얼르 팔로우.. 2021. 2. 13. [그래프 데이터베이스][무작정해보기] [12/30] WHERE 를 활용한 쿼리 SQL과 비슷하게 WHERE를 활용해서 원하는 노드를 Query할 수 있다. 기본 질의문 구성은 다음과 같다 MATCH (n) WHERE n.property = what_you_want RETURN n.other_property 위의 질의문은 오직 노드에 대한 결과값을 처리하게 된다. 노드의 어떤 속성이 WHERE안의 조건과 맞는 노드를 RETURN하는 방식이다. 그냥 노드를 RETURN하게 해도 되고, 원하는 Property만 꺼낼 수도 있다. 특정 범위에 맞는 데이터 Query하기 MATCH (p:Person)-[:ACTED_IN]->(m:Movie) WHERE m.released >= 2003 AND m.released (m:Movie) WHERE 2003 () WHERE p.name STARTS .. 2021. 1. 28. [그래프 데이터베이스][무작정해보기] [11/30] Ubuntu에 Neo4j 설치하기 오늘부터 블로그 말투를 바꿔야 겠다. 네이버 블로그에서 쓰던 말투로 해야 좀더 자연스럽게 글이 써지는 것 같아 그렇게 해야겠다. 얼마전에 노트북에 Ubuntu를 설치했다. 윈도우에 용량 90%, 우분투에 10%정도 할애했다. 저번 글에도 쓴거 같지만, 우분투를 설치해야했던 이유는 여러가지가 있었다. 그 중에 중요한것은 Apach Spark를 설치해야 했기 때문이다. 왜 그리 중요하나면 내 개인적인 관심사이기도 했으며, 그래프데이터 베이스 교재에도 Spark 부분이 있었기 때문이다. 추후에 남는 컴퓨터를 얻는다면, 여러 컴퓨터에서 Spark를 돌리는 것을 해봐야 겠다. 그럼 본문으로. 개요 : Ubuntu에 Neo4j 설치하기 준비물 : Ubuntu 20.04, 인터넷, tab키 Openjdk 11 설치하.. 2021. 1. 26. 이전 1 2 3 다음