

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

# Neptune 랩 모드
<a name="features-lab-mode"></a>

Amazon Neptune *랩 모드*를 사용하여 현재 Neptune 엔진 릴리스에 존재하지만, 아직 프로덕션 환경에서 사용할 준비가 되지 않아 기본적으로 활성화되지 않은 새로운 기능들을 활성화할 수 있습니다. 이렇게 하면 개발 및 테스트 환경에서 이러한 기능들을 사용해 볼 수 있습니다.

## Neptune 랩 모드 사용
<a name="features-lab-mode-using"></a>

[`neptune_lab_mode` DB 클러스터 파라미터](parameters.md#parameters-db-cluster-parameters-neptune_lab_mode)를 사용하여 기능을 활성화 또는 비활성화합니다. 이를 위해 DB 클러스터 파라미터 그룹의 `neptune_lab_mode` 파라미터 값에 `(feature name)=enabled` 또는 `(feature name)=disabled`을 포함시킵니다.

예를 들어 이 엔진 릴리스에서 `neptune_lab_mode` 파라미터를 `Streams=disabled, ReadWriteConflictDetection=enabled`로 설정할 수 있습니다.

데이터베이스에서 DB 클러스터 파라미터 그룹을 편집하는 방법에 대한 자세한 내용은 [파라미터 그룹 편집](parameter-groups.md#parameters-editgroup) 단원을 참조하십시오. 기본 설정된 DB 클러스터 파라미터 그룹은 편집할 수 없습니다. 기본 그룹을 사용하고 있는 경우에는 `neptune_lab_mode` 파라미터를 설정하기 전에 먼저 새로운 DB 클러스터 파라미터 그룹을 생성해야 합니다.

**참고**  
정적 DB 클러스터 파라미터(예: `neptune_lab_mode`)를 변경하는 경우 변경 내용을 적용하려면 클러스터의 기본(라이터) 인스턴스를 다시 시작해야 합니다. [릴리스: 1.2.0.0(2022년 7월 21일)](engine-releases-1.2.0.0.md) 이전에는 기본 인스턴스가 재시작되면 DB 클러스터의 모든 읽기 전용 복제본이 자동으로 재부팅되었습니다.  
[릴리스: 1.2.0.0(2022년 7월 21일)](engine-releases-1.2.0.0.md)부터는 기본 인스턴스를 다시 시작해도 복제본이 재시작되지 않습니다. 즉, DB 클러스터 파라미터 변경 사항을 적용하려면 각 인스턴스를 개별적으로 다시 시작해야 합니다([파라미터 그룹](parameter-groups.md) 참조).

**중요**  
현재로서는 잘못된 랩 모드 파라미터를 제공했거나 다른 이유로 요청이 실패하는 경우 실패 알림을 받지 못할 수 있습니다. 아래와 같이 [상태 API](access-graph-status.md)를 호출하여 랩 모드 변경 요청이 성공했는지 항상 확인해야 합니다.  

```
curl -G https://your-neptune-endpoint:port/status
```
상태 결과에는 요청한 변경 사항이 적용되었는지 여부를 보여주는 랩 모드 정보가 포함됩니다.  

```
{
  "status":"healthy",
  "startTime":"Wed Dec 29 02:29:24 UTC 2021",
  "dbEngineVersion":"development",
  "role":"writer",
  "dfeQueryEngine":"viaQueryHint",
  "gremlin":{"version":"tinkerpop-3.5.2"},
  "sparql":{"version":"sparql-1.1"},
  "opencypher":{"version":"Neptune-9.0.20190305-1.0"},
  "labMode":{
    "ObjectIndex":"disabled",
    "ReadWriteConflictDetection":"enabled"
  },
  "features":{
    "LookupCache":{"status":"Available"},
    "ResultCache":{"status":"disabled"},
    "IAMAuthentication":"disabled",
    "Streams":"disabled",
    "AuditLog":"disabled"
  },
  "settings":{"clusterQueryTimeoutInMs":"120000"}
}
```

현재 랩 모드를 사용해서 액세스할 수 있는 기능은 다음과 같습니다.

## OSGP 인덱스
<a name="features-lab-mode-features-osgp-index"></a>

Neptune은 이제 네 번째 인덱스, 즉 OSGP 인덱스를 유지할 수 있습니다. 이는 많은 수의 조건자를 갖는 데이터 세트에 유용합니다([OSGP 인덱스 활성화](feature-overview-storage-indexing.md#feature-overview-storage-indexing-osgp) 참조).

`neptune_lab_mode` DB 클러스터 파라미터에 `ObjectIndex=enabled`를 설정하여 비어 있는 새 Neptune DB 클러스터에서 OSGP 인덱스를 활성화할 수 있습니다. OSGP 인덱스는 비어 있는 새 **DB 클러스터에서만** 활성화할 수 있습니다.

기본적으로 OSGP 인덱스는 비활성화되어 있습니다.

**참고**  
OSGP 인덱스를 활성화하도록 `neptune_lab_mode` DB 클러스터 파라미터를 설정한 후 변경 사항을 적용하려면 클러스터의 라이터 인스턴스를 다시 시작해야 합니다.

**주의**  
`ObjectIndex=disabled` 설정을 통해 활성화된 OSGP 인덱스를 비활성화했다가 나중에 데이터를 더 추가한 후 다시 활성화하면 인덱스가 제대로 구축되지 않습니다. 인덱스의 온디맨드 재구축은 지원되지 않으므로, 데이터베이스가 비어 있을 때만 OSGP 인덱스를 활성화해야 합니다.

## 딕셔너리 폐영역 회수 활성화
<a name="features-lab-mode-features-gc"></a>

`DictionaryGCMode` 파라미터를 통해 neptune-streams가 활성화되지 않은 경우 속성 그래프 데이터에 대해 딕셔너리 폐영역 회수를 활성화할 수 있습니다. 동시성은 `DictionaryGCConcurrency` 파라미터를 통해 제어할 수 있습니다. 자세한 내용은 [딕셔너리 폐영역 회수](storage-gc.md) 섹션을 참조하세요.

## 공식화된 트랜잭션 시맨틱
<a name="features-lab-mode-features-transaction-semantics"></a>

Neptune은 동시 트랜잭션에 대한 공식 시맨틱을 업데이트했습니다([Neptune의 트랜잭션 시맨틱](transactions.md) 참조).

공식화된 트랜잭션 시맨틱을 활성화하거나 비활성화하는 `neptune_lab_mode` 파라미터의 이름으로 `ReadWriteConflictDetection`을 사용합니다.

기본적으로 공식화된 트랜잭션 시맨틱은 이미 활성화 되어 있습니다. 이전 작동으로 되돌아가고 싶으면 DB 클러스터 `neptune_lab_mode` 파라미터에 대해 설정된 값에 `ReadWriteConflictDetection=disabled`을 포함시킵니다.

## 확장된 날짜/시간 지원
<a name="labmode-extended-datetime-support"></a>

 Neptune은 날짜/시간 기능에 대한 지원을 확장했습니다. 확장된 형식의 날짜/시간을 사용하려면 DB 클러스터 `neptune_lab_mode` 파라미터의 값 집합에 `DatetimeMillisecond=enabled`를 포함하세요.

## StrictTimeoutValidation
<a name="labmode-StrictTimeoutValidation"></a>

**참고**  
이 기능은 [Neptune 엔진 릴리스 1.3.2.0부터 사용할 수 있습니다](engine-releases-1.3.2.0.md).

 기본값: 활성화됨([Neptune 엔진 릴리스 1.4.0.0](engine-releases-1.4.0.0.md) 이전에는 기본적으로 비활성화됨) 

 허용된 값: enabled/disabled 

 이 파라미터가 인 경우 요청 옵션 또는 쿼리 힌트로 지정된 쿼리`enabled`당 제한 시간 값은 [`neptune_query_timeout`](parameters.md#parameters-db-cluster-parameters-neptune_query_timeout) 파라미터 그룹 설정에서 전역적으로 설정된 값을 초과할 수 없습니다. 쿼리당 제한 시간이 전역 설정을 초과하면 Neptune은를 발생시킵니다`InvalidParameterException`. 1.4.0.0 이전의 엔진 버전에서는이 파라미터가 `disabled` 기본적으로 활성화되어 있어야 했습니다.

 값이 인 경우 `/status` 엔드포인트의 응답에서이 설정을 확인할 수 있습니다`disabled`.

 자세한 내용은 [쿼리당 제한 시간](best-practices-gremlin-java-per-query-timeout.md) 단원을 참조하십시오.

## AccurateQRCMemoryEstimation
<a name="labmode-AccurateQRCMemoryEstimation"></a>

**참고**  
이 기능은 [Neptune 엔진 릴리스 1.4.0.0부터 사용할 수 있습니다](engine-releases-1.4.0.0.md).

 기본값: disabled 

 허용된 값: enabled/disabled 

 [Gremlin 쿼리 결과 캐시](https://docs.aws.amazon.com//neptune/latest/userguide/gremlin-results-cache.html)를 활성화하면 데이터베이스에서 쿼리 결과를 캐싱할 수 있습니다. 기본적으로 캐시된 결과의 크기를 결정하기 위해 근사 추정값이 사용됩니다. 이 랩 모드 파라미터 `AccurateQRCMemoryEstimation`을 활성화하면 캐시된 결과의 크기 추정에 근사값 대신 정확한 크기 추정값이 사용됩니다. 이 랩 모드 파라미터는 Neptune 엔진 릴리스 버전 1.4.0.0부터 사용할 수 있습니다.