홈>
다른 사람이 프로파일 명령에 대해 배우고 최적화 요구와 Cypher 작동 방식에 대한 Cypher 쿼리의 실행 계획을 이해할 수있는 링크를 설명하거나 제공 할 수 있습니까?
예를 들어, 다음 Neo4j (버전 2.0) 샘플 데이터베이스를 만들었습니다.
create (ayan:Person{name:"Ayan",age:25}),
(dixi:Person{name:"Dixi",age:26}),
(thaggu:Person{name:"Thaggu",age:27}),
(santosh:Person{name:"Santosh",age:28}),
(ayan)-[:FRIEND]-(santosh),
(ayan)-[:FRIEND]-(dixi),
(thaggu)-[:FRIEND]-(dixi);
이제 아래 간단한 쿼리를 실행하면
profile match n:Person, n-[:FRIEND]-m where n.name="Ayan" return m;
다음과 같은 결과를 얻지 만결과 아래의 설명을 이해할 수 없습니다. 도와주세요.
+--------------------------------+
| m |
+--------------------------------+
| Node[4]{age:28,name:"Santosh"} |
| Node[2]{age:26,name:"Dixi"} |
+--------------------------------+
2 rows
==> ColumnFilter(symKeys=["n", "m", " UNNAMED17"], returnItemNames=["m"], _rows=2, _db_hits=0)
==> PatternMatch(g="(m)-[' UNNAMED17']-(n)", _rows=2, _db_hits=0)
==> Filter(pred="(Property == Literal(Ayan) AND hasLabel(n: Person))", _rows=1, _db_hits=4)
==> NodeByLabel(label="Person", identifier="n", _rows=4, _db_hits=0)
- 답변 # 1
- 답변 # 2
실행 계획 이해
Neo4j 2.2부터는 문서에 실행 계획을 설명하는 장이 있습니다. 16 장. 실행 계획을 참조하십시오.
쿼리를 프로파일 링하는 방법
새로운 프로파일 링 키워드
EXPLAIN
도 있습니다 쿼리를 실행하지 않고 실행 계획을 볼 수 있습니다. 마지막으로 새로운 '비용 기반'( '규칙 기반') 쿼리 플래너가 있으며 모든 쿼리 또는 개별 쿼리에 플래너를 사용할 수 있습니다. 사이퍼 실행 계획을 표시하는 방법이 있습니까?를 참조하십시오. 새로운 프로파일 링 기능 및 관련 문서에 대한 링크에 대한 자세한 내용은
관련 자료
- java - 확장이 없을 때 슈퍼 키워드 이해
- Neo4J cypher OPTIONAL MATCH는 어떻게 작동합니까?
- neo4j/cypher - 컬렉션에 잘못된 결과 만있는 경우 노드 작성
- laravel - Route Webphp에서/profile/{username} 키워드에서/profile /을 제거 할 수 없습니다
- Cypher를 통해 JSON 파일을 가져올 때 Neo4j 오류
- neo4j cypher - 예상대로 작동하지 않는 관계
- graph - Neo4j Cypher는 링크 된 목록의 모든 노드를 가져옵니다
- Neo4j - neo4j - 사이퍼 | 관계가 발생할 때 타임 스탬프
- graph - Neo4J 및 Cypher 쿼리
- neo4j Cypher - neo4j Cypher — 가변 길이 경로를 통과하지만 레이블을 찾으면 중지
- Neo4j Cypher Relationships 대량 업데이트 특성
- Cypher (Neo4j)는 다른 모든 노드와의 관계를 만듭니다 (자체 제외)
- Python 3에서 함수 내부의 글로벌 키워드에 대해 더 깊이 이해하기
- 다음 neo4j Cypher 쿼리를 최적화하는 방법
- Neo4j 사이퍼 쿼리, 카운팅 노드 및 양방향 관계
- python - 브라우저를 통해 neo4j에 Cypher 제출
- 노드와 관련된 고유 제한 조건을 모두 삭제하는 Neo4j Cypher 명령?
- python - numpy 배열에서 각 edge 속성으로의 neo4j cypher SET
- Java 및 APOC for Neo4j를 사용하여 사이퍼 쿼리를 어떻게 생성합니까?
- 포인트 데이터 유형 속성을 사용하여 Neo4j에서 CSV 파일을로드하는 Cypher 쿼리
관련 질문
- 여러 노드를 하나로 결합하고 모든 관계를 해당 노드 neo4j에 매핑
- Cypher (Neo4j)는 다른 모든 노드와의 관계를 만듭니다 (자체 제외)
- 여러 열에 빈 셀이있는 Neo4j로 CSV 가져 오기
- cypher - neo4j에서 정규 표현식으로 쿼리하면 올바른 결과를 반환하지 않습니다
- neo4j - 가중 거리를 기준으로 소스 노드에서 그래프 탐색
- python - Neo4j 사이퍼에서 OPTIONAL MATCH 범위의 맵 사용
- neo4j - 여러 고유 레이블에서 Cypher 쿼리 최적화
- node.js - nodejs를 사용하여 Neo4j에서 데이터 가져 오기
- cypher - 기존 Neo4j 데이터 세트에서 관계 및 노드 레이블 발견
- neo4j - cypher - 수신 또는 발신 에지 만있는 노드 가져 오기 (시작 노드/종료 노드)
프로필 정보는 아직 완료되지 않았으므로 문서화되지 않았습니다. 그러나 임계 값은 비싸기 때문에 지나치게 높지 않아야하는 _db_hits입니다.