Database Oracle sumber

Bagian ini berisi informasi tentang:

  • Perilaku cara Datastream menangani data yang diambil dari database Oracle sumber
  • Versi database Oracle yang didukung Datastream
  • Ringkasan cara menyiapkan database Oracle sumber agar data dapat di-streaming dari database tersebut ke tujuan
  • Batasan yang diketahui untuk menggunakan database Oracle sebagai sumber

Perilaku

Datastream mendukung dua metode untuk mengekstrak perubahan pada data dari file log redo online: pembaca log biner Oracle (Pratinjau) dan LogMiner Oracle.

Dengan metode pembaca log biner (Pratinjau), perilaku berikut diamati:

  • Jika ada jeda baca saat mengekstrak perubahan dari file log online, Datastream akan mengekstrak perubahan dari file log yang diarsipkan.

  • Datastream hanya mereplikasi perubahan yang di-commit ke tujuan. Transaksi yang tidak di-commit atau di-roll back tidak direplikasi.

  • Pembaca biner mendukung replikasi kolom VARCHAR2 Oracle yang lebih panjang dari 4.000 karakter.

Datastream juga mendukung fitur Oracle LogMiner untuk mengekspos perubahan pada data. Metode ini memiliki perilaku berikut:

  • Semua skema atau skema tertentu dari database tertentu, serta semua tabel dari skema atau tabel tertentu, dapat dipilih.
  • Semua data historis direplikasi.
  • Semua perubahan bahasa pengolahan data (DML), seperti penyisipan, pembaruan, dan penghapusan dari database dan tabel yang ditentukan, direplikasi.
  • Datastream mereplikasi perubahan yang di-commit dan, dalam beberapa kasus, perubahan yang tidak di-commit ke tujuan. Datastream membaca perubahan yang tidak di-commit. Jika terjadi rollback, data output Datastream juga akan menyertakan operasi yang berlawanan. Misalnya, jika ada operasi INSERT yang di-roll back, data output juga akan berisi operasi DELETE yang sesuai. Dalam hal ini, peristiwa akan muncul sebagai peristiwa DELETE dengan hanya ROWID.

Pengisian ulang berbasis ROWID

Di Oracle, ROWID adalah kolom pseudo yang menyimpan ID unik untuk baris dalam tabel. Datastream menggunakan nilai ROWID untuk operasi pengisian ulangnya. Oleh karena itu, sebaiknya jangan lakukan tindakan apa pun yang dapat mengubah nilai ROWID di database Oracle sumber Anda hingga operasi pengisian ulang selesai.

Tindakan yang dapat mengubah nilai ROWID meliputi:

  • Gerakan fisik baris:

    • Operasi ekspor dan impor: saat Anda mengekspor tabel, lalu mengimpornya kembali, lokasi fisik baris mungkin berubah, sehingga menghasilkan nilai ROWID baru.
    • Perintah ALTER TABLE (...) MOVE: memindahkan tabel ke ruang tabel yang berbeda dapat mengubah penyimpanan fisik dan menyebabkan perubahan ROWID.
    • Perintah ALTER TABLE (...) SHRINK SPACE: perintah ini mengompresi tabel, yang berpotensi memindahkan baris dan memengaruhi nilai ROWID-nya.
    • Operasi partisi: memisahkan, menggabungkan, atau memindahkan partisi dapat mengubah penempatan fisik baris dan nilai ROWID-nya.
  • Operasi flashback:

    • Perintah FLASHBACK TABLE: memulihkan tabel ke status sebelumnya melibatkan penghapusan dan penyisipan ulang baris, sehingga membuat nilai ROWID baru.
    • FLASHBACK_TRANSACTION_QUERY: Mirip dengan FLASHBACK TABLE. Memutar kembali transaksi dapat menyebabkan perubahan ROWID jika baris dihapus atau diperbarui dalam transaksi.

Versi

Datastream mendukung versi database Oracle berikut:

  • Oracle 11g, Versi 11.2.0.4 (hanya didukung dengan metode Logminer CDC)
  • Oracle 12c, Versi 12.1.0.2
  • Oracle 12c, Versi 12.2.0.1
  • Oracle 18c
  • Oracle 19c
  • Oracle 21c

Datastream mendukung jenis database Oracle berikut:

  • Dihosting sendiri di lokal atau di penyedia cloud mana pun
  • Amazon RDS untuk Oracle
  • Oracle Cloud
  • Oracle Exadata
  • Oracle RAC
  • Database standby Oracle Active Data Guard

Penyiapan

Untuk menyiapkan database Oracle sumber agar data darinya dapat di-streaming ke tujuan, Anda harus mengonfigurasi database untuk memberikan akses, menyiapkan logging, dan menentukan kebijakan retensi.

Lihat Mengonfigurasi database Oracle sumber untuk mempelajari cara mengonfigurasi database ini agar Datastream dapat mengambil data darinya ke tujuan.

Batasan umum

