

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

# Menggunakan Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3"></a>

Anda dapat memigrasikan data dari bucket Amazon S3 menggunakan. AWS DMS Untuk melakukan ini, berikan akses ke Amazon S3 bucket yang berisi file data satu atau lebih. Dalam bucket S3, termasuk file JSON yang menggambarkan pemetaan antara data dan tabel basis data data dalam file-file tersebut.

File data sumber harus ada dalam Amazon S3 bucket sebelum beban penuh dimulai. Anda menentukan nama bucket menggunakan parameter `bucketName`. 

File data sumber dapat dalam format berikut:
+ Nilai yang dipisahkan koma (.csv)
+ Parket (DMS versi 3.5.3 dan yang lebih baru). Untuk informasi tentang menggunakan file format Parket, lihat. [Menggunakan file format Parket di Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Parquet)

Untuk file data sumber dalam format nilai dipisahkan koma (.csv), beri nama menggunakan konvensi penamaan berikut. Dalam konvensi ini, *`schemaName`* adalah skema sumber dan *`tableName`*adalah nama tabel dalam skema itu.

```
/schemaName/tableName/LOAD001.csv
/schemaName/tableName/LOAD002.csv
/schemaName/tableName/LOAD003.csv
...
```

 Misalnya, anggaplah file data Anda berada di `amzn-s3-demo-bucket`, di jalur Amazon S3 berikut.

```
s3://amzn-s3-demo-bucket/hr/employee
```

Pada waktu muat, AWS DMS mengasumsikan bahwa nama skema sumber adalah`hr`, dan bahwa nama tabel sumber adalah. `employee`

Selain `bucketName` (yang diperlukan), Anda dapat memberikan `bucketFolder` parameter opsional untuk menentukan di mana AWS DMS harus mencari file data di bucket Amazon S3. Melanjutkan contoh sebelumnya, jika Anda mengatur `bucketFolder` ke`sourcedata`, kemudian AWS DMS membaca file data di jalur berikut.

```
s3://amzn-s3-demo-bucket/sourcedata/hr/employee
```

Anda dapat menentukan pembatas kolom, baris pembatas, indikator nilai null, dan parameter lainnya menggunakan atribut sambungan tambahan. Untuk informasi selengkapnya, lihat [Pengaturan titik akhir untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Configuring).

Anda dapat menentukan pemilik bucket dan mencegah sniping dengan menggunakan setelan endpoint `ExpectedBucketOwner` Amazon S3, seperti yang ditunjukkan berikut ini. Kemudian, saat Anda membuat permintaan untuk menguji koneksi atau melakukan migrasi, S3 memeriksa ID akun pemilik bucket terhadap parameter yang ditentukan.

```
--s3-settings='{"ExpectedBucketOwner": "AWS_Account_ID"}'
```

