Amazon Neptune 엔진 버전 1.3.0.0(2023년 11월 15일) - Amazon Neptune

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon Neptune 엔진 버전 1.3.0.0(2023년 11월 15일)

2023년 11월 15일부터 엔진 버전 1.3.0.0이 정식으로 배포되고 있습니다. 모든 리전에서 새 릴리스를 사용할 수 있게 되려면 며칠이 걸립니다.

참고

엔진 릴리스 1.3.0.0에서는 사용자 지정 파라미터 그룹과 사용자 지정 클러스터 파라미터 그룹을 위한 새로운 형식을 도입했습니다. 따라서 1.3.0.0 이전 엔진 버전에서 엔진 버전 1.3.0.0 이상으로 업그레이드하는 경우 파라미터 그룹 패밀리 neptune1.3를 사용하여 기존의 모든 사용자 지정 파라미터 그룹과 사용자 지정 클러스터 파라미터 그룹을 다시 생성해야 합니다. 이전 릴리스에서는 파라미터 그룹 패밀리 neptune1 또는 neptune1.2을 사용했으며, 이러한 파라미터 그룹은 릴리스 1.3.0.0 이상에서는 작동하지 않습니다. 자세한 정보는 Amazon Neptune 파라미터 그룹을 참조하세요.

이 엔진 릴리스의 새로운 기능

  • Neptune 데이터 API가 릴리스되었습니다.

    Amazon Neptune 데이터 API는 데이터 로드, 쿼리 실행, 데이터 조회, 기계 학습을 포함하여 Neptune의 데이터 작업 40개 이상에 대한 SDK 지원을 제공합니다. 세 가지 Neptune 쿼리 언어(Gremlin, openCypher, SPARQL)를 모두 지원하며 모든 SDK 언어로 사용할 수 있습니다. API 요청에 자동으로 서명하면 Neptune을 애플리케이션에 매우 간편하게 통합할 수 있습니다.

  • OpenSearch서버리스와 Neptune의 통합에 대한 지원이 추가되었습니다.

이 엔진 릴리스의 개선 사항

Neptune 엔진 업데이트 개선

업데이트 프로세스를 더 효과적으로 제어할 수 있도록 Neptune에서 엔진 업데이트를 릴리스하는 방식이 변경되었습니다. 이제 Neptune에서 비 주요 변경 사항에 대한 패치가 릴리스되는 대신 AutoMinorVersionUpgrade 인스턴스 필드를 사용하여 제어할 수 있고 RDS-EVENT-0156 이벤트를 구독하여 알림을 받을 수 있는 마이너 버전이 릴리스됩니다.

이러한 변경 사항에 대한 자세한 내용은 Amazon Neptune DB 클러스터 유지 관리를 참조하세요.

전송 중 암호화 개선

Neptune은 더 이상 다음 암호 그룹을 지원하지 않습니다.

  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

Neptune은 TLS 1.2에서 다음과 같은 강력한 암호 그룹만 지원합니다.

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Gremlin 개선 사항
  • DFE 엔진에 다음 Gremlin 단계에 대한 지원이 추가되었습니다.

    • FoldStep

    • GroupStep

    • GroupCountStep

    • TraversalMapStep

    • UnfoldStep

    • LabelStep

    • PropertyKeyStep

    • PropertyValueStep

    • AndStep

    • OrStep

    • ConstantStep

    • CountGlobalStep

  • by() 변조를 사용할 때 전체 버텍스 스캔이 발생하지 않도록 Gremlin DFE 쿼리 계획이 최적화되었습니다.

  • 카디널리티가 낮고 지연 시간이 짧은 쿼리의 성능이 크게 개선되었습니다.

  • 필터 조건자에 대한 DFE 지원이 추가되었습니다. TinkerPop Or

  • 다음과 같은 쿼리에서 동일한 키의 필터 순회에 대한 DFE 지원이 개선되었습니다.

    g.withSideEffect("Neptune#useDFE", true) .V() .has('name', 'marko') .and( or( has('name', eq("marko")), has('name', eq("vardas")) ) )
  • fail() 단계에 대한 오류 처리가 개선되었습니다.

