

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Memulai dengan konsumsi streaming dari Amazon Kinesis Data Streams
<a name="materialized-view-streaming-ingestion-getting-started"></a>

Topik ini menjelaskan cara menggunakan data streaming dari Kinesis Data Streams menggunakan tampilan terwujud.

 Menyiapkan konsumsi streaming Amazon Redshift melibatkan pembuatan skema eksternal yang memetakan ke sumber data streaming dan membuat tampilan terwujud yang mereferensikan skema eksternal. Konsumsi streaming Amazon Redshift mendukung Kinesis Data Streams sebagai sumber. Dengan demikian, Anda harus memiliki sumber Kinesis Data Streams yang tersedia sebelum mengonfigurasi konsumsi streaming. Jika Anda tidak memiliki sumber, ikuti petunjuk dalam dokumentasi Kinesis di [Memulai Amazon Kinesis Data](https://docs.aws.amazon.com/streams/latest/dev/getting-started.html) Streams atau buat satu di konsol menggunakan instruksi [di Membuat](https://docs.aws.amazon.com/streams/latest/dev/how-do-i-create-a-stream.html) Stream melalui Konsol Manajemen. AWS 

 Penyerapan streaming Amazon Redshift menggunakan tampilan terwujud, yang diperbarui langsung dari aliran saat dijalankan. `REFRESH` Tampilan terwujud memetakan ke sumber data aliran. Anda dapat melakukan pemfilteran dan agregasi pada data aliran sebagai bagian dari definisi tampilan terwujud. Tampilan terwujud konsumsi streaming Anda (tampilan *dasar* yang terwujud) hanya dapat mereferensikan satu aliran, tetapi Anda dapat membuat tampilan terwujud tambahan yang bergabung dengan tampilan dasar yang terwujud dan dengan tampilan atau tabel terwujud lainnya. 

**catatan**  
*Penyerapan streaming dan Amazon Redshift* Tanpa Server - Langkah-langkah konfigurasi dalam topik ini berlaku baik untuk cluster Amazon Redshift yang disediakan dan Amazon Redshift Tanpa Server. Untuk informasi selengkapnya, lihat [Perilaku konsumsi streaming dan tipe data](materialized-view-streaming-ingestion.md#materialized-view-streaming-ingestion-limitations).

Dengan asumsi Anda memiliki aliran Kinesis Data Streams yang tersedia, langkah pertama adalah menentukan skema di Amazon Redshift dengan dan mereferensikan sumber daya Kinesis Data Streams. `CREATE EXTERNAL SCHEMA` Setelah itu, untuk mengakses data dalam aliran, tentukan `STREAM` dalam tampilan terwujud. Anda dapat menyimpan catatan aliran dalam `SUPER` format semi-terstruktur, atau menentukan skema yang menghasilkan data yang dikonversi ke tipe data Redshift. Saat Anda menanyakan tampilan terwujud, catatan yang dikembalikan adalah point-in-time tampilan aliran. 

1. Buat peran IAM dengan kebijakan kepercayaan yang memungkinkan klaster Amazon Redshift atau grup kerja Tanpa Server Amazon Redshift Anda untuk mengambil peran tersebut. Untuk informasi tentang cara mengonfigurasi kebijakan kepercayaan untuk peran IAM, lihat [Mengotorisasi Amazon Redshift untuk mengakses layanan AWS lain](https://docs.aws.amazon.com/redshift/latest/mgmt/authorizing-redshift-service.html) atas nama Anda. Setelah dibuat, peran harus memiliki kebijakan IAM berikut, yang memberikan izin untuk komunikasi dengan aliran data Amazon Kinesis. 

   **Kebijakan IAM untuk aliran tidak terenkripsi dari Kinesis Data Streams**

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "ReadStream",
               "Effect": "Allow",
               "Action": [
                   "kinesis:DescribeStreamSummary",
                   "kinesis:GetShardIterator",
                   "kinesis:GetRecords",
                   "kinesis:ListShards",
                   "kinesis:DescribeStream"
               ],
               "Resource": "arn:aws:kinesis:*:111122223333:stream/*"
           },
           {
               "Sid": "ListStream",
               "Effect": "Allow",
               "Action": "kinesis:ListStreams",
               "Resource": "*"
           }
       ]
   }
   ```

------

   **Kebijakan IAM untuk aliran terenkripsi dari Kinesis Data Streams**

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "ReadStream",
               "Effect": "Allow",
               "Action": [
                   "kinesis:DescribeStreamSummary",
                   "kinesis:GetShardIterator",
                   "kinesis:GetRecords",
                   "kinesis:ListShards",
                   "kinesis:DescribeStream"
               ],
               "Resource": "arn:aws:kinesis:*:111122223333:stream/*"
           },
           {
               "Sid": "DecryptStream",
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
           },
           {
               "Sid": "ListStream",
               "Effect": "Allow",
               "Action": "kinesis:ListStreams",
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Periksa VPC Anda dan verifikasi bahwa klaster Amazon Redshift atau Amazon Redshift Serverless memiliki rute untuk mencapai titik akhir Kinesis Data Streams melalui internet menggunakan gateway NAT atau gateway internet. Jika Anda ingin lalu lintas antara Redshift dan Kinesis Data Streams tetap berada dalam jaringan, pertimbangkan untuk menggunakan Titik Akhir AWS VPC Antarmuka Kinesis. Untuk informasi selengkapnya, lihat [Menggunakan Amazon Kinesis Data Streams Kinesis Data Streams dengan Titik Akhir VPC Antarmuka](https://docs.aws.amazon.com/streams/latest/dev/vpc.html).

1. Di Amazon Redshift, buat skema eksternal untuk memetakan data dari Kinesis ke skema.

   ```
   CREATE EXTERNAL SCHEMA kds
   FROM KINESIS
   IAM_ROLE { default | 'iam-role-arn' };
   ```

    Penyerapan streaming untuk Kinesis Data Streams tidak memerlukan jenis otentikasi. Ini menggunakan peran IAM yang didefinisikan dalam `CREATE EXTERNAL SCHEMA` pernyataan untuk membuat permintaan Kinesis Data Streams. 

    Opsional: Gunakan kata kunci REGION untuk menentukan wilayah tempat aliran MSK Amazon Kinesis Data Streams atau Amazon berada. 

   ```
   CREATE EXTERNAL SCHEMA kds
   FROM KINESIS
   REGION 'us-west-2'
   IAM_ROLE { default | 'iam-role-arn' };
   ```

   Dalam sampel ini, wilayah menentukan lokasi aliran sumber. IAM\$1ROLE adalah contoh.

1. Buat tampilan terwujud untuk menggunakan data aliran. Dengan pernyataan seperti berikut ini, jika catatan tidak dapat diuraikan, itu menyebabkan kesalahan. Gunakan perintah seperti ini jika Anda tidak ingin catatan kesalahan dilewati.

   ```
   CREATE MATERIALIZED VIEW my_view AUTO REFRESH YES AS
   SELECT *
   FROM kds.my_stream_name;
   ```

   Nama aliran Kinesis peka huruf besar/kecil dan dapat berisi huruf besar dan kecil. Untuk menyerap dari aliran dengan nama huruf besar, Anda dapat mengatur konfigurasi `enable_case_sensitive_identifier` ke `true` tingkat database. Untuk informasi selengkapnya, lihat [Nama dan pengenal dan [enable\$1case\$1sensitive\$1identifier](https://docs.aws.amazon.com/redshift/latest/dg/r_enable_case_sensitive_identifier.html)](https://docs.aws.amazon.com/redshift/latest/dg/r_names.html).

   Untuk mengaktifkan penyegaran otomatis, gunakan`AUTO REFRESH YES`. Perilaku default adalah penyegaran manual. Catatan ketika Anda menggunakan CAN\$1JSON\$1PARSE, ada kemungkinan bahwa rekaman yang tidak dapat diuraikan dilewati.

   Kolom metadata meliputi yang berikut:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/materialized-view-streaming-ingestion-getting-started.html)

   Penting untuk dicatat jika Anda memiliki logika bisnis dalam definisi tampilan terwujud bahwa kesalahan logika bisnis dapat menyebabkan konsumsi streaming diblokir dalam beberapa kasus. Ini mungkin menyebabkan Anda harus menjatuhkan dan membuat ulang tampilan yang terwujud. Untuk menghindari hal ini, kami sarankan Anda menjaga logika Anda sesederhana mungkin dan melakukan sebagian besar pemeriksaan logika bisnis Anda pada data setelah tertelan.

1. Segarkan tampilan, yang memanggil Redshift untuk membaca dari aliran dan memuat data ke tampilan terwujud.

   ```
   REFRESH MATERIALIZED VIEW my_view;
   ```

1. Data kueri dalam tampilan terwujud.

   ```
   select * from my_view;
   ```