Neo4j를 CentOS에 설치하고 데이터 조작

4689 단어 neo4jnosqlGraphDB
인기 있는 그래프 DB Neo4j의 환경을 여기여기의 순서로 구축한 순서를 정리합니다.

사전 준비



자바 필요 이므로, Java 최신 Version install
yum -y install java-1.8.0-openjdk

Neo4j 설치 및 확인



yum에서의 설치는 여기의 순서
rpm --import https://debian.neo4j.org/neotechnology.gpg.key

vi /etc/yum.repos.d/neo4j.repo
[neo4j]
name=Neo4j RPM Repository
baseurl=https://yum.neo4j.org/stable
enabled=1
gpgcheck=1

yum -y install neo4j-3.4.9

neo4j --version

Neo4j 서비스 시작



서비스가 시작될 때 관리 도구가 http://localhost:7474에서 시작됨
systemctl enable neo4j
systemctl start neo4j

원격 액세스 권한



neo4l.conf 설정
vi /etc/neo4j/neo4j.conf

dbms.connector.http.enabled=true
dbms.connector.http.listen_address=XX.XX.XX.XX:7474 #サーバーのIPアドレス

dbms.connector.bolt.listen_address=0.0.0.0:7687  #Boltプロトコルコネクタ 
(0.0.0.0追加 :漏れていると下記エラー)

systemctl restart neo4j

firewall-cmd --add-port=7474/tcp --zone=public --permanent
firewall-cmd --add-port=7687/tcp --zone=public --permanent
firewall-cmd --reload

※오류: “WebSocket connection failure. Due to security constraints in your web browser, the reason for the failure is not available to this Neo4j Driver”

관리 콘솔



http://XX.XX.XX.XX:7443에 neo4j/neo4j (기본 암호)로 액세스


그래프 DB 용어


  • 노드: 데이터 레코드 예) 직원, 회사, 도시
  • 관계 : 노드 간의 관계 예) 회사의 CEO, 회사의 위치 도시
  • 속성 : 노드/관계가있는 속성 예) 직원 이름, CEO 재임 기간,



  • Node 추가



    목적) A씨(소속: 개발부)는 B씨(소속:경리부)를 알고 있다는 데이터를 등록

    노드 추가) 우선 A씨(소속: 개발부)와 B씨(소속: 경리부)를 등록.
    Neo4j에서는 sql like인 Cypher를 사용해 기술한다.
    CREATE (a_san:Person { name: "Aさん", 所属: "開発部" }), (b_san:Person { name: "Bさん", 所属: "経理部" })
    RETURN a_san, b_san;
    

    A씨, B씨 2명의 노드가 추가된다


    관계 추가



    A씨는 B씨를 알고
    MATCH (a_san: Person), (b_san: Person)
    WHERE a_san.name = "Aさん" AND b_san.name = "Bさん"
    CREATE (a_san)-[r:知っている]->(b_san)
    RETURN r;
    



    튜토리얼 실시



    아래 명령으로 자습서 호출
    :play movie graph
    



    예) 배우 Kevin Bacon에서 4개까지의 관련 영화/배우


    예) Kevin Bacon에서 Meg Lyan까지 영화/배우 관계의 최단 경로


    Neo4j : 주요 용도



    Amazon 그래프 데이터베이스란?
  • 부정 검출
    관계를 통해 구매 트랜잭션을 거의 실시간으로 처리 가능
    예) 지금부터 구매 예정인 사람이 알려진 부정 사례에 포함된 이메일 주소와 신용카드를 사용하려고 하는 것을 검출
    또한 동일한 이메일 주소와 동일한 IP 주소를 공유하는 여러 사람의 관계도 감지 가능
  • 추천
    DB 내에서 고객의 관심, 친구, 구매 내역 등의 관계를 유지하고 구매 내역이 비슷한 다른 사용자가 구매한 제품을 기반으로 사용자에게 제품을 추천할 수 있습니다.
    또한 공통 친구가 있지만 서로를 알지 못하는 사람들에게 친구 관계를 추천 할 수 있습니다
  • 좋은 웹페이지 즐겨찾기