Menjadwalkan transfer Facebook Ads
Konektor BigQuery Data Transfer Service untuk Facebook Ads memungkinkan Anda menjadwalkan dan mengelola tugas pemuatan berulang secara otomatis dari Facebook Ads ke BigQuery.
Batasan
Transfer data Facebook Ads tunduk pada batasan berikut:
- Waktu interval minimum antar-transfer data Iklan Facebook berulang adalah 24 jam. Interval default untuk transfer data berulang adalah 24 jam.
- BigQuery Data Transfer Service untuk Facebook Ads hanya mendukung kumpulan tabel tetap. Laporan kustom tidak didukung.
- Transfer data Facebook Ads memiliki durasi maksimum enam jam. Transfer gagal jika memerlukan waktu lebih lama dari durasi maksimum ini.
- Transfer inkremental tidak didukung untuk tabel
AdInsights
danAdInsightsActions
. Saat Anda membuat transfer data yang menyertakan tabelAdInsights
danAdInsightsActions
, dan Anda menentukan tanggal di Opsi jadwal, semua data yang tersedia untuk tanggal tersebut akan ditransfer. - BigQuery Data Transfer Service mendukung periode refresh satu hari ke tabel
AdInsights
danAdInsightsActions
. Periode refresh mengacu pada jumlah hari yang akan digunakan transfer data untuk mengambil data sumber. Saat Anda menjalankan transfer data untuk pertama kalinya, transfer data akan mengambil semua data sumber yang tersedia dalam periode pembaruan. Masa berlaku token akses pengguna yang lama dan diperlukan untuk transfer Facebook Ads akan berakhir setelah 60 hari.
Jika masa berlaku token akses pengguna jangka panjang Anda habis, Anda bisa mendapatkan token baru dengan membuka detail transfer data dan mengklik Edit. Di halaman edit transfer, ikuti langkah-langkah yang sama di prasyarat Facebook Ads untuk membuat token akses pengguna baru yang berumur panjang.
Penyerapan data dari transfer Facebook Ads
Saat Anda mentransfer data dari Facebook Ads ke BigQuery, data tersebut akan dimuat ke dalam tabel BigQuery yang dipartisi berdasarkan tanggal. Partisi tabel tempat data dimuat sesuai dengan tanggal dari sumber data. Jika Anda menjadwalkan beberapa transfer untuk tanggal yang sama, BigQuery Data Transfer Service akan menimpa partisi untuk tanggal tertentu tersebut dengan data terbaru. Beberapa transfer dalam satu hari atau menjalankan pengisian ulang tidak akan menghasilkan data duplikat, dan partisi untuk tanggal lain tidak akan terpengaruh.Untuk tabel AdInsights
dan AdInsightsAction
, partisi tabel tempat data dimuat sesuai dengan tanggal dari sumber data.
Untuk tabel AdAccounts
, snapshot diambil sekali sehari dan disimpan di
partisi tanggal terakhir transfer dijalankan. Periode muat ulang tidak berlaku untuk
tabel AdAccounts
.
Sebelum memulai
Bagian berikut menjelaskan langkah-langkah yang perlu Anda lakukan sebelum membuat transfer data Facebook Ads.
Prasyarat Facebook Ads
Pastikan Anda memiliki informasi Facebook Ads berikut saat membuat transfer data Facebook Ads.
Parameter Facebook Ads | Deskripsi |
---|---|
clientID |
Nama ID aplikasi untuk klien OAuth 2.0. |
clientSecret |
Rahasia aplikasi untuk klien OAuth 2.0. |
refreshToken |
Token akses pengguna yang memiliki masa berlaku lama, yang juga dikenal sebagai token refresh. |
Untuk mendapatkan clientID
dan clientSecret
, lakukan
langkah-langkah berikut:
- Buat aplikasi developer Facebook
dengan jenis aplikasi
Business
. - Di dasbor Aplikasi Facebook, klik App Settings > Basic dan temukan ID aplikasi dan secret aplikasi yang sesuai dengan aplikasi.
Untuk mendapatkan token akses pengguna yang berumur panjang, yang juga dikenal sebagai token refresh, lakukan langkah-langkah berikut:
Di konsol Google Cloud, lanjutkan dengan langkah-langkah untuk membuat transfer Facebook Ads.
Di bagian Data Source Details, salin URI alihan yang tercantum setelah kolom Refresh Token.
Klik Dasbor Aplikasi Facebook, lalu klik Siapkan di bagian Login Facebook untuk Bisnis.
Di halaman Setelan, masukkan URL alihan di kolom Valid OAuth Redirect URIs, lalu klik Simpan.
Kembali ke konsol Google Cloud. Di bagian Data Source Details, klik Authorize. Anda akan dialihkan ke halaman autentikasi Facebook.
Pilih aplikasi developer Facebook untuk memberikan otorisasi ke akun yang terhubung dengan BigQuery Data Transfer Service.
Setelah selesai, klik Oke untuk kembali ke konsol Google Cloud. Token akses pengguna yang memiliki masa berlaku lama kini diisi dalam konfigurasi transfer.
Masa berlaku token akses pengguna yang memiliki masa berlaku lama akan berakhir setelah 60 hari. Untuk informasi tentang cara mendapatkan token akses pengguna baru yang berumur panjang, lihat Batasan.
Alternatif token refresh
Atau, Anda dapat memberikan token refresh saat membuat transfer data jika telah mendapatkannya menggunakan salah satu metode berikut:
- Buat token akses pengguna berumur panjang menggunakan Graph API.
Izin
ads_management
,ads_read
, danbusiness_management
diperlukan untuk token yang valid bagi transfer data. - Buat token pengguna sistem. Token pengguna sistem memungkinkan Anda menambahkan aset secara manual, seperti akun iklan, untuk disertakan dalam transfer data. Jika masa berlaku token pengguna sistem habis, Anda harus memperbarui konfigurasi transfer secara manual dengan kredensial baru. Anda juga memiliki opsi untuk membuat token yang tidak memiliki masa berlaku saat membuat token pengguna sistem. Untuk mengetahui informasi selengkapnya, lihat Token akses yang didukung.
Prasyarat BigQuery
- Pastikan Anda telah menyelesaikan semua tindakan yang diperlukan untuk mengaktifkan BigQuery Data Transfer Service.
- Buat set data BigQuery untuk menyimpan data Anda.
- Jika ingin menyiapkan notifikasi operasi transfer untuk Pub/Sub,
pastikan Anda memiliki izin Identity and Access Management (IAM)
pubsub.topics.setIamPolicy
. Jika Anda hanya menyiapkan notifikasi email, izin Pub/Sub tidak diperlukan. Untuk mengetahui informasi selengkapnya, lihat Notifikasi operasi BigQuery Data Transfer Service.
Peran BigQuery yang diperlukan
Untuk mendapatkan izin yang diperlukan guna membuat transfer,
minta administrator untuk memberi Anda
peran IAM BigQuery Admin (roles/bigquery.admin
).
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk membuat transfer. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat transfer:
-
bigquery.transfers.update
pada pengguna -
bigquery.datasets.get
pada set data target -
bigquery.datasets.update
pada set data target
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Membuat transfer data Facebook Ads
Pilih salah satu opsi berikut:
Konsol
Buka halaman Data transfers di konsol Google Cloud.
Klik
Create transfer.Di bagian Source type, untuk Source, pilih Facebook Ads.
Di bagian Detail sumber data, lakukan hal berikut:
- Untuk Client ID, masukkan ID aplikasi.
- Untuk Rahasia klien, masukkan secret aplikasi.
Untuk Token refresh, masukkan ID token akses pengguna dengan masa berlaku lama dengan mengklik Otorisasi. Atau, jika sudah memiliki token refresh atau token pengguna sistem, Anda dapat memasukkan token refresh langsung di kolom ini.
Untuk informasi tentang cara mengambil token akses pengguna dengan masa berlaku yang lama, lihat Prasyarat Facebook Ads.
Di bagian Destination settings, untuk Dataset, pilih set data yang Anda buat untuk menyimpan data.
Di bagian Transfer config name, untuk Display name, masukkan nama untuk transfer data.
Di bagian Opsi jadwal, lakukan tindakan berikut:
Dalam daftar Repeat frequency, pilih opsi untuk menentukan frekuensi transfer data ini dijalankan. Untuk menentukan frekuensi pengulangan kustom, pilih Custom. Jika Anda memilih On-demand, transfer ini akan berjalan saat Anda memicu transfer secara manual.
Jika berlaku, pilih Start now atau Start at set time dan masukkan tanggal mulai dan waktu proses.
Opsional: Di menu Service Account, pilih service account dari akun layanan yang terkait dengan project Google Cloud Anda. Akun layanan yang dipilih harus memiliki peran yang diperlukan untuk menjalankan transfer data ini.
Jika Anda login dengan identitas gabungan, akun layanan diperlukan untuk membuat transfer data. Jika Anda login dengan Akun Google, akun layanan untuk transfer data bersifat opsional.
Untuk mengetahui informasi selengkapnya tentang cara menggunakan akun layanan dengan transfer data, lihat Menggunakan akun layanan.
Opsional: Di bagian Opsi notifikasi, lakukan hal berikut:
- Untuk mengaktifkan notifikasi email, klik tombol Notifikasi email. Jika Anda mengaktifkan opsi ini, administrator transfer akan menerima notifikasi email saat proses transfer gagal.
- Untuk mengaktifkan notifikasi operasi transfer Pub/Sub untuk transfer data ini, klik tombol Notifikasi Pub/Sub. Anda dapat memilih nama topik, atau klik Create a topic untuk membuatnya.
Klik Simpan.
Saat transfer data ini berjalan, BigQuery Data Transfer Service akan otomatis mengisi tabel berikut.
Nama Tabel | Deskripsi |
---|---|
AdAccounts |
Akun iklan yang tersedia untuk pengguna. |
AdInsights |
Laporan analisis iklan untuk semua akun iklan. |
AdInsightsActions |
Laporan tindakan analisis iklan untuk semua akun iklan. |
bq
Masukkan perintah bq mk
dan berikan flag pembuatan transfer
--transfer_config
:
bq mk \ --transfer_config \ --project_id=PROJECT_ID \ --data_source=DATA_SOURCE \ --display_name=DISPLAY_NAME \ --target_dataset=DATASET \ --params='PARAMETERS'
Dengan keterangan:
- PROJECT_ID (opsional): project ID Google Cloud Anda.
Jika
--project_id
tidak diberikan untuk menentukan project tertentu, project default akan digunakan. - DATA_SOURCE: sumber data (misalnya,
facebook-ads
). - DISPLAY_NAME: nama tampilan untuk konfigurasi transfer data. Nama transfer dapat berupa nilai apa pun yang memungkinkan Anda mengidentifikasi transfer jika perlu mengubahnya nanti.
- DATASET: set data target untuk konfigurasi transfer data.
- PARAMETERS: parameter untuk konfigurasi transfer data yang dibuat dalam format JSON. Contoh:
--params='{"param":"param_value"}'
. Berikut adalah parameter untuk transfer Facebook Ads:connector.authentication.oauth.clientId
: Nama ID aplikasi untuk klien OAuth 2.0.connector.authentication.oauth.clientSecret
: Rahasia aplikasi untuk klien OAuth 2.0.connector.authentication.oauth.refreshToken
: ID token dengan masa berlaku lama.
Misalnya, perintah berikut akan membuat transfer data Facebook Ads di project default dengan semua parameter yang diperlukan:
bq mk \ --transfer_config \ --target_dataset=mydataset \ --data_source=facebook_ads \ --display_name='My Transfer' \ --params='{"connector.authentication.oauth.clientId": "1650000000", "connector.authentication.oauth.clientSecret":"TBA99550", "connector.authentication.oauth.refreshToken":"abcdef"}'
API
Gunakan metode projects.locations.transferConfigs.create
dan berikan instance resource
TransferConfig
.
Memecahkan masalah konfigurasi transfer
Jika Anda mengalami masalah saat menyiapkan transfer data Facebook Ads, coba langkah-langkah pemecahan masalah berikut:
- Periksa apakah token akses pengguna Anda telah habis masa berlakunya menggunakan Facebook Access Token Debugger. Masa berlaku token akses pengguna yang lama akan berakhir setelah 60 hari. Jika token akses pengguna jangka panjang Anda telah habis masa berlakunya, buka detail transfer, lalu klik Edit untuk mengubah konfigurasi transfer. Di halaman edit transfer, ikuti langkah-langkah yang sama di prasyarat Facebook Ads untuk membuat yang baru.
- Pastikan token akses pengguna dengan masa berlaku lama dibuat dengan izin yang diperlukan -
ads_management
,ads_read
, danbusiness_management
. Jika tidak, ikuti langkah-langkah di Prasyarat Facebook Ads untuk membuat token akses pengguna baru yang berumur panjang. - Periksa tab Tindakan yang Diperlukan di dasbor Aplikasi Facebook untuk menemukan item yang memerlukan perhatian.
Anda mungkin melihat pesan error berikut yang terkait dengan error batas kapasitas Meta API:
- Error:
There have been too many calls from this ad-account. Wait a bit and try again.
- Penyelesaian: Pastikan tidak ada alur kerja paralel yang menggunakan aplikasi atau kredensial yang sama. Jika error ini terus berlanjut, coba upgrade izin Anda ke Akses Lanjutan untuk mendapatkan lebih banyak kuota pembatasan kapasitas. Untuk informasi selengkapnya, lihat Pembatasan Kapasitas Marketing API.
Pesan metrik pemantauan umum
Anda juga dapat memeriksa metrik pemantauan BigQuery Data Transfer Service untuk menentukan penyebab kegagalan transfer data. Tabel berikut mencantumkan beberapa pesan ERROR_CODE
umum untuk transfer data Facebook Ads.
Error | Deskripsi |
---|---|
INVALID_ARGUMENT |
Konfigurasi yang diberikan tidak valid |
PERMISSION_DENIED |
Kredensial tidak valid |
UNAUTHENTICATED |
Autentikasi diperlukan |
SERVICE_UNAVAILABLE |
Layanan ini untuk sementara tidak dapat menangani transfer data ini |
DEADLINE_EXCEEDED |
Transfer data tidak selesai dalam durasi maksimum enam jam |
NOT_FOUND |
Resource yang diminta tidak ditemukan |
INTERNAL |
Ada masalah lain yang menyebabkan konektor gagal |
RESOURCE_EXHAUSTED |
Kuota atau batas sumber data telah habis |
Harga
Tidak ada biaya untuk mentransfer data Facebook Ads ke BigQuery saat fitur ini masih dalam Pratinjau.
Langkah selanjutnya
- Pelajari BigQuery Data Transfer Service lebih lanjut.
- Pelajari lebih lanjut cara menangani transfer, seperti melihat konfigurasi dan histori operasi.
- Pelajari cara memuat data dengan operasi lintas-cloud.