Berbagi streaming dengan Pub/Sub

Anda dapat membagikan topik Pub/Sub melalui Analytics Hub untuk menyeleksi dan mendistribusikan library data streaming di beberapa batasan organisasi internal dan eksternal. Data streaming real-time dibagikan menggunakan bursa dan listingan Analytics Hub, sehingga Anda dapat mengategorikan dan mengelompokkan kumpulan besar topik Pub/Sub secara logis dan menyediakan akses dalam skala besar.

Anda dapat membagikan data streaming untuk melakukan hal berikut:

  • Jasa keuangan:
    • Bagikan harga instrumen, penawaran harga, dan pesanan yang berubah dengan cepat secara real time
    • Mendeteksi pencucian uang dan penipuan pembayaran
    • Mendukung komputasi risiko perdagangan
  • Retail dan barang konsumsi (CPG):
    • Membantu toko mengelola inventaris secara real time
    • Personalisasikan pemasaran dan dukungan pelanggan
    • Menyesuaikan harga secara dinamis
    • Pantau saluran media sosial
    • Mengoptimalkan tata letak toko fisik
  • Layanan Kesehatan:
    • Mendukung algoritma prediktif untuk memantau pasien dan menganalisis risiko secara real time
    • Memantau data vital dengan perangkat medis wearable
    • Akuisisi, penataan, penyimpanan, dan pemrosesan data secara otomatis dari pasien, tenaga kesehatan, dan administrasi fasilitas
  • Telekomunikasi:
    • Meninjau kondisi jaringan dan memprediksi kegagalan
    • Menemukan pola perilaku pengguna untuk menemukan lokasi perangkat dan antena dengan lebih baik

Peran

Peran untuk berbagi topik Pub/Sub setara dengan berbagi set data BigQuery:

Arsitektur

Diagram berikut menjelaskan cara penerbit dan pelanggan resource Pub/Sub berinteraksi dengan Analytics Hub:

Interaksi antara Analytics Hub Publisher dan Analytics Hub.
Gambar 1. Alur kerja Pelanggan dan Penayang Analytics Hub dengan topik Pub/Sub.

Topik bersama

Topik bersama adalah unit untuk membagikan topik Pub/Sub di Analytics Hub. Sebagai penerbit, Anda membuat atau menggunakan topik Pub/Sub yang sudah ada untuk mendistribusikan data pesan kepada pelanggan. Analytics Hub tidak mereplikasi topik Pub/Sub sumber.

Listingan

Listingan dibuat saat penayang menambahkan topik bersama ke bursa. Hasil ini berisi referensi ke topik yang dibagikan.

Bursa

Pertukaran adalah pengelompokan listingan logis yang merujuk ke topik bersama.

Langganan Pub/Sub tertaut

Saat berlangganan listingan dengan topik bersama, langganan Pub/Sub tertaut akan dibuat di project pelanggan. Langganan Pub/Sub juga ditampilkan dalam project Penayang sebagai langganan Pub/Sub dan langganan Listingan Analytics Hub.

Batasan

Berbagi streaming dengan Pub/Sub memiliki batasan berikut:

  • Topik bersama dapat memiliki maksimal 10.000 langganan Pub/Sub. Batas ini mencakup langganan Pub/Sub tertaut dan langganan Pub/Sub yang dibuat di luar Analytics Hub, misalnya, langganan yang dibuat langsung dari Pub/Sub.
  • Topik bersama diindeks di Data Catalog, tetapi Anda tidak dapat memfilter secara khusus untuk jenis resource-nya.
  • Metrik penggunaan tidak dicatat untuk langganan Pub/Sub tertaut di Analytics Hub. Anda dapat melihat metrik penggunaan di Pub/Sub.

Mengaktifkan Analytics Hub API

Untuk mengaktifkan Analytics Hub API, lakukan tindakan berikut:

Konsol

Buka library API dan aktifkan Analytics Hub API untuk project Google Cloud Anda.

Mengaktifkan Analytics Hub API

gcloud

Jalankan perintah gcloud services enable:

