

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat pekerjaan ekspor kumpulan data di Amazon Personalize
<a name="create-dataset-export-job"></a>

Anda dapat membuat tugas ekspor kumpulan data dengan konsol Amazon Personalize AWS Command Line Interface ,AWS CLI(), atau. AWS SDKs 

## Membuat pekerjaan ekspor kumpulan data (konsol)
<a name="export-data-console"></a>

Setelah mengimpor data ke dalam kumpulan data dan membuat bucket Amazon S3 keluaran, Anda dapat mengekspor data ke bucket untuk dianalisis. **Untuk mengekspor kumpulan data menggunakan konsol Amazon Personalize, Anda membuat tugas ekspor kumpulan data. Untuk informasi tentang membuat bucket Amazon S3, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.

Sebelum mengekspor kumpulan data, pastikan peran layanan Amazon Personalize dapat mengakses dan menulis ke bucket Amazon S3 keluaran Anda. Lihat [Persyaratan izin pekerjaan ekspor dataset](export-permissions.md). 

**Untuk membuat pekerjaan ekspor kumpulan data (konsol)**

1. [Buka konsol Amazon Personalize di https://console.aws.amazon.com/personalize/ rumah.](https://console.aws.amazon.com/personalize/home)

1. Di panel navigasi, pilih Grup **kumpulan data**.

1. Pada halaman **grup Dataset**, pilih grup kumpulan data Anda.

1. Di panel navigasi, pilih **Datasets**.

1. Pilih kumpulan data yang ingin Anda ekspor ke bucket Amazon S3.

1.  Di **pekerjaan ekspor Dataset, pilih Buat pekerjaan** **ekspor kumpulan data**. 

1. Di **detail pekerjaan ekspor Dataset**, untuk **nama pekerjaan ekspor Dataset**, masukkan nama untuk pekerjaan ekspor.

1. Untuk **peran layanan IAM, pilih peran layanan** Amazon Personalisasi yang Anda buat. [Membuat peran IAM untuk Amazon Personalize](set-up-required-permissions.md#set-up-create-role-with-permissions)

1. Untuk **jalur keluaran data Amazon S3**, masukkan bucket Amazon S3 tujuan. Gunakan sintaks berikut:

   **s3://amzn-s3-demo-bucket/<folder path>**

1. Jika Anda menggunakan AWS KMS untuk enkripsi, untuk **ARN kunci KMS**, masukkan Nama Sumber Daya Amazon (ARN) untuk kunci tersebut. AWS KMS 

1. Untuk **tipe data Ekspor**, pilih tipe data yang akan diekspor berdasarkan cara Anda mengimpor data semula.
   +  Pilih **Massal** untuk mengekspor hanya data yang Anda impor secara massal menggunakan pekerjaan impor kumpulan data. 
   + Pilih **Incremental** untuk mengekspor hanya data yang Anda impor satu per satu menggunakan konsol atau`PutEvents`,`PutUsers`, atau `PutItems` operasi. 
   + Pilih **Keduanya** untuk mengekspor semua data dalam kumpulan data. 

1. Untuk **Tag**, secara opsional tambahkan tag apa pun. Untuk informasi selengkapnya tentang menandai sumber daya Amazon Personalize, lihat. [Menandai Amazon Personalisasi sumber daya](tagging-resources.md)

1. Pilih **Buat pekerjaan ekspor kumpulan data**. 

   Pada halaman **ikhtisar Dataset****, di pekerjaan ekspor Dataset**, pekerjaan terdaftar dengan status **pekerjaan Ekspor**. Pekerjaan ekspor kumpulan data selesai ketika statusnya **AKTIF**. Anda kemudian dapat mengunduh data dari bucket Amazon S3 keluaran. Untuk informasi tentang mengunduh objek dari bucket Amazon S3, lihat [Mengunduh objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/download-objects.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*. .

## Membuat pekerjaan ekspor dataset ()AWS CLI
<a name="export-data-cli"></a>

Setelah mengimpor data ke dalam kumpulan data dan membuat bucket Amazon S3 keluaran, Anda dapat mengekspor kumpulan data ke bucket untuk dianalisis. Untuk mengekspor kumpulan data menggunakan AWS CLI, buat pekerjaan ekspor kumpulan data menggunakan perintah. `create-dataset-export-job` AWS CLI Untuk informasi tentang membuat bucket Amazon S3, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*. 

Sebelum mengekspor kumpulan data, pastikan peran layanan Amazon Personalize dapat mengakses dan menulis ke bucket Amazon S3 keluaran Anda. Lihat [Persyaratan izin pekerjaan ekspor dataset](export-permissions.md). 

 Berikut ini adalah contoh perintah `create-dataset-export-job` AWS CLI . Beri nama pekerjaan, ganti `dataset arn` dengan Amazon Resource Name (ARN) dari kumpulan data yang ingin Anda ekspor, dan ganti dengan ARN `role ARN` dari peran layanan Amazon Personalize yang Anda buat. [Membuat peran IAM untuk Amazon Personalize](set-up-required-permissions.md#set-up-create-role-with-permissions) Di`s3DataDestination`, untuk`kmsKeyArn`, secara opsional berikan ARN untuk kunci AWS KMS Anda, dan untuk `path` menyediakan jalur ke bucket Amazon S3 keluaran Anda. 

 Untuk`ingestion-mode`, tentukan data yang akan diekspor dari opsi berikut: 
+  Tentukan `BULK` untuk mengekspor hanya data yang Anda impor secara massal menggunakan pekerjaan impor kumpulan data. 
+  Tentukan `PUT` untuk mengekspor hanya data yang Anda impor satu per satu menggunakan konsol atau`PutEvents`, PutUsers, atau `PutItems` operasi. 
+  Tentukan `ALL` untuk mengekspor semua data dalam kumpulan data. 

 Untuk informasi selengkapnya, lihat [CreateDatasetExportJob](API_CreateDatasetExportJob.md). 

```
aws personalize create-dataset-export-job \
  --job-name {{job name}} \
  --dataset-arn {{dataset ARN}} \
  --job-output "{\"s3DataDestination\":{\"kmsKeyArn\":\"{{kms key ARN}}\",\"path\":\"s3://{{amzn-s3-demo-bucket}}/{{folder-name}}/\"}}" \
  --role-arn {{role ARN}} \
  --ingestion-mode {{PUT}}
```

Pekerjaan ekspor dataset ARN ditampilkan.

```
{
  "datasetExportJobArn": "arn:aws:personalize:us-west-2:acct-id:dataset-export-job/DatasetExportJobName"
}
```

Gunakan `DescribeDatasetExportJob` operasi untuk memeriksa status.

```
aws personalize describe-dataset-export-job \
  --dataset-export-job-arn {{dataset export job ARN}}
```

## Membuat pekerjaan ekspor dataset ()AWS SDKs
<a name="export-data-sdk"></a>

 Setelah mengimpor data ke dalam kumpulan data dan membuat bucket Amazon S3 keluaran, Anda dapat mengekspor kumpulan data ke bucket untuk dianalisis. Untuk mengekspor kumpulan data menggunakan AWS SDKs, buat pekerjaan ekspor kumpulan data menggunakan operasi. [CreateDatasetExportJob](API_CreateDatasetExportJob.md) Untuk informasi tentang membuat bucket Amazon S3, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*. 

Kode berikut menunjukkan cara membuat pekerjaan ekspor dataset menggunakan SDK for Python (Boto3) atau SDK for Java 2.x SDK.

Sebelum mengekspor kumpulan data, pastikan peran layanan Amazon Personalize dapat mengakses dan menulis ke bucket Amazon S3 keluaran Anda. Lihat [Persyaratan izin pekerjaan ekspor dataset](export-permissions.md). 

------
#### [ SDK for Python (Boto3) ]

Gunakan yang berikut ini `create_dataset_export_job` untuk mengekspor data dalam kumpulan data ke bucket Amazon S3. Beri nama pekerjaan, ganti `dataset arn` dengan Amazon Resource Name (ARN) dari kumpulan data yang ingin Anda ekspor, dan ganti dengan ARN `role ARN` dari peran layanan Amazon Personalize yang Anda buat. [Membuat peran IAM untuk Amazon Personalize](set-up-required-permissions.md#set-up-create-role-with-permissions) Di`s3DataDestination`, untuk`kmsKeyArn`, secara opsional berikan ARN untuk kunci AWS KMS Anda, dan untuk `path` menyediakan jalur ke bucket Amazon S3 keluaran Anda. 

 Untuk`ingestionMode`, tentukan data yang akan diekspor dari opsi berikut: 
+ Tentukan `BULK` untuk mengekspor hanya data yang Anda impor secara massal menggunakan pekerjaan impor kumpulan data. 
+ Tentukan `PUT` untuk mengekspor hanya data yang Anda impor satu per satu menggunakan konsol atau`PutEvents`, PutUsers, atau `PutItems` operasi. 
+ Tentukan `ALL` untuk mengekspor semua data dalam kumpulan data.

```
import boto3

personalize = boto3.client('personalize')

response = personalize.create_dataset_export_job(
    jobName = '{{job name}}',
    datasetArn = '{{dataset ARN}}',
    jobOutput = {
      "s3DataDestination": {
        "kmsKeyArn": "{{kms key ARN}}",
        "path": "s3://{{amzn-s3-demo-bucket/folder-name/}}"
      }
    },
    roleArn = '{{role ARN}}',
    ingestionMode = '{{PUT}}'
)

dsej_arn = response['datasetExportJobArn']

print ('Dataset Export Job arn: ' + dsej_arn)

description = personalize.describe_dataset_export_job(
    datasetExportJobArn = dsej_arn)['datasetExportJob']

print('Name: ' + description['jobName'])
print('ARN: ' + description['datasetExportJobArn'])
print('Status: ' + description['status'])
```

------
#### [ SDK for Java 2.x ]

Gunakan `createDatasetExportJob` metode berikut untuk membuat pekerjaan ekspor dataset. Teruskan yang berikut ini sebagai parameter: a PersonalizeClient, nama untuk pekerjaan ekspor Anda, ARN dari kumpulan data yang ingin Anda ekspor, mode konsumsi, jalur untuk bucket Amazon S3 keluaran, dan ARN untuk kunci Anda. AWS KMS 

 Ini `ingestionMode` bisa menjadi salah satu opsi berikut: 
+ Gunakan `IngestionMode.BULK` untuk mengekspor hanya data yang Anda impor secara massal menggunakan pekerjaan impor kumpulan data. 
+ Gunakan `IngestionMode.PUT` untuk mengekspor hanya data yang Anda impor satu per satu menggunakan konsol atau`PutEvents`, PutUsers, atau `PutItems` operasi. 
+ Gunakan `IngestionMode.ALL` untuk mengekspor semua data dalam dataset.

```
public static void createDatasetExportJob(PersonalizeClient personalizeClient, 
                                        String jobName,
                                        String datasetArn, 
                                        IngestionMode ingestionMode, 
                                        String roleArn,
                                        String s3BucketPath,
                                        String kmsKeyArn) {

    long waitInMilliseconds = 30 * 1000; // 30 seconds
    String status = null;

    try {
        S3DataConfig exportS3DataConfig = S3DataConfig.builder()
            .path(s3BucketPath)
            .kmsKeyArn(kmsKeyArn)
            .build();
            
        DatasetExportJobOutput jobOutput = DatasetExportJobOutput.builder()
            .s3DataDestination(exportS3DataConfig)
            .build();

        CreateDatasetExportJobRequest createRequest = CreateDatasetExportJobRequest.builder()
            .jobName(jobName)
            .datasetArn(datasetArn)
            .ingestionMode(ingestionMode)
            .jobOutput(jobOutput)
            .roleArn(roleArn)
            .build();

        String datasetExportJobArn = personalizeClient.createDatasetExportJob(createRequest).datasetExportJobArn();

        DescribeDatasetExportJobRequest describeDatasetExportJobRequest = DescribeDatasetExportJobRequest.builder()
            .datasetExportJobArn(datasetExportJobArn)
            .build();

        long maxTime = Instant.now().getEpochSecond() + 3 * 60 * 60;

        while (Instant.now().getEpochSecond() < maxTime) {

            DatasetExportJob datasetExportJob = personalizeClient.describeDatasetExportJob(describeDatasetExportJobRequest)
                .datasetExportJob();

            status = datasetExportJob.status();
            System.out.println("Export job status: " + status);

            if (status.equals("ACTIVE") || status.equals("CREATE FAILED")) {
                break;
            }
            try {
                Thread.sleep(waitInMilliseconds);
            } catch (InterruptedException e) {
                System.out.println(e.getMessage());
            }
        }
    } catch (PersonalizeException e) {
        System.out.println(e.awsErrorDetails().errorMessage());
    }
}
```

------