

Amazon Timestream for LiveAnalytics와 유사한 기능을 원하는 경우 Amazon Timestream for InfluxDB를 고려해 보세요. 간소화된 데이터 수집과 실시간 분석을 위한 10밀리초 미만의 쿼리 응답 시간을 제공합니다. [여기](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html)에서 자세히 알아보세요.

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

# 에서 배치 로드 사용 AWS CLI
<a name="batch-load-using-cli"></a>

**설정**

배치 로드 사용을 시작하려면 다음 단계를 수행하세요.

1. 의 지침에 AWS CLI 따라를 설치합니다[를 사용하여 LiveAnalytics용 Amazon Timestream에 액세스 AWS CLI](Tools.CLI.md).

1. 다음 명령을 실행하여 Timestream CLI 명령이 업데이트되었는지 확인합니다. create-batch-load-task가 목록에 있는지 확인합니다.

   `aws timestream-write help`

1. [배치 로드 데이터 파일 준비](batch-load-preparing-data-file.md)의 지침에 따라 데이터 소스를 준비합니다.

1. [를 사용하여 LiveAnalytics용 Amazon Timestream에 액세스 AWS CLI](Tools.CLI.md)의 지침에 따라 데이터베이스와 테이블을 생성합니다.

1. 보고서 출력을 위해 S3 버킷을 생성합니다. 버킷은 동일한 리전에 있어야 합니다. 버킷에 대한 자세한 내용은 [Amazon S3 버킷 생성, 구성 및 작업](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html)을 참조하세요.

