Koneksi lintas cloud ke Workday Data Lake memungkinkan Anda mengkueri data Workday secara langsung dalam Google Cloud. Kemampuan ini menyatukan analisis data Anda dengan mengintegrasikan sumber data eksternal dengan lingkunganGoogle Cloud yang ada.
Setelah itu, Anda dapat menggunakan Lakehouse tanpa batas untuk mengelola akses ke data gabungan Anda.
Kasus penggunaan
Menghubungkan Lakehouse ke Workday Data Lake mendukung beberapa kasus penggunaan utama:
- Menyatukan analisis: Mengorelasikan data HR dan kompensasi Workday dengan data Google Cloud , misalnya, untuk memberikan konteks penjualan dan kuota.
- Manfaatkan ekosistem Google Cloud: Misalnya, gunakan framework agen Google dengan data HR BigQuery ML dan Workday untuk memprediksi retensi karyawan.
- Streaming data real-time tanpa penyalinan: Analisis data pengadaan dan utang dagang Workday bersama dengan data logistik dan inventaris yang disimpan diGoogle Cloud untuk melaporkan inefisiensi supply chain dan mengoptimalkan biaya vendor.
Sebelum memulai
- Tinjau ringkasan Lakehouse untuk memahami cara Lakehouse mengelola akses ke data.
- Baca cara mengakses data lintas-cloud untuk memahami cara kerjanya.
- Tinjau katalog yang didukung untuk memverifikasi kompatibilitas.
- Pahami cara menggunakan secret Secret Manager regional untuk melakukan autentikasi dengan Workday Data Lake.
- Hubungi administrator Workday Data Lake Anda untuk menyiapkan autentikasi seperti yang dijelaskan dalam dokumen ini. Administrator mungkin perlu menghubungi Dukungan Workday untuk mengaktifkan akses Data Lake, yang dapat memerlukan waktu untuk diselesaikan.
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake, Secret Manager APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake, Secret Manager APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk menyiapkan akses lintas cloud, minta administrator untuk memberi Anda peran IAM berikut di project Anda:
-
Mengelola katalog Lakehouse:
Admin BigLake (
roles/biglake.admin) -
Mengelola secret:
Secret Manager Admin (
roles/secretmanager.admin)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Batasan dan pertimbangan
Bagian ini mencantumkan batasan dan pertimbangan untuk mengakses data lintas cloud.
- Hanya baca: Katalog gabungan di Lakehouse adalah tampilan hanya baca dari katalog jarak jauh. Manipulasi resource (seperti membuat, memperbarui, atau menghapus resource) tidak didukung dan harus dilakukan langsung di katalog jarak jauh.
- Keaktualan data: Flag
--refresh-intervaluntuk katalog gabungan menentukan seberapa sering metadata disinkronkan. Nilai harus berupa0s(dinonaktifkan) atau minimal300s(5 menit). Pembaruan metadata latar belakang katalog dapat memakan waktu lebih lama jika ada lebih banyak namespace dan resource tabel. Jika muat ulang sebelumnya melampaui batas waktu, muat ulang saat ini akan dilewati, tetapi muat ulang berikutnya akan dijadwalkan pada interval berikutnya. - Caching lakehouse: Caching lakehouse diaktifkan secara otomatis
untuk semua kueri lintas cloud guna menghemat biaya keluar dengan menyimpan blok data
secara lokal di Google Cloud. Kunci enkripsi yang dikelola pelanggan
(CMEK) tidak didukung untuk penyimpanan dalam cache; data yang di-cache
dienkripsi menggunakan Google-owned and Google-managed encryption keys. Jika
batasan kebijakan organisasi
constraints/gcp.restrictNonCmekServicesditerapkan pada tabel apa pun dalam kueri, penayangan cache akan otomatis dinonaktifkan untuk kueri tersebut. Untuk informasi selengkapnya, lihat Caching cerdas. - Residensi dan kepatuhan data: Membuat katalog atau koneksi gabungan di region Google Cloud menyimpan data dalam penyimpanan yang di-cache di region target tersebut. Jika data cloud jarak jauh Anda berada di yurisdiksi yang berbeda, pastikan penayangan cache lintas region mematuhi persyaratan residensi data dan kepatuhan terhadap peraturan organisasi Anda.
Alur kerja umum
Untuk mengakses data lintas cloud di Workday Data Lake, ikuti langkah-langkah umum berikut:
- Menyiapkan federasi: Konfigurasi autentikasi berbasis rahasia dan buat
katalog gabungan di Lakehouse.
- Di Workday, buat Integration System User (ISU) dan Klien API untuk Integrasi.
- Buat secret di Secret Manager dengan kredensial Workday API Anda.
- Buat katalog gabungan di Lakehouse dan beri akun layanan katalog akses ke secret.
- Verifikasi koneksi: Verifikasi bahwa Lakehouse dapat terhubung ke katalog jarak jauh Anda dan menyinkronkan metadata.
- Buat kueri data: Jalankan kueri terhadap data gabungan menggunakan BigQuery atau Managed Service untuk Apache Spark. Untuk mengetahui informasi selengkapnya, lihat Membuat kueri data jarak jauh.
- Mengonfigurasi izin: Gunakan Identity and Access Management (IAM) untuk mengelola siapa yang dapat melihat dan membuat kueri data gabungan.
Menyiapkan penggabungan
Untuk membuat kueri data, Anda harus menyiapkan katalog gabungan Lakehouse yang terhubung ke Workday Data Lake jarak jauh Anda.
Mengonfigurasi autentikasi
Federasi memerlukan autentikasi ke Workday Data Lake jarak jauh menggunakan kredensial yang disimpan dengan aman di secret Secret Manager regional.
Di Workday, selesaikan penyiapan berikut:
- Buat Integration System User (ISU): Jalankan tugas Create Integration System User untuk membuat akun khusus yang digunakan Lakehouse untuk menyinkronkan resource.
- Aktifkan akses Workday Data Lake untuk ISU: Beri ISU akses ke Workday Data Lake. Hubungi dukungan Workday untuk mengaktifkan akses ini. Anda tidak dapat melakukan langkah ini sendiri; tunggu hingga Workday mengonfigurasi akses di tenant Workday Anda sebelum melanjutkan.
- Daftarkan Klien API untuk Integrasi: Jalankan tugas Daftarkan Klien API untuk Integrasi.
- Simpan ID dan rahasia klien: Simpan ID dan rahasia klien OAuth untuk langkah berikutnya.
- Buat token refresh yang tidak akan habis masa berlakunya: Di Klien API untuk Integrasi, gunakan Kelola Token Refresh untuk Integrasi guna membuat token refresh yang tidak akan habis masa berlakunya untuk ISU.
- Simpan token refresh: Simpan token refresh yang dibuat untuk langkah berikutnya.
Buat file JSON bernama
credentials.jsondengan data yang disimpan dari langkah sebelumnya:{ "client_id": "CLIENT_ID", "client_secret": "CLIENT_SECRET", "refresh_token": "REFRESH_TOKEN" }
Ganti kode berikut:
CLIENT_ID: Client ID OAuth dari Klien API Workday untuk Integrasi.CLIENT_SECRET: Rahasia klien OAuth dari Klien API Workday untuk Integrasi.REFRESH_TOKEN: Token refresh yang tidak akan berakhir dibuat untuk ISU Workday Anda.
Konfigurasi endpoint regional untuk Secret Manager:
Secara default, Secret Manager menggunakan endpoint global. Untuk menghindari masalah konektivitas serta meminimalkan latensi dan biaya transfer data, buat rahasia dan katalog Anda di region yang sama. Untuk mengganti endpoint global default dengan secret regional, jalankan perintah berikut:
gcloud config set api_endpoint_overrides/secretmanager https://secretmanager.REGION.rep.googleapis.com/
Ganti kode berikut:
REGION: Region Google Cloud tempat Anda menyimpan secret Secret Manager. Contohnya,us-east4.
Upload payload ke Secret Manager:
gcloud secrets create WORKDAY_SECRET_NAME \ --location="REGION" \ --project="PROJECT_ID" \ --data-file=credentials.json
Hapus file
credentials.jsondengan aman untuk mencegah kebocoran kredensial.Ganti kode berikut:
WORKDAY_SECRET_NAME: Nama unik untuk secret Workday Anda di Secret Manager, misalnya,workday-api-credentialsatauworkday-data-lake-secret.REGION: Region Google Cloud tempat Anda membuat secret, misalnya,us-east4.PROJECT_ID: Project ID Google Cloud Anda.
Membuat katalog gabungan
Untuk membuat katalog gabungan menggunakan gcloud CLI, jalankan perintah berikut:
gcloud alpha biglake iceberg catalogs create FEDERATED_CATALOG_NAME \ --project="PROJECT_ID" \ --primary-location="REGION" \ --catalog-type="federated" \ --federated-catalog-type="workday" \ --secret-name="projects/PROJECT_ID/locations/REGION/secrets/WORKDAY_SECRET_NAME" \ --workday-base-url="WORKDAY_BASE_URL" \ --workday-tenant="WORKDAY_TENANT" \ --refresh-interval="REFRESH_INTERVAL" \ --namespace-filters="NAMESPACE_FILTERS"
Ganti kode berikut:
FEDERATED_CATALOG_NAME: Nama untuk katalog gabungan Anda di Lakehouse.PROJECT_ID: Project ID Google Cloud Anda.REGION: Region Lakehouse tempat Anda membuat katalog gabungan, misalnya,us-east4. Untuk meminimalkan latensi dan biaya transfer data, pilih Google Cloud region yang paling dekat dengan instance Workday Anda. Region ini harus sama dengan region tempat Anda menyimpan secret.WORKDAY_SECRET_NAME: Nama secret Workday Anda di Secret Manager.WORKDAY_BASE_URL: URL dasar instance Workday Anda. Contohnya,impl-services1.wd12.myworkday.comatauwd501.myworkday.com.WORKDAY_TENANT: Nama tenant Workday.REFRESH_INTERVAL: Opsional: Menentukan seberapa sering informasi katalog diperbarui. Tetapkan nilai ini sebagai durasi, misalnya,300satau5m. Interval yang lebih singkat akan memperbarui data lebih sering, tetapi dapat menimbulkan biaya yang lebih besar dalam panggilan API. Interval yang lebih panjang dapat mengurangi biaya, tetapi data yang dikueri mungkin tidak mencerminkan set data terbaru Anda. Jika tidak ditentukan, interval refresh default adalah 5 menit (300s). Menetapkan nilai ke0sakan menonaktifkan refresh metadata di latar belakang.NAMESPACE_FILTERS: Opsional: Daftar namespace yang dipisahkan koma untuk difederasikan, misalnya,finance,hr. Jika tidak disertakan, Lakehouse akan menyertakan semua namespace.
Menyelesaikan penyiapan autentikasi
Setelah Anda membuat katalog, Lakehouse menyediakan akun layanan unik untuk katalog tersebut, yang diidentifikasi sebagai biglake-service-account dalam deskripsi resource.
Anda harus memberikan peran Secret Manager Secret Accessor (roles/secretmanager.secretAccessor) ke akun layanan ini pada secret yang Anda buat sebelumnya.
Mungkin perlu waktu beberapa menit hingga kebijakan IAM baru diterapkan.
Konsol
Di konsol Google Cloud , buka Lakehouse.
Klik nama katalog gabungan yang Anda buat untuk Workday.
Di halaman Detail katalog, di banner pemberitahuan, klik Beri izin rahasia.
Lakehouse memberikan peran
roles/secretmanager.secretAccessorpada secret ke akun layanan yang disediakan.
gcloud CLI
Beri akun layanan katalog izin untuk mengakses secret:
gcloud config set api_endpoint_overrides/secretmanager https://secretmanager.REGION.rep.googleapis.com/ gcloud secrets add-iam-policy-binding WORKDAY_SECRET_NAME \ --project="PROJECT_ID" \ --location="REGION" \ --member="serviceAccount:$(gcloud alpha biglake iceberg catalogs describe FEDERATED_CATALOG_NAME \ --project="PROJECT_ID" \ --format='value(biglake-service-account)')" \ --role="roles/secretmanager.secretAccessor"
Untuk memverifikasi bahwa akun layanan katalog gabungan memiliki akses ke secret, jalankan perintah berikut:
gcloud config set api_endpoint_overrides/secretmanager https://secretmanager.REGION.rep.googleapis.com/ gcloud secrets get-iam-policy WORKDAY_SECRET_NAME \ --project="PROJECT_ID" \ --location="REGION"
Di output, pastikan akun layanan
biglake-service-accountmemiliki peranroles/secretmanager.secretAccessor.
Ganti kode berikut:
REGION: Region Google Cloud tempat Anda menyimpan rahasia Secret Manager dan membuat katalog gabungan, misalnya,us-east4.WORKDAY_SECRET_NAME: Nama secret Workday Anda di Secret Manager.PROJECT_ID: Project ID Google Cloud Anda.FEDERATED_CATALOG_NAME: Nama katalog gabungan Anda di Lakehouse.
Memverifikasi koneksi
Pastikan refresh metadata latar belakang berhasil diselesaikan dan mensinkronkan namespace dan tabel Anda.
Pastikan status refresh menunjukkan keberhasilan:
gcloud alpha biglake iceberg catalogs describe FEDERATED_CATALOG_NAME \ --project="PROJECT_ID"
Konfirmasi bahwa namespace disinkronkan:
gcloud alpha biglake iceberg namespaces list \ --project="PROJECT_ID" \ --catalog="FEDERATED_CATALOG_NAME"
Ganti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.FEDERATED_CATALOG_NAME: Nama katalog gabungan di Lakehouse.