gcloud services enable analyticshub.googleapis.com

Mengaktifkan Pub/Sub API

Buka library API dan aktifkan Pub/Sub API untuk project Google Cloud Anda.

Mengaktifkan Pub/Sub API

Alur kerja penayang

Sebagai penayang Analytics Hub, Anda dapat melakukan hal berikut:

  • Tambahkan topik bersama ke pertukaran dengan membuat listingan
  • Memperbarui listingan
  • Menghapus listingan
  • Membagikan listingan
  • Mengelola langganan untuk listingan Anda
  • Menghapus subscriber dari listingan

Izin penayang tambahan

Untuk melakukan tugas penayang, Anda harus memiliki peran Analytics Hub Publisher (roles/analyticshub.publisher) di bursa atau listingan. Untuk melihat semua pertukaran data di seluruh project di organisasi yang dapat Anda akses, Anda harus memiliki izin resourcemanager.organizations.get.

Selain itu, Anda memerlukan izin pubsub.topics.setIamPolicy pada topik Pub/Sub yang ingin dicantumkan. Untuk membagikan topik dengan skema yang terlampir, Anda harus memberi pelanggan Analytics Hub izin pubsub.schemas.get pada skema yang terlampir ke topik. Hal ini memungkinkan Pelanggan Analytics Hub mengurai pesan dengan benar dari langganan Pub/Sub.

Buat listingan (untuk menambahkan topik bersama)

Untuk menambahkan topik bersama ke listingan, pilih salah satu opsi berikut:

Konsol

  1. Buka halaman Analytics Hub.

    Buka Analytics Hub

    Akan muncul halaman yang menampilkan daftar semua pertukaran data yang dapat Anda akses.

  2. Klik nama pertukaran data tempat Anda ingin membuat listingan.

  3. Klik Buat listingan.

  4. Di halaman Buat listingan, pilih "Pub/Sub Topic" di drop-down Jenis resource.

  5. Pilih topik Pub/Sub yang ada di drop-down Topik bersama, atau klik Buat topik.

  6. Di halaman Detail listingan, di Nama tampilan, masukkan nama listingan.

  7. Masukkan detail opsional berikut:

    • Kategori: pilih hingga dua kategori yang paling mewakili listingan Anda. Pelanggan dapat memfilter listingan berdasarkan kategori ini.

    • Afinitas data: region yang digunakan oleh penayang untuk memublikasikan data. Informasi ini berguna bagi pelanggan untuk meminimalkan atau menghindari biaya traffic keluar jaringan Pub/Sub dengan membaca data dari region yang sama. Untuk mengetahui informasi selengkapnya tentang biaya traffic keluar, lihat Biaya transfer data.

    • Ikon: ikon untuk listingan Anda. Format file PNG dan JPEG didukung. Ikon harus memiliki ukuran file kurang dari 512 KiB dan dimensi tidak lebih dari 512 x 512 piksel.

    • Deskripsi: deskripsi singkat tentang listingan Anda. Pelanggan dapat menelusuri listingan berdasarkan deskripsi.

    • Visibilitas Publik: memungkinkan visibilitas publik listingan Anda di katalog Analytics Hub. Anda juga harus menetapkan izin untuk listingan. Klik Tindakan bursa dan Tetapkan izin. Beri allUsers atau allAuthenticatedusers peran Analytics Hub Viewer. Klik Izinkan Akses Publik.

    • Dokumentasi > Markdown: informasi tambahan seperti link ke dokumentasi yang relevan dan informasi tambahan yang dapat membantu pelanggan untuk menggunakan topik Anda.

  8. Di halaman Informasi kontak listingan, masukkan detail opsional berikut:

    • Kontak utama: masukkan email atau URL kontak utama untuk listingan.

    • Minta kontak akses: masukkan email atau URL formulir permintaan agar pelanggan dapat menghubungi Anda.

    • Provider: perluas bagian Penyedia dan tentukan detail di kolom berikut:

      • Nama penyedia: nama penyedia topik.
      • Kontak utama penyedia: email atau URL kontak utama penyedia topik.

      Pelanggan dapat memfilter listingan berdasarkan penyedia data.

    • Publisher: perluas bagian Penayang dan tentukan detail di kolom berikut:

      • Nama penayang: nama penayang yang membuat listingan.
      • Kontak utama penerbit: email atau URL kontak utama penerbit topik.
  9. Tinjau halaman Pratinjau listingan.

  10. Klik Publikasikan.

