Database Oracle sumber

Bagian ini berisi informasi tentang:

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

Perilaku

Database Oracle sumber mengandalkan fitur Oracle Logminer-nya untuk mengekspos perubahan pada data.

  • 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 manipulasi 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, catatan output Datastream juga menyertakan operasi sebaliknya. Misalnya, jika ada operasi INSERT yang di-roll back, maka data output juga akan berisi operasi DELETE yang sesuai. Dalam hal ini, peristiwa tersebut akan muncul sebagai peristiwa DELETE hanya dengan ROWID.

Versi

Datastream mendukung versi database Oracle berikut:

  • Oracle 11g, Versi 11.2.0.4
  • 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 infrastruktur lokal atau di penyedia cloud apa pun
  • Amazon RDS untuk Oracle
  • Oracle Cloud
  • Oracle Exadata
  • RAC Oracle

Penyiapan

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

Lihat Mengonfigurasi database Oracle sumber untuk mempelajari cara mengonfigurasi database ini sehingga Datastream dapat menarik data dari database tersebut ke tujuan.

Batasan umum

Batasan umum untuk menggunakan database Oracle sebagai sumber meliputi:

  • Tabel yang memiliki lebih dari 500 juta baris tidak dapat diisi ulang kecuali jika kondisi berikut terpenuhi:
    1. Tabel memiliki indeks unik.
    2. Indeks ini juga harus berupa pohon B, yang merupakan indeks default. Indeks dapat bersifat komposit.
    3. Indeks tidak dapat dibalik.
    4. Indeks tidak boleh berisi kolom berbasis fungsi.
    5. Tidak ada kolom indeks yang nullable.
    6. Indeks tidak menyertakan kolom jenis DATE yang berisi tanggal negatif sebagai nilai.
    7. Semua kolom indeks disertakan dalam aliran data.
  • Streaming dibatasi hingga 10.000 tabel.
  • Datastream mendukung arsitektur multi-tenant Oracle (CDB/PDB), tetapi Anda hanya dapat mereplikasi satu database yang dapat dicocokkan dalam satu stream.
  • Oracle Autonomous Database tidak didukung.
  • Untuk tabel yang tidak memiliki kunci utama, Datastream menggunakan ROWID baris untuk melakukan operasi penggabungan di sisi konsumen. Perlu diperhatikan bahwa ROWID mungkin tidak unik. Misalnya, jika Anda menghapus dan menyisipkan ulang baris dengan utilitas Export/Import Oracle, ROWID baris dapat 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.
  • Untuk kolom jenis BFILE, hanya jalur ke file yang akan direplikasi. Isi file tidak direplikasi.
  • Kolom jenis data ANYDATA, 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 flag streamLargeObjects dalam konfigurasi aliran data. Jika Anda tidak menyertakan tanda, 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, dalam hal ini kerusakan data dapat terjadi. Perubahan skema berikut dapat menyebabkan kerusakan data atau kegagalan untuk memproses downstream peristiwa:
    • Meletakkan kolom
    • Menambahkan kolom ke tengah tabel
    • Mengubah tipe data kolom
    • Menyusun ulang kolom
    • Melepaskan tabel (relevan jika tabel yang sama kemudian dibuat ulang dengan data baru ditambahkan)
    • Tabel pemotongan
  • Datastream tidak mendukung replikasi tampilan.
  • Datastream mendukung tampilan terwujud. Namun, tampilan baru yang dibuat saat streaming berjalan tidak akan diisi ulang secara otomatis.
  • Pernyataan SAVEPOINT tidak didukung dan dapat menyebabkan perbedaan data jika terjadi rollback.
  • Datastream mendukung encoding himpunan karakter berikut untuk database Oracle:
    • AL16UTF16
    • AL32UTF8
    • IN8ISCII
    • JA16SJIS
    • US7ASCII
    • UTF8
    • WE8ISO8859P1
    • WE8ISO8859P9
    • WE8ISO8859P15
    • WE8MSWIN1252
    • ZHT16BIG5
  • Datastream tidak mendukung replikasi nilai tanggal nol. Tanggal tersebut diganti dengan nilai NULL.
  • Menghasilkan file log yang sangat besar dapat menyebabkan Datastream kehabisan waktu, yang dapat menyebabkan kegagalan streaming. Ukuran file log ulangi yang direkomendasikan adalah di bawah 1 GB.
  • Datastream tidak mendukung konektivitas langsung ke database yang menggunakan fitur Single Client Access Name (SCAN) di lingkungan Oracle Real Application Clusters (RAC). Untuk mengetahui informasi tentang kemungkinan solusi, lihat Perilaku dan batasan sumber Oracle.