openCypher 개선 사항
  • 카디널리티가 낮고 지연 시간이 짧은 쿼리의 성능이 크게 개선되었습니다.

  • 쿼리에 많은 노드 유형이 포함된 경우 쿼리 계획 성능이 개선되었습니다.

  • 모든 VLP 쿼리의 지연 시간이 단축되었습니다.

  • 단일 노드 패턴 쿼리에 대한 중복 파이프라인 조인을 제거하여 성능이 개선되었습니다.

  • 다음과 같이 주기가 있는 멀티홉 패턴이 포함된 쿼리의 성능이 개선되었습니다.

    MATCH (n)-->()-->()-->(m) RETURN n m
SPARQL 개선 사항
  • 새로운 SPARQL 연산자 PipelineHashIndexJoin이 도입되었습니다.

  • SPARQL 쿼리의 URI 검증 성능이 개선되었습니다.

  • 사전 용어를 배치 확인하여 SPARQL 전체 텍스트 검색 쿼리의 성능이 개선되었습니다.

이 엔진 릴리스에서 수정된 결함

Gremlin 수정 사항
  • DFE 엔진에서 기본적으로 처리되지 않는 단계에 대한 하위 순회 조건자가 있는 쿼리를 Gremlin 쿼리 상태 엔드포인트에서 검사할 때 트랜잭션 누수가 발생하는 Gremlin 버그가 수정되었습니다.

  • DFE 엔진에서 by() 순회의 valueMap()이 최적화되지 않는 Gremlin 버그가 수정되었습니다.

  • UnionStep에 연결된 단계 레이블이 각각 하위 순회의 마지막 경로 요소로 전파되지 않던 Gremlin 버그가 수정되었습니다.

  • 쿼리에 너무 많은 TinkerPop 단계가 포함되어 있고 정리되지 않아 쿼리가 실패하는 Gremlin 버그를 수정했습니다.

  • mergeVmergeE 단계에서 NullPointerException이 발생하는 Gremlin 버그가 수정되었습니다.

  • 문자열 출력 중 일부에 공백 문자가 포함된 경우 order()가 적절하게 정렬되지 않는 Gremlin 버그가 수정되었습니다.

  • DFE 엔진에서 valueMap 단계를 처리할 때 발생하는 Gremlin 정확성 문제가 해결되었습니다.

  • GroupStep 또는 GroupCountStep이 키 순회에 중첩될 때 발생하는 Gremlin 정확성 문제가 해결되었습니다.

openCypher 수정 사항
  • NULL 문자에 대한 오류 처리와 관련된 OpenCypher 버그가 수정되었습니다.

  • openCypher Bolt 트랜잭션 처리에서 발생하는 버그가 수정되었습니다.

SPARQL 수정 사항
  • 재귀 함수 내의 값이 제대로 확인되지 않는 SPARQL 버그가 수정되었습니다.

  • VALUES 절을 통해 많은 값을 삽입하면 성능이 저하될 수 있는 SPARQL 버그가 수정되었습니다.

  • 언어 태그가 지정된 리터럴에서 REGEX 연산자를 직접적으로 호출할 때 실패하는 SPARQL 버그가 수정되었습니다.

이 릴리스에서 지원되는 쿼리 언어 버전

DB 클러스터를 버전 1.3.0.0으로 업그레이드하기 전에 프로젝트가 다음 쿼리 언어 버전과 호환되는지 확인합니다.

  • Gremlin 초기 버전 지원: 3.6.2

  • Gremlin 최신 버전 지원: 3.6.4

  • openCypher 버전: Neptune-9.0.20190305-1.0

  • SPARQL 버전: 1.1

엔진 릴리스 1.3.0.0에 대한 업그레이드 경로

엔진 릴리스 1.2.0.0 이상에서 이 릴리스로 업그레이드할 수 있습니다.

이 릴리스로 업그레이드

DB 클러스터가 이 릴리스에 대한 업그레이드 경로가 있는 엔진 버전을 실행하는 경우 지금 업그레이드할 수 있습니다. 콘솔에서 DB 클러스터 작업을 사용하여 또는 SDK를 사용하여 적격 클러스터를 업그레이드할 수 있습니다. 다음 CLI 명령은 적격 클러스터를 즉시 업그레이드합니다.