API

Gunakan metode projects.locations.dataExchanges.listings.create .

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings?listingId=LISTING_ID

Ganti kode berikut:

  • PROJECT_ID: project ID yang berisi pertukaran data tempat Anda ingin membuat listingan.
  • LOCATION: lokasi untuk pertukaran data Anda. Untuk mengetahui informasi selengkapnya tentang lokasi yang mendukung Analytics Hub, lihat Region yang didukung.
  • DATAEXCHANGE_ID: ID pertukaran data.
  • LISTING_ID: ID listingan.

Dalam isi permintaan, berikan detail listingan. Jika permintaan berhasil, isi respons akan berisi detail listingan.

Untuk mengetahui informasi selengkapnya tentang tugas yang dapat Anda lakukan di listingan menggunakan API, lihat metode projects.locations.dataExchanges.listings.

Memperbarui listingan

Untuk memperbarui listingan, pilih salah satu opsi berikut:

Konsol

  1. Buka halaman Analytics Hub.

    Buka Analytics Hub

  2. Klik nama pertukaran data yang berisi listingan.

  3. Klik listingan yang ingin diperbarui.

  4. Klik Edit listingan.

  5. Mengubah nilai di kolom. Anda dapat mengubah semua nilai kecuali topik listingan bersama.

  6. Untuk menyimpan perubahan, klik Publikasikan.

API

Gunakan metode projects.locations.dataExchanges.listings.patch.

PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID?updateMask=UPDATEMASK

Ganti kode berikut:

  • PROJECT_ID: project ID yang berisi pertukaran data tempat Anda ingin membuat listingan.
  • LOCATION: lokasi untuk pertukaran data Anda. Untuk mengetahui informasi selengkapnya tentang lokasi yang mendukung Analytics Hub, lihat Region yang didukung.
  • DATAEXCHANGE_ID: ID pertukaran data.
  • LISTING_ID: ID listingan.
  • UPDATEMASK: daftar kolom yang ingin Anda perbarui. Untuk memperbarui beberapa nilai, gunakan daftar yang dipisahkan koma.

Dalam isi permintaan, tentukan nilai yang diperbarui.

Untuk mengetahui informasi selengkapnya tentang tugas yang dapat Anda lakukan di listingan menggunakan API, lihat metode projects.locations.dataExchanges.listings.

Menghapus listingan

Listingan dengan topik Pub/Sub bersama tidak dapat dihapus dengan langganan aktif. Cabut semua langganan aktif sebelum mencoba menghapus listingan topik yang dibagikan. Setelah listingan dihapus, Anda tidak dapat mengurungkannya. Untuk menghapus listingan, pilih salah satu opsi berikut:

Konsol

  1. Buka halaman Analytics Hub.

    Buka Analytics Hub

  2. Klik nama pertukaran data yang berisi listingan.

  3. Klik listingan yang ingin dihapus.

  4. Klik Delete.

  5. Pada dialog Delete listingan?, konfirmasi penghapusan dengan mengetik delete.

  6. Klik Delete.

API

Gunakan metode projects.locations.dataExchanges.listings.delete.

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID

Ganti kode berikut:

  • PROJECT_ID: project ID yang berisi pertukaran data tempat Anda ingin membuat listingan.
  • LOCATION: lokasi untuk pertukaran data Anda. Untuk mengetahui informasi selengkapnya tentang lokasi yang mendukung Analytics Hub, lihat Region yang didukung.
  • DATAEXCHANGE_ID: ID pertukaran data.
  • LISTING_ID: ID listingan.

