

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

# Neptune-Export API를 사용하여 Neptune-Export 작업 실행
<a name="export-service-run-export"></a>

CloudFormation 스택의 **출력** 탭에는 `NeptuneExportApiUri`도 포함되어 있습니다. Neptune-Export 엔드포인트에 요청을 보낼 때마다 이 URI를 사용합니다.

**내보내기 작업 실행**
+ 내보내기를 실행하는 사용자 또는 역할에 `execute-api:Invoke` 권한이 부여되었는지 확인하세요.
+ Neptune-Export를 설치할 때 CloudFormation 스택에서 `EnableIAM` 파라미터를 `true`로 설정한 경우 Neptune-Export API에 대한 모든 요청에 `Sigv4` 서명해야 합니다. [awscurl](https://github.com/okigan/awscurl)을 사용하여 API에 요청하는 것이 좋습니다. 여기의 모든 예제에서는 IAM 인증이 활성화된 것으로 가정합니다.
+ Neptune-Export를 설치할 때 CloudFormation 스택에 `VPCOnly` 파라미터를 `true`로 설정한 경우 VPC 내에서, 보통 해당 VPC에 있는 Amazon EC2 인스턴스에서 Neptune-Export API를 호출해야 합니다.

데이터 내보내기를 시작하려면 `command` 및 `outputS3Path` 요청 파라미터와 `endpoint` 내보내기 파라미터를 사용하여 `NeptuneExportApiUri` 엔드포인트에 요청을 보내면 됩니다.

Neptune에서 속성 그래프 데이터를 내보내 Amazon S3에 게시하는 요청의 예는 다음과 같습니다.

```
curl \
  (your NeptuneExportApiUri) \
  -X POST \
  -H 'Content-Type: application/json' \
  -d '{
        "command": "export-pg",
        "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export",
        "params": { "endpoint": "(your Neptune endpoint DNS name)" }
      }'
```

마찬가지로, 다음은 Neptune에서 Amazon S3로 RDF 데이터를 내보내는 요청의 예입니다.

```
curl \
  (your NeptuneExportApiUri) \
  -X POST \
  -H 'Content-Type: application/json' \
  -d '{
        "command": "export-rdf",
        "outputS3Path": "s3://(your Amazon S3 bucket)/neptune-export",
        "params": { "endpoint": "(your Neptune endpoint DNS name)" }
      }'
```

`command` 요청 파라미터를 생략하면 기본적으로 Neptune-Export는 Neptune에서 속성 그래프 데이터를 내보내려고 시도합니다.

이전 명령이 성공적으로 실행된 경우 출력은 다음과 같습니다.

```
{
  "jobName": "neptune-export-abc12345-1589808577790",
  "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f"
}
```

## 방금 시작한 내보내기 작업 모니터링
<a name="export-service-monitor"></a>

실행 중인 작업을 모니터링하려면 다음과 같이 jobID를 `NeptuneExportApiUri`에 추가하면 됩니다.

```
curl \
  (your NeptuneExportApiUri)/(the job ID)
```

서비스가 아직 내보내기 작업을 시작하지 않은 경우 응답은 다음과 같습니다.

```
{
  "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f",
  "status": "pending"
}
```

내보내기 작업이 시작된 후 명령을 반복하면 응답은 다음과 같습니다.

```
{
  "jobId": "c86258f7-a9c9-4f8c-8f4c-bbfe76d51c8f",
  "status": "running",
  "logs": "https://us-east-1.console.aws.amazon.com/cloudwatch/home?..."
}
```

상태 호출에서 제공한 URI를 사용하여 CloudWatch Logs에서 로그를 열면 내보내기 진행 상황을 자세히 모니터링할 수 있습니다.

![\[CloudWatch Logs 로그 화면의 스크린샷입니다.\]](http://docs.aws.amazon.com/ko_kr/neptune/latest/userguide/images/export-job-monitor.png)


## 실행 중인 내보내기 작업 취소
<a name="export-service-cancel-job"></a>

**AWS Management Console을 사용하여 실행 중인 내보내기 작업을 취소하려면**

1. [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/)에서 AWS Batch 콘솔을 엽니다.

1. **작업**을 선택합니다.

1. 취소하려는 실행 중인 작업을 `jobID`를 기준으로 찾습니다.

1. **작업 취소**를 선택합니다.

**Neptune 내보내기 API를 사용하여 실행 중인 내보내기 작업을 취소하려면**:

다음과 같이 `jobID`가 추가된 상태에서 `HTTP DELETE` 요청을 `NeptuneExportApiUri`로 보냅니다.

```
curl -X DELETE \
  (your NeptuneExportApiUri)/(the job ID)
```