Pengantar transfer data Oracle

Anda dapat memuat data dari database Oracle ke BigQuery menggunakan BigQuery Data Transfer Service untuk konektor Oracle. Dokumen ini memberikan opsi konfigurasi untuk transfer Oracle Anda dan informasi tentang pemetaan jenis data dan mentransfer metadata.

Untuk mempelajari cara menjadwalkan transfer Oracle, lihat Memuat data Oracle ke BigQuery.

Opsi penyerapan data

Bagian berikut memberikan informasi selengkapnya tentang opsi penyerapan data saat Anda menyiapkan transfer data Oracle.

Konfigurasi TLS

Konektor Oracle mendukung konfigurasi untuk keamanan tingkat transport (TLS) guna mengenkripsi transfer data Anda ke BigQuery. Konektor Oracle mendukung konfigurasi TLS berikut:

  • Mode Encrypt data, and verify CA and hostname. Mode ini melakukan validasi penuh server menggunakan TLS melalui protokol TCPS. Mode ini mengenkripsi semua data dalam transit dan memverifikasi bahwa sertifikat server database ditandatangani oleh certificate authority (CA) tepercaya. Mode ini juga memeriksa apakah nama host yang Anda sambungkan sama persis dengan Nama Umum (CN) atau Nama Alternatif Subjek (SAN) pada sertifikat server. Mode ini mencegah penyerang menggunakan sertifikat yang valid untuk domain lain guna meniru server database Anda.

    Jika nama host Anda tidak cocok dengan CN atau SAN sertifikat, koneksi akan gagal. Anda harus mengonfigurasi resolusi DNS agar cocok dengan sertifikat atau menggunakan mode keamanan yang berbeda. Gunakan mode ini untuk opsi yang paling aman guna mencegah serangan man-in-the-middle (MITM).

  • Mode Encrypt data, and verify CA only. Mode ini mengenkripsi semua data menggunakan TLS melalui protokol TCPS dan memverifikasi bahwa sertifikat server ditandatangani oleh CA yang dipercaya klien. Namun, mode ini tidak memverifikasi nama host server. Mode ini berhasil terhubung selama sertifikat valid dan dikeluarkan oleh CA tepercaya, terlepas dari apakah nama host dalam sertifikat cocok dengan nama host yang Anda sambungkan.

    Gunakan mode ini jika Anda ingin memastikan bahwa Anda terhubung ke server yang sertifikatnya ditandatangani oleh CA tepercaya, tetapi nama host tidak dapat diverifikasi atau Anda tidak memiliki kontrol atas konfigurasi nama host.

  • Mode Encryption only. Mode ini mengenkripsi semua data yang ditransfer antara klien dan server menggunakan Native Network Encryption Oracle melalui port TCP standar. Mode ini tidak melakukan validasi sertifikat atau nama host.

    Mode ini memberikan tingkat keamanan tertentu dengan melindungi data dalam transit, tetapi dapat rentan terhadap serangan MITM.

    Gunakan mode ini jika Anda perlu memastikan semua data dienkripsi, tetapi tidak dapat atau tidak ingin memverifikasi identitas server. Sebaiknya gunakan mode ini saat menggunakan VPC pribadi.

  • Mode No encryption or verification. Mode ini tidak mengenkripsi data apa pun dan tidak melakukan verifikasi sertifikat atau nama host. Semua data dikirim sebagai teks biasa.

    Sebaiknya jangan gunakan mode ini di lingkungan tempat data sensitif ditangani. Sebaiknya gunakan mode ini hanya untuk tujuan pengujian di jaringan terisolasi yang tidak mengkhawatirkan keamanan.

Sertifikat Server Tepercaya (PEM)