Untuk mengetahui informasi selengkapnya tentang tugas yang dapat Anda lakukan di listingan menggunakan API, lihat metode projects.locations.dataExchanges.listings.

Membagikan listingan

Jika ingin memberi pengguna akses ke listingan pribadi, Anda harus menetapkan kebijakan IAM untuk individu atau grup untuk listingan tersebut. Untuk listingan komersial, pertukaran data Anda harus bersifat publik. Listingan di pertukaran data publik akan muncul di Analytics Hub untuk semua pengguna Google Cloud (allAuthenticatedUsers). Agar pengguna dapat meminta akses ke listingan komersial, Anda harus memberikan peran Analytics Hub Viewer kepada pengguna.

Untuk memberi pengguna akses untuk melihat atau berlangganan listingan Anda, lakukan langkah-langkah berikut:

  1. Buka halaman Analytics Hub.

    Buka Analytics Hub

  2. Klik nama pertukaran data yang berisi listingan.

  3. Klik listingan ke mana Anda ingin menambahkan pelanggan.

  4. Klik Set permissions.

  5. Untuk menambahkan akun utama, klik Add principal.

  6. Di kolom New principals, tambahkan detail berikut berdasarkan jenis listingan:

    • Untuk listingan pribadi, masukkan email identitas yang ingin Anda beri akses.
    • Untuk listingan publik, tambahkan allAuthenticatedUsers.
  7. Untuk Pilih peran, arahkan kursor ke Analytics Hub, lalu pilih salah satu peran berikut berdasarkan jenis listingan:

  8. Klik Save.

Untuk informasi selengkapnya, lihat peran Analytics Hub Subscriber dan Viewer.

Kelola langganan

Untuk mengizinkan pengguna berlangganan listingan dengan topik bersama, beri mereka peran Pelanggan Analytics Hub (roles/analyticshub.subscriber) dan Pemilik Langganan Analytics Hub (roles/analyticshub.subscriptionOwner) di listingan tertentu:

  1. Buka halaman Analytics Hub.

    Buka Analytics Hub

  2. Klik nama pertukaran data yang berisi listingan yang langganannya ingin Anda kelola.

  3. Klik listingan tempat Anda ingin mencantumkan semua pelanggannya.

  4. Klik Set permissions.

  5. Untuk menambahkan akun utama, klik Add principal.

  6. Di kolom New principals, masukkan nama pengguna atau email pelanggan yang ingin ditambahkan.

  7. Untuk Select a role, pilih Analytics Hub > Analytics Hub Subscriber.

  8. Klik Tambahkan peran lain.

  9. Untuk Pilih peran, pilih Analytics Hub > Pemilik Langganan Analytics Hub.

  10. Klik Save.

Anda dapat menghapus dan memperbarui subscriber kapan saja dengan mengklik Setel Izin.

Mencabut langganan

Untuk menghapus langganan ke listingan topik bersama dari Analytics Hub, pilih salah satu opsi berikut:

Konsol

  1. Untuk menampilkan daftar semua subscriber listingan, ikuti petunjuk Konsol Google Cloud di Melihat semua langganan.

  2. Klik tab Langganan untuk melihat semua langganan ke pertukaran data.

  3. Pilih kotak centang di samping langganan yang ingin Anda hapus, atau pilih semua langganan.

  4. Pada dialog Cabut langganan?, masukkan cabut untuk mengonfirmasi.

  5. Klik Cabut.

API

Untuk menghapus langganan, gunakan metode projects.locations.subscriptions.revoke.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions/SUBSCRIPTION_ID:revoke

Ganti kode berikut:

  • PROJECT_ID: project ID langganan yang ingin Anda hapus.
  • LOCATION: lokasi langganan.
  • SUBSCRIPTION_ID: ID langganan yang ingin Anda hapus.

Dengan mencabut langganan dari Analytics Hub, pelanggan tidak akan lagi menerima data pesan dari topik bersama. Langganan Pub/Sub dilepas dari topik bersama. Jika langganan dihapus langsung dari Pub/Sub, langganan Analytics Hub akan tetap ada dan perlu dihapus.