**Topics**
+ [Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef)
+ [Menggunakan CDC dengan Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.CDC)
+ [Prasyarat saat menggunakan Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Prerequisites)
+ [Keterbatasan saat menggunakan Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Limitations)
+ [Pengaturan titik akhir untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Configuring)
+ [Jenis data sumber untuk Amazon S3](#CHAP_Source.S3.DataTypes)
+ [Menggunakan file format Parket di Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.Parquet)

## Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.ExternalTableDef"></a>

Selain file data, Anda juga harus memberikan definisi tabel eksternal. *Definisi tabel eksternal* adalah dokumen JSON yang menjelaskan bagaimana AWS DMS seharusnya menafsirkan data dari Amazon S3. Ukuran maksimum dokumen ini adalah 2 MB. Jika Anda membuat titik akhir sumber menggunakan AWS DMS Management Console, Anda dapat memasukkan JSON langsung ke kotak pemetaan tabel. Jika Anda menggunakan AWS Command Line Interface (AWS CLI) atau AWS DMS API untuk melakukan migrasi, Anda dapat membuat file JSON untuk menentukan definisi tabel eksternal.

Misalkan Anda memiliki file data yang mencakup hal berikut.

```
101,Smith,Bob,2014-06-04,New York
102,Smith,Bob,2015-10-08,Los Angeles
103,Smith,Bob,2017-03-13,Dallas
104,Smith,Bob,2017-03-13,Dallas
```

Berikut ini adalah contoh definisi tabel eksternal untuk data ini.

```
{
    "TableCount": "1",
    "Tables": [
        {
            "TableName": "employee",
            "TablePath": "hr/employee/",
            "TableOwner": "hr",
            "TableColumns": [
                {
                    "ColumnName": "Id",
                    "ColumnType": "INT8",
                    "ColumnNullable": "false",
                    "ColumnIsPk": "true"
                },
                {
                    "ColumnName": "LastName",
                    "ColumnType": "STRING",
                    "ColumnLength": "20"
                },
                {
                    "ColumnName": "FirstName",
                    "ColumnType": "STRING",
                    "ColumnLength": "30"
                },
                {
                    "ColumnName": "HireDate",
                    "ColumnType": "DATETIME"
                },
                {
                    "ColumnName": "OfficeLocation",
                    "ColumnType": "STRING",
                    "ColumnLength": "20"
                }
            ],
            "TableColumnsTotal": "5"
        }
    ]
}
```

Unsur-unsur dalam dokumen JSON ini adalah sebagai berikut:

`TableCount` — jumlah tabel sumber. Dalam contoh ini, hanya ada satu tabel.

`Tables` — susunan yang terdiri dari satu peta JSON per tabel sumber. Dalam contoh ini, hanya ada satu peta. Setiap peta terdiri atas elemen-elemen berikut:
+ `TableName` — nama tabel sumber.
+ `TablePath` — jalur di Amazon S3 bucket Anda di mana AWS DMS dapat menemukan file beban data lengkap. Jika `bucketFolder` nilai ditentukan, nilainya ditambahkan ke jalur.
+ `TableOwner` — nama skema untuk tabel ini.
+ `TableColumns` — susunan dari satu peta atau lebih, masing-masing menggambarkan kolom dalam tabel sumber:
  + `ColumnName` — nama kolom dalam tabel sumber.
  + `ColumnType` — jenis data untuk kolom. Untuk jenis data yang valid, lihat [Jenis data sumber untuk Amazon S3](#CHAP_Source.S3.DataTypes).
  + `ColumnLength` — jumlah byte dalam kolom ini. Panjang kolom maksimum dibatasi untuk2147483647 Bytes (2.047 MegaBytes) karena sumber S3 tidak mendukung mode LOB PENUH. `ColumnLength`berlaku untuk tipe data berikut:
    + BYTE
    + STRING
  + `ColumnNullable` — nilai Boolean yang `true` jika kolom ini dapat berisi nilai-nilai NULL (default=`false`).
  + `ColumnIsPk` — nilai Boolean yang `true` jika kolom ini adalah bagian dari kunci primer (default=`false`).
  + `ColumnDateFormat`— format tanggal input untuk kolom dengan tipe DATE, TIME, dan DATETIME, dan digunakan untuk mengurai string data menjadi objek tanggal. Nilai yang mungkin termasuk:

    ```
    - YYYY-MM-dd HH:mm:ss
    - YYYY-MM-dd HH:mm:ss.F
    - YYYY/MM/dd HH:mm:ss
    - YYYY/MM/dd HH:mm:ss.F
    - MM/dd/YYYY HH:mm:ss
    - MM/dd/YYYY HH:mm:ss.F
    - YYYYMMdd HH:mm:ss
    - YYYYMMdd HH:mm:ss.F
    ```
+ `TableColumnsTotal` — jumlah total kolom. Nomor ini harus sesuai dengan jumlah elemen dalam susunan `TableColumns`.

Jika Anda tidak menentukan sebaliknya, AWS DMS asumsikan `ColumnLength` itu nol.

**catatan**  
Dalam versi yang didukung AWS DMS, data sumber S3 juga dapat berisi kolom operasi opsional sebagai kolom pertama sebelum nilai `TableName` kolom. Kolom operasi ini mengidentifikasi operasi (`INSERT`) yang digunakan untuk memigrasikan data ke titik akhir target S3 selama beban penuh.   
Jika ada, nilai kolom ini adalah karakter awal dari operasi kata kunci `INSERT` (`I`). Jika ditentukan, kolom ini umumnya menunjukkan bahwa sumber S3 dibuat oleh DMS sebagai target S3 selama migrasi sebelumnya.   
Dalam versi DMS sebelum 3.4.2, kolom ini tidak ada dalam data sumber S3 yang dibuat dari beban penuh DMS sebelumnya. Menambahkan kolom ini ke data target S3 memungkinkan format semua baris ditulis ke target S3 agar konsisten apakah mereka ditulis selama beban penuh atau selama beban CDC. Untuk informasi lebih lanjut tentang pilihan format S3 target data, lihat [Menunjukkan operasi sumber DB dalam data S3 bermigrasi](CHAP_Target.S3.md#CHAP_Target.S3.Configuring.InsertOps).

Untuk kolom dari jenis NUMERIC, tentukan presisi dan skala. *Presisi* adalah jumlah digit dalam angka, dan *skala* adalah jumlah digit di sebelah kanan titik desimal. Anda menggunakan unsur-unsur `ColumnPrecision` dan `ColumnScale` untuk ini, seperti yang ditunjukkan berikut.

```
...
    {
        "ColumnName": "HourlyRate",
        "ColumnType": "NUMERIC",
        "ColumnPrecision": "5"
        "ColumnScale": "2"
    }
...
```

Untuk kolom tipe DATETIME dengan data yang berisi detik pecahan, tentukan skala. *Skala* adalah jumlah digit untuk detik pecahan, dan dapat berkisar dari 0 hingga 9. Anda menggunakan `ColumnScale` elemen untuk ini, seperti yang ditunjukkan berikut.

```
...
{
      "ColumnName": "HireDate",
      "ColumnType": "DATETIME",
      "ColumnScale": "3"
}
...
```

Jika Anda tidak menentukan sebaliknya, AWS DMS asumsi `ColumnScale` adalah nol dan memotong detik pecahan.

## Menggunakan CDC dengan Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.CDC"></a>

Setelah AWS DMS melakukan pemuatan data penuh, secara opsional dapat mereplikasi perubahan data ke titik akhir target. Untuk melakukan ini, Anda meng-upload file change data capture (file CDC) ke bucket Amazon S3 Anda. AWS DMS membaca file CDC ini saat Anda mengunggahnya, dan kemudian menerapkan perubahan pada titik akhir target. 

File CDC dinamakan sebagai berikut:

```
CDC00001.csv
CDC00002.csv
CDC00003.csv
...
```

**catatan**  
Untuk mereplikasi file CDC di folder data perubahan unggahlah file-file ini secara berhasil dalam urutan leksikal (sekuensial). Misalnya, unggah CDC00002 file.csv sebelum berkas.csv. CDC00003 Jika tidak, CDC00002 .csv dilewati dan tidak direplikasi jika Anda memuatnya setelah .csv. CDC00003 Tetapi CDC00004 file.csv berhasil direplikasi jika dimuat setelah.csv. CDC00003

Untuk menunjukkan di mana AWS DMS dapat menemukan file, tentukan `cdcPath` parameter. Melanjutkan contoh sebelumnya, jika Anda mengatur `cdcPath` menjadi `changedata`, maka AWS DMS membaca file CDC di jalur berikut.

```
s3://amzn-s3-demo-bucket/changedata
```

Jika Anda mengatur `cdcPath` ke `changedata` dan `bucketFolder` ke`myFolder`, maka AWS DMS membaca file CDC di jalur berikut.

```
s3://amzn-s3-demo-bucket/myFolder/changedata
```

Catatan dalam file CDC diformat sebagai berikut:
+ Operasi – perubahan yang akan dilakukan:`INSERT` atau `I`, `UPDATE` atau `U`, atau `DELETE` atau `D`. Nilai-nilai kata kunci dan karakter ini bersifat tidak peka huruf kapital.
**catatan**  
Dalam AWS DMS versi yang didukung, AWS DMS dapat mengidentifikasi operasi untuk melakukan untuk setiap catatan beban dalam dua cara. AWS DMS dapat melakukan ini dari nilai kata kunci catatan (misalnya,`INSERT`) atau dari karakter awal kata kunci (misalnya,`I`). Dalam versi sebelumnya, AWS DMS mengenali operasi beban hanya dari nilai kata kunci penuh.   
Dalam versi sebelumnya AWS DMS, nilai kata kunci lengkap ditulis untuk mencatat data CDC. Selain itu, versi sebelumnya menulis nilai operasi untuk setiap target S3 hanya menggunakan kata kunci awal.   
Mengenali kedua format memungkinkan AWS DMS untuk menangani operasi terlepas dari bagaimana kolom operasi ditulis untuk membuat data sumber S3. Pendekatan ini mendukung penggunaan data target S3 sebagai sumber untuk migrasi berikutnya. Dengan pendekatan ini, Anda tidak perlu mengubah format nilai awal kata kunci yang muncul di kolom operasi sumber S3 berikutnya.
+ Tabel nama - nama tabel sumber.
+ Skema nama - nama skema sumber.
+ Data - kolom satu atau lebih yang mewakili data yang akan diubah.

Berikut ini adalah contoh file CDC untuk tabel bernama `employee`.

```
INSERT,employee,hr,101,Smith,Bob,2014-06-04,New York
UPDATE,employee,hr,101,Smith,Bob,2015-10-08,Los Angeles
UPDATE,employee,hr,101,Smith,Bob,2017-03-13,Dallas
DELETE,employee,hr,101,Smith,Bob,2017-03-13,Dallas
```

## Prasyarat saat menggunakan Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.Prerequisites"></a>

Untuk menggunakan Amazon S3 sebagai sumber AWS DMS, bucket S3 sumber Anda harus berada di AWS Wilayah yang sama dengan instance replikasi DMS yang memigrasikan data Anda. Selain itu, akun AWS yang Anda gunakan untuk migrasi harus memiliki akses baca ke bucket sumber. Untuk AWS DMS versi 3.4.7 dan yang lebih tinggi, DMS harus mengakses bucket sumber melalui titik akhir VPC atau rute umum. Untuk informasi tentang titik akhir VPC, lihat. [Mengkonfigurasi titik akhir VPC untuk AWS DMS](CHAP_VPC_Endpoints.md)

Peran AWS Identity and Access Management (IAM) yang ditetapkan ke akun pengguna yang digunakan untuk membuat tugas migrasi harus memiliki kumpulan izin berikut.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
       {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket*/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket*"
            ]
        }
    ]
}
```

------

Peran AWS Identity and Access Management (IAM) yang ditetapkan ke akun pengguna yang digunakan untuk membuat tugas migrasi harus memiliki kumpulan izin berikut jika pembuatan versi diaktifkan di bucket Amazon S3.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
       {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket*/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket*"
            ]
        }
    ]
}
```