Jika Anda menggunakan mode Encrypt data, and verify CA and hostname atau mode Encrypt data, and verify CA, Anda juga dapat memberikan satu atau beberapa sertifikat berenkode PEM. Sertifikat ini diperlukan dalam beberapa skenario saat BigQuery Data Transfer Service perlu memverifikasi identitas server database Anda selama koneksi TLS:

  • Jika Anda menggunakan sertifikat yang ditandatangani oleh CA pribadi dalam organisasi Anda atau sertifikat yang ditandatangani sendiri, Anda harus memberikan rantai sertifikat lengkap atau satu sertifikat yang ditandatangani sendiri. Hal ini diperlukan untuk sertifikat yang dikeluarkan oleh CA internal layanan penyedia cloud terkelola, seperti Amazon Relational Database Service (RDS).
  • Jika sertifikat server database Anda ditandatangani oleh CA publik (misalnya, Let's Encrypt, DigiCert, atau GlobalSign), Anda tidak perlu memberikan sertifikat. Sertifikat root untuk CA publik ini telah diinstal sebelumnya dan dipercaya oleh BigQuery Data Transfer Service.

Anda dapat menentukan sertifikat berenkode PEM di kolom Trusted PEM Certificate dalam konfigurasi transfer, dengan persyaratan berikut:

  • Sertifikat harus berupa rantai sertifikat berenkode PEM yang valid.
  • Sertifikat harus sepenuhnya benar. Sertifikat yang hilang dalam rantai atau konten yang salah akan menyebabkan koneksi TLS gagal.
  • Untuk satu sertifikat, Anda dapat memberikan satu sertifikat yang ditandatangani sendiri dari server database.
  • Untuk rantai sertifikat lengkap yang dikeluarkan oleh CA pribadi, Anda harus memberikan rantai kepercayaan lengkap. Hal ini mencakup sertifikat dari server database dan sertifikat CA perantara dan root.

Transfer penuh atau inkremental

Anda dapat menentukan cara data dimuat ke BigQuery dengan memilih preferensi tulis Full atau Incremental dalam konfigurasi transfer saat menyiapkan transfer Oracle. Transfer inkremental didukung dalam Pratinjau.

Anda dapat mengonfigurasi transfer data penuh untuk mentransfer semua data dari set data Oracle Anda dengan setiap transfer data.

Atau, Anda dapat mengonfigurasi transfer data inkremental (Pratinjau) untuk hanya mentransfer data yang diubah sejak transfer data terakhir, bukan memuat seluruh set data dengan setiap transfer data. Jika memilih Incremental untuk transfer data, Anda harus menentukan mode tulis Append atau Upsert untuk menentukan cara data ditulis ke BigQuery selama transfer data inkremental. Bagian berikut menjelaskan mode tulis yang tersedia.

Mode tulis tambahan

Mode tulis tambahan hanya menyisipkan baris baru ke tabel tujuan Anda. Opsi ini menambahkan data yang ditransfer secara ketat tanpa memeriksa data yang ada, sehingga mode ini berpotensi menyebabkan duplikasi data di tabel tujuan.

Saat memilih mode tambahan, Anda harus memilih kolom watermark. Kolom watermark diperlukan agar konektor Oracle dapat melacak perubahan dalam tabel sumber.

Untuk transfer Oracle, sebaiknya pilih kolom yang hanya diperbarui saat data dibuat, dan tidak akan berubah dengan pembaruan berikutnya. Misalnya, kolom CREATED_AT.

Mode tulis upsert

Mode tulis upsert memperbarui baris atau menyisipkan baris baru di tabel tujuan Anda dengan memeriksa kunci utama. Anda dapat menentukan kunci utama agar konektor Oracle dapat menentukan perubahan yang diperlukan untuk menjaga tabel tujuan tetap terbaru dengan tabel sumber Anda. Jika kunci utama yang ditentukan ada di tabel BigQuery tujuan selama transfer data, konektor Oracle akan memperbarui baris tersebut dengan data baru dari tabel sumber. Jika kunci utama tidak ada selama transfer data, konektor Oracle akan menyisipkan baris baru.

Saat memilih mode upsert, Anda harus memilih kolom watermark dan kunci utama:

  • Kolom watermark diperlukan agar konektor Oracle dapat melacak perubahan dalam tabel sumber.
    • Pilih kolom watermark yang diperbarui setiap kali baris diubah. Sebaiknya gunakan kolom yang mirip dengan kolom UPDATED_AT atau LAST_MODIFIED.
  • Kunci utama dapat berupa satu atau beberapa kolom di tabel Anda yang diperlukan agar konektor Oracle dapat menentukan apakah perlu menyisipkan atau memperbarui baris.

    Pilih kolom yang berisi nilai non-null yang unik di semua baris tabel. Sebaiknya gunakan kolom yang menyertakan ID yang dibuat sistem, kode referensi unik (misalnya, ID yang bertambah otomatis), atau ID urutan berbasis waktu yang tidak dapat diubah.

    Untuk mencegah potensi kehilangan atau kerusakan data, kolom kunci utama yang Anda pilih harus memiliki nilai unik. Jika Anda ragu tentang keunikan kolom kunci utama yang dipilih, sebaiknya gunakan mode tulis tambahan.

Perilaku penyerapan inkremental

Saat Anda melakukan perubahan pada skema tabel di sumber data, transfer data inkremental dari tabel tersebut akan ditampilkan di BigQuery dengan cara berikut:

Perubahan pada sumber data Perilaku penyerapan inkremental
Menambahkan kolom baru Kolom baru ditambahkan ke tabel BigQuery tujuan. Semua data sebelumnya untuk kolom ini akan memiliki nilai null.
Menghapus kolom Kolom yang dihapus tetap ada di tabel BigQuery tujuan. Entri baru ke kolom yang dihapus ini akan diisi dengan nilai null.
Mengubah jenis data di kolom Konektor hanya mendukung konversi jenis data yang didukung oleh pernyataan DDL ALTER COLUMN. Konversi jenis data lainnya akan menyebabkan transfer data gagal.

Jika Anda mengalami masalah, sebaiknya buat konfigurasi transfer baru.

Mengganti nama kolom Kolom asli tetap ada di tabel BigQuery tujuan seperti apa adanya, sementara kolom baru ditambahkan ke tabel tujuan dengan nama yang diperbarui.

Pemetaan jenis data

Tabel berikut memetakan jenis data Oracle ke jenis data BigQuery yang sesuai:

Jenis data Oracle Jenis data BigQuery
BFILE BYTES
BINARY_DOUBLE FLOAT
BINARY_FLOAT FLOAT
BLOB BYTES
CHAR STRING
CLOB STRING
DATE DATETIME
FLOAT FLOAT
INTERVAL DAY TO SECOND STRING
INTERVAL YEAR TO MONTH STRING
LONG STRING
LONG RAW BYTES
NCHAR STRING
NCLOB STRING
NUMBER (without precision and scale) STRING
NUMBER (with precision and scale lower than the BigQuery Numeric range) NUMERIC
NUMBER (with precision and scale lower than the BigQuery BigNumeric range) BIGNUMERIC
NUMBER (with precision and scale greater than the BigQuery BigNumeric range) STRING
NVARCHAR2 STRING
RAW BYTES
ROWID STRING
TIMESTAMP DATETIME
TIMESTAMP WITH LOCAL TIME ZONE DATETIME
TIMESTAMP WITH TIME ZONE TIMESTAMP
UROWID STRING
VARCHAR STRING
VARCHAR2 STRING

Metadata transfer

Anda juga dapat menggunakan konektor Oracle untuk mentransfer metadata ke Knowledge Catalog. Untuk mengetahui informasi selengkapnya, lihat Memuat metadata Oracle ke Knowledge Catalog.

Harga

Untuk mengetahui informasi harga tentang transfer Oracle, lihat Harga Data Transfer Service.

Langkah berikutnya