Alur kerja pelanggan

Sebagai pelanggan Analytics Hub, Anda dapat melihat dan berlangganan listingan. Berlangganan ke listingan topik bersama akan membuat satu langganan Pub/Sub tertaut di project pelanggan. Langganan Pub/Sub akan terlihat di project penerbit.

Izin pelanggan tambahan

Anda harus memiliki peran Analytics Hub Subscriber (roles/analyticshub.subscriber) yang diberikan di level project, bursa, atau listingan untuk melakukan tugas pelanggan.

Berlangganan listingan topik bersama

Untuk berlangganan listingan dengan topik bersama, pilih salah satu opsi berikut:

Konsol

  1. Untuk melihat daftar listingan yang dapat Anda akses, ikuti langkah-langkah dalam Melihat listingan.

  2. Jelajahi listingan dan klik listingan yang ingin Anda jadikan langganan. Dialog yang berisi detail listingan akan muncul.

  3. Klik Berlangganan untuk membuka dialog Buat langganan.

  4. Jika Anda belum mengaktifkan Analytics Hub API di project, pesan error akan muncul dengan link untuk mengaktifkan API. Klik Aktifkan Analytics Hub API.

  5. Dalam dialog Create subscription, tentukan detail berikut:

    • Subscription ID: tentukan nama langganan yang sedang Anda buat.
    • Jenis pengiriman: pilih mekanisme terkait cara data pesan akan dikirimkan.
    • Durasi retensi pesan: menetapkan durasi retensi pesan.
    • Periode habis masa berlaku: menetapkan kapan masa berlaku langganan akan berakhir setelah tidak aktif, jika memang diinginkan.
    • Batas waktu konfirmasi: tetapkan waktu batas waktu konfirmasi.
    • Filter langganan: menetapkan sintaksis filter pada pesan.
    • Tepat sekali penayangan: aktifkan tepat satu kali penayangan.
    • Pengurutan pesan: mengaktifkan pengurutan pesan dengan kunci urutan.
    • Penghentian pengiriman: mengaktifkan penghentian pengiriman.
    • Kebijakan percobaan ulang: menetapkan kebijakan percobaan ulang.

    Untuk informasi lebih lanjut tentang properti langganan Pub/Sub, lihat properti langganan.

  6. Untuk menyimpan perubahan, klik Buat. Langganan Pub/Sub tertaut dibuat di project Anda.

API

Gunakan metode projects.locations.dataExchanges.listings.subscribe.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID:subscribe

Ganti kode berikut:

  • PROJECT_ID: project ID listingan yang ingin Anda jadikan langganan.
  • LOCATION: lokasi untuk listingan yang Anda jadikan langganan.
  • DATAEXCHANGE_ID: ID pertukaran data listingan yang Anda jadikan langganan.
  • LISTING_ID: ID listingan yang ingin Anda jadikan langganan.

Dalam isi permintaan, tentukan langganan Pub/Sub tempat Anda ingin membuat langganan Pub/Sub tertaut. Jika berhasil, isi respons akan kosong.

Untuk informasi selengkapnya tentang langganan Pub/Sub, lihat ringkasan langganan.

Harga

Tidak ada biaya tambahan bagi penerbit topik Pub/Sub untuk mencantumkan dan membagikan topik melalui Analytics Hub. Penayang dikenai biaya untuk jumlah total byte yang ditulis (throughput publikasi) ke topik bersama dan traffic keluar jaringan (jika berlaku). Pelanggan dikenai biaya untuk jumlah total byte yang dibaca (throughput langganan) dari langganan tertaut dan traffic keluar jaringan (jika ada). Lihat Harga Pub/Sub untuk detail selengkapnya.

Kontrol Layanan VPC

Untuk topik bersama dari project yang memiliki perimeter Kontrol Layanan VPC, Anda dapat menetapkan aturan masuk dan keluar yang sesuai, yang diperlukan untuk memberikan akses kepada penayang dan pelanggan.