기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
모범 사례: Neptune의 유용성 향상
다음은 Amazon Neptune 작업에 대한 몇 가지 일반 권장 사항입니다. 이 정보를 참조하여 Amazon Neptune을 사용하고 성능을 극대화하기 위한 권장 사항을 빠르게 찾습니다.
목차
- Amazon Neptune 기본 운영 지침
- Neptune으로 Gremlin을 사용하기 위한 일반 모범 사례
- Neptune으로 Gremlin Java 클라이언트를 사용한 모범 사례
- 호환되는 최신 버전의 Apache TinkerPop Java 클라이언트 사용
- 여러 스레드에서 클라이언트 객체 재사용
- 읽기 및 쓰기 엔드포인트에 대한 개별 Gremlin Java 클라이언트 객체 생성
- Gremlin Java 연결 풀에 여러 읽기 전용 복제본 엔드포인트 추가
- 클라이언트를 닫아 연결 제한 방지
- 장애 조치 후 새로운 연결 생성
- maxInProcessPerConnection 및 maxSimultaneousUsagePerConnection을 동일한 값으로 설정
- 쿼리를 문자열이 아닌 바이트코드로 서버에 전송
- 쿼리에서 반환된 또는 이터레이터를 항상 완전히 사용하십시오. ResultSet
- 배치에서 버텍스 및 엣지 일괄 추가
- Java 가상 머신에서 DNS 캐싱을 비활성화합니다.
- 선택적으로 쿼리당 수준에서 제한 시간 설정
- java.util.concurrent.TimeoutException 문제 해결
- openCypher 및 볼트를 사용한 Neptune 모범 사례
- 장애 조치 후 새로운 연결 생성
- 수명이 긴 애플리케이션의 연결 처리
- 에 대한 연결 처리 AWS Lambda
- 쿼리에서는 양방향 엣지보다 방향성 엣지 선호
- Neptune은 트랜잭션에서 여러 개의 동시 쿼리를 지원하지 않음
- 완료 후 드라이버 객체 닫기
- 읽기 및 쓰기에 명시적 트랜잭션 모드 사용
- 예외에 대한 재시도 로직
- 단일 SET 절을 사용하여 한 번에 여러 속성 설정
- 파라미터화된 쿼리 사용
- UNWIND 절에서 중첩된 맵 대신 평면화된 맵 사용
- 가변 길이 경로(VLP) 표현식의 왼쪽에 더 제한적인 노드 배치
- 세분화된 관계 이름을 사용하여 중복 노드 레이블 확인 방지
- 가능한 경우 엣지 레이블 지정
- 가능하면 WITH 절을 사용하지 마세요.
- 쿼리에서 가능한 한 빨리 제한 필터를 배치합니다.
- 속성이 존재하는지 명시적으로 확인
- 명명된 경로를 사용하지 마세요(필수가 아닌 경우).
- COLLECT(DISTINCT()) 방지
- 모든 속성 값을 검색할 때 개별 속성 조회보다 속성 함수를 선호합니다.
- 쿼리 외부에서 정적 계산 수행
- 개별 문 UNWIND 대신 를 사용한 배치 입력
- 노드/관계IDs에 사용자 지정 사용 선호
- 쿼리에서 ~id 계산을 수행하지 않습니다.
- 사용 Neptune 모범 사례 SPARQL