------

## Keterbatasan saat menggunakan Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.Limitations"></a>

Batasan berikut berlaku saat menggunakan Amazon S3 sebagai sumber:
+ Jangan aktifkan pembuatan versi untuk S3. Jika Anda memerlukan versi S3, gunakan kebijakan siklus hidup untuk menghapus versi lama secara aktif. Jika tidak, Anda mungkin mengalami kegagalan koneksi pengujian titik akhir karena batas waktu `list-object` panggilan S3. Untuk membuat kebijakan siklus hidup bucket S3, lihat [Mengelola siklus hidup](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html) penyimpanan. Untuk menghapus versi objek S3, lihat [Menghapus versi objek dari bucket berkemampuan versi](https://docs.aws.amazon.com/AmazonS3/latest/dev/DeletingObjectVersions.html).
+ Bucket S3 berkemampuan VPC (gateway VPC) didukung dalam versi 3.4.7 dan yang lebih tinggi.
+ MySQL mengkonversi `time` datatype ke. `string` **Untuk melihat nilai tipe `time` data di MySQL, tentukan kolom dalam tabel target `string` sebagai, dan atur pengaturan mode **persiapan tabel Target** tugas ke Truncate.**
+ AWS DMS menggunakan tipe `BYTE` data secara internal untuk data baik `BYTE` dan tipe `BYTES` data.
+ Titik akhir sumber S3 tidak mendukung fitur muat ulang tabel DMS.
+ AWS DMS tidak mendukung mode LOB Penuh dengan Amazon S3 sebagai Sumber.

Batasan berikut berlaku saat menggunakan file format Parket di Amazon S3 sebagai sumber:
+ Tanggal masuk`MMYYYYDD`, atau tidak `DDMMYYYY` didukung untuk fitur partisi tanggal Sumber Parket S3.

## Pengaturan titik akhir untuk Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.Configuring"></a>

Anda dapat menggunakan pengaturan titik akhir untuk mengonfigurasi basis data sumber Amazon S3 mirip dengan menggunakan atribut koneksi tambahan. Anda menentukan pengaturan saat Anda membuat titik akhir sumber menggunakan AWS DMS konsol, atau dengan menggunakan `create-endpoint` perintah di [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/dms/index.html), dengan sintaks `--s3-settings '{"EndpointSetting": "value", ...}'` JSON.

**catatan**  
AWS DMS default ke koneksi aman ke titik akhir Amazon S3 tanpa perlu menentukan mode atau sertifikat SSL.

Tabel berikut menunjukkan pengaturan titik akhir yang dapat Anda gunakan dengan Amazon S3 sebagai sumber.


| **Opsi** | **Deskripsi** | 
| --- | --- | 
| BucketFolder |  (Opsional) Nama folder dalam bucket S3. Jika atribut ini disediakan, file data sumber dan file CDC dibaca dari jalur `s3://amzn-s3-demo-bucket/bucketFolder/schemaName/tableName/` dan `s3://amzn-s3-demo-bucket/bucketFolder/` masing-masing. Jika atribut ini tidak ditentukan, maka jalur yang digunakan adalah `schemaName/tableName/`.  `'{"BucketFolder": "sourceData"}'`  | 
| BucketName |  Nama bucket S3. `'{"BucketName": "amzn-s3-demo-bucket"}'`  | 
| CdcPath | Lokasi file CDC. Atribut ini diperlukan jika tugas menangkap perubahan data; jika tidak, itu opsional. Jika CdcPath ada, maka AWS DMS membaca file CDC dari jalur ini dan mereplikasi perubahan data ke titik akhir target. Untuk informasi selengkapnya, lihat [Menggunakan CDC dengan Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.CDC). `'{"CdcPath": "changeData"}'`  | 
| CsvDelimiter |  Pembatas digunakan untuk memisahkan kolom dalam file sumber. Default adalah koma. Berikut contohnya. `'{"CsvDelimiter": ","}'`  | 
| CsvNullValue |  String yang ditentukan pengguna yang AWS DMS diperlakukan sebagai null saat membaca dari sumbernya. Default-nya adalah string kosong. Jika Anda tidak mengatur parameter ini, AWS DMS memperlakukan string kosong sebagai nilai null. Jika Anda mengatur parameter ini ke string seperti “\$1 N”, AWS DMS memperlakukan string ini sebagai nilai null, dan memperlakukan string kosong sebagai nilai string kosong.  | 
| CsvRowDelimiter |  Pembatas digunakan untuk memisahkan baris dalam file sumber. Default adalah newline (`\n`). `'{"CsvRowDelimiter": "\n"}'`  | 
| DataFormat |  Tetapkan nilai ini `Parquet` untuk membaca data dalam format Parket. `'{"DataFormat": "Parquet"}'`  | 
| IgnoreHeaderRows |  Ketika nilai ini diatur ke 1, AWS DMS mengabaikan header baris pertama dalam file.csv. Nilai 1 memungkinkan fitur tersebut, nilai 0 menonaktifkannya. Default adalah 0. `'{"IgnoreHeaderRows": 1}'`  | 
| Rfc4180 |  Ketika nilai ini diatur ke `true` atau`y`, setiap tanda kutip ganda utama harus diikuti oleh tanda kutip ganda akhir. Format ini sesuai dengan RFC 4180. Ketika nilai ini disetel ke `false` or`n`, string literal disalin ke target apa adanya. Dalam kasus ini, pembatas (baris atau kolom) menandakan akhir bidang. Dengan demikian, Anda tidak dapat menggunakan pembatas sebagai bagian dari string, karena pembatas menandakan akhir nilai. Nilai default-nya `true`. Nilai yang valid: `true`, `false`, `y`, `n` `'{"Rfc4180": false}'`  | 

## Jenis data sumber untuk Amazon S3
<a name="CHAP_Source.S3.DataTypes"></a>

Migrasi data yang menggunakan Amazon S3 sebagai sumber AWS DMS kebutuhan untuk memetakan data dari Amazon S3 AWS DMS ke tipe data. Untuk informasi selengkapnya, lihat [Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef).

Untuk informasi tentang cara melihat jenis data yang dipetakan dalam target, lihat bagian titik akhir target yang Anda gunakan.

Untuk informasi tambahan tentang tipe AWS DMS data, lihat[Tipe data untuk AWS Database Migration Service](CHAP_Reference.DataTypes.md).

Tipe AWS DMS data berikut digunakan dengan Amazon S3 sebagai sumber:
+ BYTE - Membutuhkan `ColumnLength`. Untuk informasi selengkapnya, lihat [Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef).
+ DATE
+ TIME
+ DATETIME - Untuk informasi selengkapnya dan contoh, lihat contoh tipe DATETIME di. [Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef)
+ INT1
+ INT2
+ INT4
+ INT8
+ NUMERIK — Membutuhkan `ColumnPrecision` dan`ColumnScale`. AWS DMS mendukung nilai maksimum berikut:
  + **ColumnPrecision: 38**
  + **ColumnScale: 31**

  Untuk informasi selengkapnya dan contoh, lihat contoh tipe NUMERIK di[Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef).
+ REAL4
+ REAL8
+ STRING - Membutuhkan `ColumnLength`. Untuk informasi selengkapnya, lihat [Mendefinisikan tabel eksternal untuk Amazon S3 sebagai sumber AWS DMS](#CHAP_Source.S3.ExternalTableDef).
+ UINT1
+ UINT2
+ UINT4
+ UINT8
+ BLOB
+ CLOB
+ BOOLEAN

## Menggunakan file format Parket di Amazon S3 sebagai sumber AWS DMS
<a name="CHAP_Source.S3.Parquet"></a>

Di AWS DMS versi 3.5.3 dan yang lebih baru, Anda dapat menggunakan file format Parquet di bucket S3 sebagai sumber untuk replikasi Full-Load atau CDC. 

DMS hanya mendukung file format Parket sebagai sumber yang dihasilkan DMS dengan memigrasikan data ke titik akhir target S3. Nama file harus dalam format yang didukung, atau DMS tidak akan menyertakannya dalam migrasi.

Untuk file data sumber dalam format Parket, mereka harus dalam folder dan konvensi penamaan berikut.

```
schema/table1/LOAD00001.parquet
schema/table2/LOAD00002.parquet
schema/table2/LOAD00003.parquet
```

Untuk file data sumber untuk data CDC dalam format Parket, beri nama dan simpan menggunakan folder dan konvensi penamaan berikut.

```
schema/table/20230405-094615814.parquet
schema/table/20230405-094615853.parquet
schema/table/20230405-094615922.parquet
```

Untuk mengakses file dalam format Parket, atur pengaturan titik akhir berikut:
+ Atur `DataFormat` ke `Parquet`. 
+ Jangan mengatur `cdcPath` pengaturan. Pastikan Anda membuat file format Parket di folder skema/tabel yang ditentukan. 

*Untuk informasi selengkapnya tentang setelan untuk titik akhir S3, lihat [S3Settings](https://docs.aws.amazon.com/dms/latest/APIReference/API_S3Settings.html) di Referensi API.AWS Database Migration Service *

### Jenis data yang didukung untuk file format Parket
<a name="CHAP_Source.S3.Parquet.Datatypes"></a>

AWS DMS mendukung tipe data sumber dan target berikut saat memigrasi data dari file format Parket. Pastikan tabel target Anda memiliki kolom tipe data yang benar sebelum bermigrasi.


| Jenis data sumber | Jenis data target | 
| --- | --- | 
| BYTE | BINARY | 
| DATE | DATE32 | 
| TIME | TIME32 | 
| DATETIME | TIMESTAMP | 
| INT1 | INT8 | 
| INT2 | INT16 | 
| INT4 | INT32 | 
| INT8 | INT64 | 
| NUMERIC | DECIMAL | 
| REAL4 | FLOAT | 
| REAL8 | DOUBLE | 
| STRING | STRING | 
| UINT1 | UINT8 | 
| UINT2 | UINT16 | 
| UINT4 | UINT32 | 
| UINT8 | UINT | 
| WSTRING | STRING | 
| BLOB | BINARY | 
| NCLOB | STRING | 
| CLOB | STRING | 
| BOOLEAN | BOOL | 