Batasan yang diketahui untuk menggunakan database Oracle sebagai sumber meliputi:

  • Aliran data dibatasi hingga 10.000 tabel. Jika aliran data menyertakan lebih dari 10.000 tabel, aliran data tersebut mungkin mengalami error.
  • Datastream mendukung arsitektur multi-tenant Oracle (CDB/PDB), tetapi Anda hanya dapat mereplikasi satu database yang dapat di-plug dalam streaming.
  • Oracle Autonomous Database tidak didukung.
  • Untuk tabel yang tidak memiliki kunci utama, Datastream menggunakan ROWID baris untuk melakukan operasi penggabungan di sisi konsumen. Perhatikan bahwa ROWID mungkin tidak unik. Misalnya, jika Anda menghapus dan menyisipkan ulang baris dengan utilitas Ekspor/Impor Oracle, ROWID baris mungkin akan berubah. Jika Anda menghapus baris, Oracle dapat menetapkan ulang ROWID-nya ke baris baru yang disisipkan nanti.
  • Tabel yang diatur indeks (IOT) tidak didukung.
  • Tabel sementara tidak didukung.
  • Kolom jenis data ANYDATA, BFILE, INTERVAL DAY TO SECOND, INTERVAL YEAR TO MONTH, LONG/LONG RAW, SDO_GEOMETRY, UDT, UROWID, XMLTYPE tidak didukung, dan diganti dengan nilai NULL.
  • Untuk melakukan streaming kolom jenis data objek besar, seperti objek besar biner (BLOB), objek besar karakter (CLOB), dan objek besar karakter nasional (NCLOB), Anda harus menyertakan tanda streamLargeObjects dalam konfigurasi streaming. Jika Anda tidak menyertakan flag, Datastream tidak akan melakukan streaming kolom tersebut dan kolom tersebut akan diganti dengan nilai NULL di tujuan. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan streaming objek besar untuk sumber Oracle.
  • Untuk Oracle 11g, tabel yang memiliki kolom jenis data ANYDATA atau UDT tidak didukung, dan seluruh tabel tidak akan direplikasi.
  • Oracle Label Security (OLS) tidak direplikasi.
  • Datastream secara berkala mengambil skema terbaru dari sumber saat peristiwa diproses. Jika skema berubah, beberapa peristiwa dari skema baru mungkin dibaca saat skema lama masih diterapkan. Dalam hal ini, Datastream mendeteksi perubahan skema, memicu pengambilan skema, dan memproses ulang peristiwa yang gagal.
  • Tidak semua perubahan pada skema sumber dapat dideteksi secara otomatis. Jika demikian, kerusakan data dapat terjadi. Perubahan skema berikut dapat menyebabkan kerusakan data atau kegagalan untuk memproses peristiwa di downstream:
    • Menghapus kolom
    • Menambahkan kolom ke tengah tabel
    • Mengubah jenis data kolom
    • Mengurutkan ulang kolom
    • Menghapus tabel (relevan jika tabel yang sama kemudian dibuat ulang dengan data baru yang ditambahkan)
    • Memotong tabel
  • Datastream tidak mendukung replikasi tampilan.
  • Datastream mendukung tampilan terwujud. Namun, tampilan baru yang dibuat saat streaming berjalan tidak akan diisi ulang secara otomatis.
  • Saat menggunakan metode Oracle LogMiner, pernyataan SAVEPOINT tidak didukung dan dapat menyebabkan perbedaan data jika terjadi rollback.
  • Datastream mendukung encoding set karakter berikut untuk database Oracle:
    • AL16UTF16
    • AL32UTF8
    • IN8ISCII
    • JA16SJIS
    • JA16SJISTILDE
    • US7ASCII
    • UTF8
    • WE8ISO8859P1
    • WE8ISO8859P9
    • WE8ISO8859P15
    • WE8MSWIN1252
    • ZHT16BIG5
  • Datastream tidak mendukung replikasi nilai tanggal nol. Tanggal tersebut akan diganti dengan nilai NULL.
  • Membuat file log yang sangat besar dapat menyebabkan waktu tunggu Datastream habis, yang dapat menyebabkan kegagalan streaming. Ukuran file log redo yang direkomendasikan adalah di bawah 1 GB.
  • Datastream tidak mendukung konektivitas langsung ke database menggunakan fitur Single Client Access Name (SCAN) di lingkungan Oracle Real Application Clusters (RAC). Untuk mengetahui informasi tentang solusi potensial, lihat Perilaku dan batasan sumber Oracle.
  • Jika sumbernya adalah database standby Oracle Active Data Guard, Datastream tidak mendukung replikasi data terenkripsi.

Batasan tambahan saat menggunakan pembaca biner

  • Pembaca biner tidak mendukung fitur berikut:

    • Transparent Database Encryption (TDE)
    • Hybrid Columnar Compression
    • File aman
    • Metode CDC pembaca biner tidak mendukung pemulihan streaming.
    • ASM tidak didukung untuk sumber Amazon RDS.
    • Metode CDC pembaca biner tidak mendukung Oracle 11g dan versi sebelumnya.

Langkah berikutnya