

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

# Neptune 스트림 API 응답 형식
<a name="streams-using-api-reponse"></a>

Neptune 스트림 REST API 요청에 대한 응답에는 다음 필드가 포함됩니다.
+ `lastEventId`   –   스트림 응답의 마지막 변경에 대한 시퀀스 식별자입니다. 이벤트 ID는 두 개의 필드로 이루어져 있는데, `commitNum`은 그래프를 변경한 트랜잭션을 식별하고 `opNum`는 해당 트랜잭션 내에서 특정 작업을 식별합니다. 방법은 다음 예제와 같습니다.

  ```
    "eventId": {
      "commitNum": 12,
      "opNum": 1
    }
  ```
+ `lastTrxTimestamp`   –   트랜잭션에 대한 커밋이 요청된 시점입니다(Unix epoch의 밀리초).
+ `format`   –   반환 중인 변경 레코드에 대한 직렬화 형식입니다. 가능한 값은 Gremlin 또는 openCypher 변경 레코드의 경우 `PG_JSON`, SPARQL 변경 레코드의 경우 `NQUADS`입니다.
+ `records`   –   응답에 포함된 직렬화된 변경-로그 스트림 레코드의 배열입니다. `records` 배열의 각 레코드에는 다음 필드가 포함됩니다.
  + `commitTimestamp`   –   트랜잭션에 대한 커밋이 요청된 시점입니다(Unix epoch의 밀리초).
  + `eventId`   –   스트림 변경 레코드의 시퀀스 식별자입니다.
  + `data`   –   직렬화된 Gremlin, SPARQL 또는 openCypher 변경 레코드입니다. 각 레코드의 직렬화된 형식은 다음 섹션 [Neptune 스트림의 직렬화 형식](streams-change-formats.md)에 자세히 설명되어 있습니다.
  + `op`   –   변경을 일으킨 작업입니다.
  + `isLastOp`   –   이 작업이 트랜잭션의 마지막 작업인 경우에만 표시됩니다. 있는 경우 `true`로 설정됩니다. 전체 트랜잭션이 사용되도록 하는 데 유용합니다.
+ `totalRecords`   –   응답의 총 레코드 수입니다.

예를 들어, 다음 응답은 2개 이상의 작업이 포함된 트랜잭션에 대해 Gremlin 변경 데이터를 반환합니다.

```
{
  "lastEventId": {
    "commitNum": 12,
    "opNum": 1
  },
  "lastTrxTimestamp": 1560011610678,
  "format": "PG_JSON",
  "records": [
    {
      "commitTimestamp": 1560011610678,
      "eventId": {
        "commitNum": 1,
        "opNum": 1
      },
      "data": {
        "id": "d2b59bf8-0d0f-218b-f68b-2aa7b0b1904a",
        "type": "vl",
        "key": "label",
        "value": {
          "value": "vertex",
          "dataType": "String"
        }
      },
      "op": "ADD"
    }
  ],
  "totalRecords": 1
}
```

다음 응답은 트랜잭션의 마지막 작업(트랜잭션 번호 97에서 `EventId(97, 1)`로 식별되는 작업)에 대한 SPARQL 변경 데이터를 반환합니다.

```
{
  "lastEventId": {
    "commitNum": 97,
    "opNum": 1
  },
  "lastTrxTimestamp": 1561489355102,
  "format": "NQUADS",
  "records": [
    {
      "commitTimestamp": 1561489355102,
      "eventId": {
        "commitNum": 97,
        "opNum": 1
      },
      "data": {
        "stmt": "<https://test.com/s> <https://test.com/p> <https://test.com/o> .\n"
      },
      "op": "ADD",
      "isLastOp": true
    }
  ],
  "totalRecords": 1
}
```