Linux, OS X, Unix의 경우:

aws neptune modify-db-cluster \ --db-cluster-identifier (your-neptune-cluster) \ --engine-version 1.3.0.0 \ --allow-major-version-upgrade \ --apply-immediately

Windows의 경우

aws neptune modify-db-cluster ^ --db-cluster-identifier (your-neptune-cluster) ^ --engine-version 1.3.0.0 ^ --allow-major-version-upgrade ^ --apply-immediately

--apply-immediately 대신 --no-apply-immediately를 지정할 수 있습니다. 메이저 버전 업그레이드를 수행하려면 allow-major-version-upgrade 매개변수가 필요합니다. 또한 엔진 버전을 반드시 포함해야 합니다. 그렇지 않으면 엔진이 다른 버전으로 업그레이드될 수 있습니다.

클러스터에서 사용자 지정 클러스터 파라미터 그룹을 사용하는 경우 다음 파라미터를 포함하여 지정해야 합니다.

--db-cluster-parameter-group-name (name of the custom DB cluster parameter group)

마찬가지로 클러스터의 인스턴스가 사용자 지정 DB 파라미터 그룹을 사용하는 경우 이 파라미터를 포함하여 지정해야 합니다.

--db-instance-parameter-group-name (name of the custom instance parameter group)

업그레이드하기 전에 항상 테스트 수행

새로운 메이저 또는 마이너 Neptune 엔진 버전이 출시되면 업그레이드하기 전에 해당 버전에서 항상 Neptune 애플리케이션을 먼저 테스트하세요. 마이너 업그레이드라도 코드에 영향을 줄 수 있는 새로운 기능이나 동작이 도입될 수 있습니다.

먼저 현재 버전의 릴리스 노트 페이지를 대상 버전의 릴리스 노트 페이지와 비교하여 쿼리 언어 버전에 변경 사항이나 기타 주요 변경 사항이 있는지 확인합니다.

프로덕션 DB 클러스터를 업그레이드하기 전에 새 버전을 테스트하는 가장 좋은 방법은 프로덕션 클러스터를 복제하여 새 엔진 버전을 실행하도록 하는 것입니다. 그러면 프로덕션 DB 클러스터에 영향을 주지 않고 복제본에서 쿼리를 실행할 수 있습니다.

업그레이드하기 전에 항상 수동 스냅샷 생성

업그레이드하기 전에 항상 DB 클러스터의 수동 스냅샷을 생성하는 것이 좋습니다. 자동 스냅샷은 단기적인 보호만 제공하는 반면, 수동 스냅샷은 명시적으로 삭제하기 전까지는 계속 사용할 수 있습니다.

경우에 따라 Neptune은 업그레이드 프로세스의 일부로 수동 스냅샷을 생성하지만, 여기에 의존해서는 안 되며 항상 자체 수동 스냅샷을 만들어야 합니다.

DB 클러스터를 업그레이드 전 상태로 되돌릴 필요가 없다고 판단되면 직접 만든 수동 스냅샷과 Neptune이 생성한 수동 스냅샷(있는 경우)을 명시적으로 삭제할 수 있습니다. Neptune이 수동 스냅샷을 생성하는 경우 이름은 preupgrade로 시작하고 DB 클러스터 이름, 소스 엔진 버전, 대상 엔진 버전, 날짜가 차례로 뒤따릅니다.

참고

보류 중인 작업이 진행 중인 동안 업그레이드를 시도하면 다음과 같은 오류가 발생할 수 있습니다.

We're sorry, your request to modify DB cluster (cluster identifier) has failed. Cannot modify engine version because instance (instance identifier) is running on an old configuration. Apply any pending maintenance actions on the instance before proceeding with the upgrade.

이 오류가 발생하면 보류 중인 작업이 완료될 때까지 기다리거나, 유지 관리 기간을 즉시 실행하여 이전의 업그레이드를 완료합니다.

엔진 버전 업그레이드에 대한 자세한 내용은 Amazon Neptune DB 클러스터 유지 관리 단원을 참조하십시오. 질문이나 우려 사항이 있는 경우 커뮤니티 포럼 및 AWS Premium Support를 통해 AWS 지원 팀에 문의할 수 있습니다.