Anda dapat mengonversi topik impor menjadi topik standar atau sebaliknya, topik standar menjadi topik impor.
Mengonversi topik impor menjadi topik standar
Untuk mengonversi topik impor menjadi topik standar, hapus setelan penyerapan. Lakukan langkah-langkah berikut:
Konsol
Di konsol Google Cloud, buka halaman Topics.
Klik topik impor.
Di halaman detail topik, klik Edit.
Hapus centang pada opsi Aktifkan penyerapan.
Klik Perbarui.
gcloud
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
Jalankan perintah
gcloud pubsub topics update
:gcloud pubsub topics update TOPIC_ID \ --clear-ingestion-data-source-settings
Ganti TOPIC_ID dengan ID topik.
Mengonversi topik standar ke topik impor Amazon Kinesis Data Streams
Untuk mengonversi topik standar ke topik impor Amazon Kinesis Data Streams, periksa terlebih dahulu apakah Anda memenuhi semua prasyarat.
Konsol
-
Di konsol Google Cloud, buka halaman Topics.
-
Klik topik yang ingin Anda konversi menjadi topik impor.
-
Di halaman detail topik, klik Edit.
-
Pilih opsi Aktifkan penyerapan.
-
Untuk sumber penyerapan, pilih Amazon Kinesis Data Streams.
-
Masukkan detail berikut:
-
ARN Aliran Data Kinesis: ARN untuk Aliran Data Kinesis yang Anda rencanakan untuk diserap ke Pub/Sub. Format ARN adalah sebagai berikut:
arn:${Partition}:kinesis:${Region}:${Account}:stream/${StreamName}
. -
ARN Konsumen Kinesis: ARN resource konsumen yang terdaftar ke AWS Kinesis Data Stream. Format ARN adalah sebagai berikut:
arn:${Partition}:kinesis:${Region}:${Account}:${StreamType}/${StreamName}/consumer/${ConsumerName}:${ConsumerCreationTimpstamp}
. -
AWS Role ARN: ARN peran AWS. Format ARN peran adalah sebagai berikut:
arn:aws:iam:${Account}:role/${RoleName}
. -
Akun layanan: Akun layanan yang Anda buat di Membuat akun layanan di Google Cloud.
-
-
Klik Perbarui.
gcloud
-
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
Jalankan perintah
gcloud pubsub topics update
dengan semua flag yang disebutkan dalam contoh berikut:gcloud pubsub topics update TOPIC_ID \ --kinesis-ingestion-stream-arn KINESIS_STREAM_ARN\ --kinesis-ingestion-consumer-arn KINESIS_CONSUMER_ARN\ --kinesis-ingestion-role-arn KINESIS_ROLE_ARN\ --kinesis-ingestion-service-account PUBSUB_SERVICE_ACCOUNT
Ganti kode berikut:
-
TOPIC_ID adalah ID atau nama topik. Kolom ini tidak dapat diperbarui.
-
KINESIS_STREAM_ARN adalah ARN untuk Kinesis Data Streams yang ingin Anda serap ke Pub/Sub. Format ARN adalah sebagai berikut:
arn:${Partition}:kinesis:${Region}:${Account}:stream/${StreamName}
. -
KINESIS_CONSUMER_ARN adalah ARN resource konsumen yang terdaftar ke AWS Kinesis Data Streams. Format ARN adalah sebagai berikut:
arn:${Partition}:kinesis:${Region}:${Account}:${StreamType}/${StreamName}/consumer/${ConsumerName}:${ConsumerCreationTimpstamp}
. -
KINESIS_ROLE_ARN adalah ARN peran AWS. Format ARN peran adalah sebagai berikut:
arn:aws:iam:${Account}:role/${RoleName}
. -
PUBSUB_SERVICE_ACCOUNT adalah akun layanan yang Anda buat di Membuat akun layanan di Google Cloud.
-
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Go Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Java Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Python Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C++
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C++ di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API C++ Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js (TypeScript)
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Node.js di panduan memulai Pub/Sub menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi API Node.js Pub/Sub.
Untuk melakukan autentikasi ke Pub/Sub, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Untuk mengetahui informasi selengkapnya tentang ARN, lihat Amazon Resource Name (ARN) dan ID IAM.
Mengonversi topik standar menjadi topik impor Cloud Storage
Untuk mengonversi topik standar menjadi topik impor Cloud Storage, periksa terlebih dahulu apakah Anda memenuhi semua prasyarat.
Konsol
-
Di konsol Google Cloud, buka halaman Topics.
-
Klik topik yang ingin Anda konversi menjadi topik impor Cloud Storage.
-
Di halaman detail topik, klik Edit.
-
Pilih opsi Aktifkan penyerapan.
-
Untuk sumber transfer, pilih Google Cloud Storage.
-
Untuk bucket Cloud Storage, klik Browse.
Halaman Select bucket akan terbuka. Pilih salah satu opsi berikut:
-
Pilih bucket yang ada dari project yang sesuai.
-
Klik ikon buat dan ikuti petunjuk di layar untuk membuat bucket baru. Setelah membuat bucket, pilih bucket untuk topik impor Cloud Storage.
-
-
Saat Anda menentukan bucket, Pub/Sub akan memeriksa izin yang sesuai di bucket untuk akun layanan Pub/Sub. Jika ada masalah izin, Anda akan melihat pesan error terkait izin.
Jika Anda mengalami masalah izin, klik Set permissions. Untuk informasi selengkapnya, lihat Memberikan izin Cloud Storage ke akun layanan Pub/Sub.
-
Untuk Object format, pilih Text, Avro, atau Pub/Sub Avro.
Jika memilih Text, Anda dapat menentukan Delimiter secara opsional untuk memisahkan objek menjadi pesan.
Untuk mengetahui informasi selengkapnya tentang opsi ini, lihat Format input.
- Opsional. Anda dapat menentukan Waktu pembuatan objek minimum untuk
topik Anda. Jika ditetapkan, hanya objek yang dibuat setelah waktu pembuatan objek minimum yang akan ditransfer.
Untuk informasi selengkapnya, lihat Waktu pembuatan objek minimum.
- Anda harus menentukan Pola glob. Untuk menyerap semua objek dalam bucket,
gunakan
**
sebagai pola glob. Hanya objek yang cocok dengan pola yang diberikan yang akan diserap.Untuk mengetahui informasi selengkapnya, lihat Mencocokkan pola glob.
- Pertahankan setelan default lainnya.
- Klik Perbarui topik.
gcloud
-
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
Agar tidak kehilangan setelan untuk topik impor, pastikan untuk menyertakan semuanya setiap kali Anda memperbarui topik. Jika Anda mengabaikan sesuatu, Pub/Sub akan mereset setelan ke nilai default aslinya.
Jalankan perintah
gcloud pubsub topics update
dengan semua flag yang disebutkan dalam contoh berikut:gcloud pubsub topics update TOPIC_ID \ --cloud-storage-ingestion-bucket=BUCKET_NAME\ --cloud-storage-ingestion-input-format=INPUT_FORMAT\ --cloud-storage-ingestion-text-delimiter=TEXT_DELIMITER\ --cloud-storage-ingestion-minimum-object-create-time=MINIMUM_OBJECT_CREATE_TIME\ --cloud-storage-ingestion-match-glob=MATCH_GLOB
Ganti kode berikut:
-
TOPIC_ID adalah ID atau nama topik. Kolom ini tidak dapat diperbarui.
-
BUCKET_NAME: Menentukan nama bucket yang ada. Contoh,
prod_bucket
. Nama bucket tidak boleh menyertakan project ID. Untuk membuat bucket, lihat Membuat bucket. -
INPUT_FORMAT: Menentukan format objek yang ditransfer. Ini dapat berupa
text
,avro
, ataupubsub_avro
. Untuk mengetahui informasi selengkapnya tentang opsi ini, lihat Format input. -
TEXT_DELIMITER: Menentukan pemisah untuk memisahkan objek teks menjadi pesan Pub/Sub. Kolom ini harus berupa satu karakter dan hanya boleh ditetapkan jika
INPUT_FORMAT
adalahtext
. Nilai defaultnya adalah karakter baris baru (\n
).Saat menggunakan gcloud CLI untuk menentukan pemisah, perhatikan dengan cermat penanganan karakter khusus seperti baris baru
\n
. Gunakan format'\n'
untuk memastikan pemisah ditafsirkan dengan benar. Cukup menggunakan\n
tanpa tanda kutip atau hasil escape akan menghasilkan pemisah"n"
. -
MINIMUM_OBJECT_CREATE_TIME: Menentukan waktu minimum saat objek dibuat agar dapat diserap. Format ini harus dalam UTC dalam format
YYYY-MM-DDThh:mm:ssZ
. Misalnya,2024-10-14T08:30:30Z
.Tanggal apa pun, baik masa lalu maupun masa mendatang, dari
0001-01-01T00:00:00Z
hingga9999-12-31T23:59:59Z
inklusif, valid. -
MATCH_GLOB: Menentukan pola glob yang akan dicocokkan agar objek dapat ditransfer. Saat Anda menggunakan gcloud CLI, glob pencocokan dengan karakter
*
harus memiliki karakter*
yang diformat sebagai di-escape dalam bentuk\*\*.txt
atau seluruh glob pencocokan harus dalam tanda kutip"**.txt"
atau'**.txt'
. Untuk mengetahui informasi tentang sintaksis yang didukung untuk pola glob, lihat dokumentasi Cloud Storage.
-