1. 배치 로드 태스크를 생성합니다. 단계는 [배치 로드 태스크 생성](#batch-load-using-cli-create-task)를 참조하세요.

1. 태스크의 상태를 확인합니다. 단계는 [배치 로드 태스크 설명](#batch-load-using-cli-describe-task)를 참조하세요.

## 배치 로드 태스크 생성
<a name="batch-load-using-cli-create-task"></a>

`create-batch-load-task` 명령을 사용하여 배치 로드 태스크를 생성할 수 있습니다. CLI를 사용하여 배치 로드 태스크를 생성할 때 파라미터를 단일 JSON 조각으로 집계할 수 있는 JSON 파라미터인 `cli-input-json`를 사용할 수 있습니다. `data-model-configuration`, `data-source-configuration`, `report-configuration`, `target-database-name`, `target-table-name` 등의 다른 여러 파라미터를 사용하여 이러한 세부 정보를 구분할 수도 있습니다.

예제는 [배치 로드 태스크 생성 예제](#batch-load-using-cli-example) 섹션을 참조하세요.

## 배치 로드 태스크 설명
<a name="batch-load-using-cli-describe-task"></a>

다음과 같이 배치 로드 태스크 설명을 검색할 수 있습니다.

```
aws timestream-write describe-batch-load-task --task-id <value>
```

다음은 응답의 예입니다.

```
{
    "BatchLoadTaskDescription": {
        "TaskId": "<TaskId>",
        "DataSourceConfiguration": {
            "DataSourceS3Configuration": {
                "BucketName": "test-batch-load-west-2",
                "ObjectKeyPrefix": "sample.csv"
            },
            "CsvConfiguration": {},
            "DataFormat": "CSV"
        },
        "ProgressReport": {
            "RecordsProcessed": 2,
            "RecordsIngested": 0,
            "FileParseFailures": 0,
            "RecordIngestionFailures": 2,
            "FileFailures": 0,
            "BytesIngested": 119
        },
        "ReportConfiguration": {
            "ReportS3Configuration": {
                "BucketName": "test-batch-load-west-2",
                "ObjectKeyPrefix": "<ObjectKeyPrefix>",
                "EncryptionOption": "SSE_S3"
            }
        },
        "DataModelConfiguration": {
            "DataModel": {
                "TimeColumn": "timestamp",
                "TimeUnit": "SECONDS",
                "DimensionMappings": [
                    {
                        "SourceColumn": "vehicle",
                        "DestinationColumn": "vehicle"
                    },
                    {
                        "SourceColumn": "registration",
                        "DestinationColumn": "license"
                    }
                ],
                "MultiMeasureMappings": {
                    "TargetMultiMeasureName": "test",
                    "MultiMeasureAttributeMappings": [
                        {
                            "SourceColumn": "wgt",
                            "TargetMultiMeasureAttributeName": "weight",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "SourceColumn": "spd",
                            "TargetMultiMeasureAttributeName": "speed",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "SourceColumn": "fuel",
                            "TargetMultiMeasureAttributeName": "fuel",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "SourceColumn": "miles",
                            "TargetMultiMeasureAttributeName": "miles",
                            "MeasureValueType": "DOUBLE"
                        }
                    ]
                }
            }
        },
        "TargetDatabaseName": "BatchLoadExampleDatabase",
        "TargetTableName": "BatchLoadExampleTable",
        "TaskStatus": "FAILED",
        "RecordVersion": 1,
        "CreationTime": 1677167593.266,
        "LastUpdatedTime": 1677167602.38
    }
}
```

## 배치 로드 태스크 나열
<a name="batch-load-using-cli-list-tasks"></a>

다음과 같이 배치 로드 태스크를 나열할 수 있습니다.

```
aws timestream-write list-batch-load-tasks
```

출력은 다음과 같이 나타납니다.

```
{
    "BatchLoadTasks": [
        {
            "TaskId": "<TaskId>",
            "TaskStatus": "FAILED",
            "DatabaseName": "BatchLoadExampleDatabase",
            "TableName": "BatchLoadExampleTable",
            "CreationTime": 1677167593.266,
            "LastUpdatedTime": 1677167602.38
        }
    ]
}
```

## 배치 로드 태스크 재개
<a name="batch-load-using-cli-resume-task"></a>

다음과 같이 배치 로드 태스크를 재개할 수 있습니다.

```
aws timestream-write resume-batch-load-task --task-id <value>
```

응답은 성공을 나타내거나 오류 정보를 포함할 수 있습니다.

## 배치 로드 태스크 생성 예제
<a name="batch-load-using-cli-example"></a>

**Example**  

1. 이름이 `BatchLoad`인 Timestream for LiveAnalytics 데이터베이스와 이름이 `BatchLoadTest`인 테이블을 생성합니다. `MemoryStoreRetentionPeriodInHours` 및 `MagneticStoreRetentionPeriodInDays`의 값을 확인하고 필요한 경우 조정합니다.

   ```
   aws timestream-write create-database --database-name BatchLoad \
   
   aws timestream-write create-table --database-name BatchLoad \
   --table-name BatchLoadTest \
   --retention-properties "{\"MemoryStoreRetentionPeriodInHours\": 12, \"MagneticStoreRetentionPeriodInDays\": 100}"
   ```

1. 콘솔을 사용하여 S3 버킷을 생성하고 `sample.csv` 파일을 해당 위치에 복사합니다. 샘플 CSV에서 [샘플 CSV](samples/batch-load-sample-file.csv.zip)를 다운로드할 수 있습니다.

1. 콘솔을 사용하여 배치 로드 태스크가 오류와 함께 완료될 경우 보고서를 작성하기 위해 Timestream for LiveAnalytics용 S3 버킷을 생성합니다.

1. 배치 로드 태스크를 생성합니다. *\$1INPUT\$1BUCKET*과 *\$1REPORT\$1BUCKET*을 이전 단계에서 생성한 버킷으로 바꿔야 합니다.

   ```
   aws timestream-write create-batch-load-task \
   --data-model-configuration "{\
               \"DataModel\": {\
                 \"TimeColumn\": \"timestamp\",\
                 \"TimeUnit\": \"SECONDS\",\
                 \"DimensionMappings\": [\
                   {\
                     \"SourceColumn\": \"vehicle\"\
                   },\
                   {\
                     \"SourceColumn\": \"registration\",\
                     \"DestinationColumn\": \"license\"\
                   }\
                 ],
                 \"MultiMeasureMappings\": {\
                   \"TargetMultiMeasureName\": \"mva_measure_name\",\
                   \"MultiMeasureAttributeMappings\": [\
                     {\
                       \"SourceColumn\": \"wgt\",\
                       \"TargetMultiMeasureAttributeName\": \"weight\",\
                       \"MeasureValueType\": \"DOUBLE\"\
                     },\
                     {\
                       \"SourceColumn\": \"spd\",\
                       \"TargetMultiMeasureAttributeName\": \"speed\",\
                       \"MeasureValueType\": \"DOUBLE\"\
                     },\
                     {\
                       \"SourceColumn\": \"fuel_consumption\",\
                       \"TargetMultiMeasureAttributeName\": \"fuel\",\
                       \"MeasureValueType\": \"DOUBLE\"\
                     },\
                     {\
                       \"SourceColumn\": \"miles\",\
                       \"MeasureValueType\": \"BIGINT\"\
                     }\
                   ]\
                 }\
               }\
             }" \
   --data-source-configuration "{
               \"DataSourceS3Configuration\": {\
                 \"BucketName\": \"$INPUT_BUCKET\",\
                 \"ObjectKeyPrefix\": \"$INPUT_OBJECT_KEY_PREFIX\"
               },\
               \"DataFormat\": \"CSV\"\
             }" \
   --report-configuration "{\
               \"ReportS3Configuration\": {\
                 \"BucketName\": \"$REPORT_BUCKET\",\
                 \"EncryptionOption\": \"SSE_S3\"\
               }\
             }" \
   --target-database-name BatchLoad \
   --target-table-name BatchLoadTest
   ```

   앞의 명령은 다음 출력을 반환합니다.

   ```
   {
       "TaskId": "TaskId "
   }
   ```

1. 태스크 진행 상황을 확인합니다. *\$1TASK\$1ID*를 이전 단계에서 반환된 태스크 ID로 바꿔야 합니다.

   ```
   aws timestream-write describe-batch-load-task --task-id $TASK_ID 
   ```
**출력 예시**  

```
{
    "BatchLoadTaskDescription": {
        "ProgressReport": {
            "BytesIngested": 1024,
            "RecordsIngested": 2,
            "FileFailures": 0,
            "RecordIngestionFailures": 0,
            "RecordsProcessed": 2,
            "FileParseFailures": 0
        },
        "DataModelConfiguration": {
            "DataModel": {
                "DimensionMappings": [
                    {
                        "SourceColumn": "vehicle",
                        "DestinationColumn": "vehicle"
                    },
                    {
                        "SourceColumn": "registration",
                        "DestinationColumn": "license"
                    }
                ],
                "TimeUnit": "SECONDS",
                "TimeColumn": "timestamp",
                "MultiMeasureMappings": {
                    "MultiMeasureAttributeMappings": [
                        {
                            "TargetMultiMeasureAttributeName": "weight",
                            "SourceColumn": "wgt",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "TargetMultiMeasureAttributeName": "speed",
                            "SourceColumn": "spd",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "TargetMultiMeasureAttributeName": "fuel",
                            "SourceColumn": "fuel_consumption",
                            "MeasureValueType": "DOUBLE"
                        },
                        {
                            "TargetMultiMeasureAttributeName": "miles",
                            "SourceColumn": "miles",
                            "MeasureValueType": "DOUBLE"
                        }
                    ],
                    "TargetMultiMeasureName": "mva_measure_name"
                }
            }
        },
        "TargetDatabaseName": "BatchLoad",
        "CreationTime": 1672960381.735,
        "TaskStatus": "SUCCEEDED",
        "RecordVersion": 1,
        "TaskId": "TaskId ",
        "TargetTableName": "BatchLoadTest",
        "ReportConfiguration": {
            "ReportS3Configuration": {
                "EncryptionOption": "SSE_S3",
                "ObjectKeyPrefix": "ObjectKeyPrefix ",
                "BucketName": "amzn-s3-demo-bucket"
            }
        },
        "DataSourceConfiguration": {
            "DataSourceS3Configuration": {
                "ObjectKeyPrefix": "sample.csv",
                "BucketName": "amzn-s3-demo-source-bucket"
            },
            "DataFormat": "CSV",
            "CsvConfiguration": {}
        },
        "LastUpdatedTime": 1672960387.334
    }
}
```