全部产品
Search
文档中心

:Aktifkan X-Engine

更新时间:Jul 03, 2025

Topik ini menjelaskan cara mengaktifkan X-Engine dan kondisi serta perhatian yang perlu diperhatikan saat proses aktivasi.

Prasyarat

  • Versi revisi kluster Anda harus memenuhi salah satu persyaratan berikut:

    • 8.0.1.1.31 atau lebih baru.

    • 8.0.2.2.12 atau lebih baru.

    Untuk informasi tentang cara memeriksa versi kluster, lihat Kueri versi mesin.

  • X-Engine tidak dapat diaktifkan untuk kluster Kluster Multi-master (Limitless).

  • Node utama kluster harus memiliki setidaknya 8 GB memori. Spesifikasi node baca-saja dalam kluster harus sama atau lebih tinggi dari spesifikasi node utama.

  • Kluster belum bergabung dengan global database network (GDN).

Catatan penggunaan

  • X-Engine memberlakukan batasan pada fitur dan transaksi besar.

    Batasan

    Batasan pada fitur

    Kategori

    Fitur

    Deskripsi

    Fitur SQL

    Kunci asing

    Tidak didukung

    Tabel sementara

    Tidak didukung

    Kolom yang Dihasilkan

    Tidak didukung

    API Handler

    Tidak didukung

    Properti kolom

    Panjang maksimum kolom (longblob/longtext/json)

    32 MB

    Tipe data GIS

    X-Engine tidak mendukung tipe data GIS, termasuk GEOMETRY, POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, dan GEMOMETRYCOLLECTION.

    Indeks

    Indeks hash

    Tidak didukung

    Indeks spasial

    Tidak didukung. X-Engine tidak mendukung pembuatan atau penggunaan indeks teks penuh.

    Transaksi

    Tingkat isolasi transaksi

    X-Engine mendukung tingkat isolasi berikut:

    • Baca Terkonfirmasi (RC)

    • Baca yang Dapat Diulang (RR)

    Jumlah maksimum data yang didukung oleh transaksi

    32 MB

    Savepoint

    Tidak didukung

    Transaksi XA

    X-Engine mendukung transaksi XA internal.

    Kunci

    Granularitas kunci

    • X-Engine mendukung kunci tingkat tabel dan tingkat baris.

    • X-Engine tidak mendukung kunci gap.

    Skip Locked

    Tidak didukung

    Lock Nowait

    Tidak didukung

    Set karakter

    Set karakter yang didukung oleh kolom non-diindeks

    Semua

    Set karakter yang didukung oleh kolom diindeks

    • Latin1 (latin1_bin)

    • GBK (gbk_chinese_ci dan gbk_bin)

    • UTF-8 (utf8_general_ci dan utf8_bin)

    • UTF-8MB4 (utf8mb4_0900_ai_ci, utf8mb4_general_ci, dan utf8mb4_bin)

    Replikasi primer/sekunder

    Format log biner

    X-Engine mendukung format berikut:

    • stmt

    • row

    • mixed

    Catatan

    Secara default, log biner menggunakan format row. Format log stmt dan mixed dapat menyebabkan masalah keamanan data dalam skenario konkurensi tertentu.

    Catatan

    Secara default, fitur X-Engine yang tidak disebutkan dalam tabel sebelumnya memiliki perilaku yang sama dengan InnoDB.

    Batasan pada transaksi besar

    X-Engine tidak mendukung transaksi besar. Jika jumlah baris yang dimodifikasi dalam transaksi mencapai atau melebihi 10.000, X-Engine akan mengaktifkan fitur commit in middle. Dengan cara ini, X-Engine secara internal melakukan commit transaksi dan memulai sub-transaksi untuk melanjutkan pelaksanaan. Namun, fitur commit in middle mungkin tidak menjamin atomicitas transaksi. Perhatikan hal-hal berikut saat menggunakan fitur ini:

    • Jika Anda memulai transaksi untuk menyisipkan sejumlah besar data, sebagian data mungkin sudah dikomit karena fitur commit in middle. Data tersebut dapat diquery oleh permintaan lain.

    • Jika Anda memulai transaksi untuk memodifikasi sejumlah besar data, data yang telah dikomit oleh fitur commit in middle tidak dapat dikembalikan.

      DROP TABLE t1;
      CREATE TABLE t1(c1 int primary key , c2 int)ENGINE=xengine;
      BEGIN;
      call insert_data(12000);// 12.000 baris dimasukkan dan operasi commit in middle dipicu. Akibatnya, 10.000 baris pertama data dikomit. 
      rollback;// Anda hanya dapat mengembalikan 2.000 baris terakhir. 
      SELECT COUNT(*) FROM t1;// 10.000 baris data yang telah dikomit dapat diquery. 
      +----------+
      | COUNT(*) |
      +----------+
      |    10000 |
      +----------+
      1 row in set (0.00 sec)
    • Jika Anda ingin memodifikasi atau menghapus sejumlah besar data dalam transaksi, operasi DELETE tidak dapat membaca baris yang telah dikomit dalam transaksi ini karena fitur commit in middle. Akibatnya, Anda tidak dapat menghapus data yang baru saja dikomit.

      DROP TABLE t1;
      CREATE TABLE t1(c1 int primary key , c2 int)ENGINE=xengine;
      call insert_data(10000);
      BEGIN;
      INSERT INTO t1 VALUES(10001,10001), (10002,10002);
      DELETE FROM t1 WHERE c1 >= 0;// Operasi penghapusan memicu operasi commit in middle, dan dua baris data yang dimasukkan oleh transaksi saat ini tidak dihapus. 
      commit;
      SELECT * FROM t1;
      +-------+-------+
      | c1    | c2    |
      +-------+-------+
      | 10001 | 10001 |
      | 10002 | 10002 |
      +-------+-------+
      2 rows in set (0.00 sec)
  • Sistem akan memulai ulang kluster secara otomatis setelah Anda mengaktifkan X-Engine. Selama pemulihan, kluster akan mengalami pemutusan sementara selama 30 detik. Kami menyarankan Anda melakukan operasi ini selama jam-jam sepi dan memastikan aplikasi Anda dapat tersambung kembali ke kluster secara otomatis.

  • Setelah mengaktifkan X-Engine, perhatikan hal-hal berikut:

    • Untuk menghindari akses tak terduga ke tabel yang disimpan di X-Engine, Anda tidak dapat menonaktifkan X-Engine.

    • Kluster tidak dapat bergabung dengan GDN.

Prosedur

Anda dapat menggunakan salah satu metode berikut untuk mengaktifkan X-Engine:

Metode 1: Aktifkan X-Engine untuk kluster yang ada

  1. Masuk ke Konsol PolarDB. Klik Clusters di panel navigasi di sebelah kiri. Pilih wilayah di pojok kiri atas dan klik ID kluster yang ingin Anda kelola untuk masuk ke halaman Informasi Dasar.

  2. Di panel navigasi di sebelah kiri, pilih Settings and Management > Data Lifecycle, klik tab X-Engine (Warm Data), lalu klik Enable.

    Catatan

    Jika Anda tidak melihat tab X-Engine (Warm Data), periksa apakah kluster Anda memenuhi prasyarat. Untuk informasi lebih lanjut, lihat Prasyarat.

    image

  3. Di kotak dialog Set X-Engine Proportion, konfigurasikan proporsi penggunaan data dan memori untuk X-Engine sesuai skenario bisnis Anda, lalu klik Enable Now.

    Tabel berikut memberikan proporsi yang direkomendasikan untuk tiga skenario tipikal. Anda dapat menyesuaikan proporsi berdasarkan kebutuhan bisnis.

    Skenario

    InnoDB (%)

    X-Engine (%)

    Gunakan InnoDB untuk data panas dan X-Engine untuk data dingin. Data dingin diklasifikasikan sebagai data yang jarang diakses.

    80

    20

    Gunakan InnoDB untuk data panas dan X-Engine untuk data dingin. Data dingin masih diperbarui dan dapat diquery.

    50

    50

    Gunakan InnoDB untuk sejumlah kecil data dan X-Engine untuk sejumlah besar data yang memerlukan pembaruan atau query.

    20

    80

    Catatan
    • Setelah mengaktifkan X-Engine, Anda dapat menyesuaikan proporsi berdasarkan skenario bisnis aktual Anda di tab X-Engine (Warm Data). Untuk mengakses tab ini, masuk ke Konsol PolarDB dan pilih Settings and Management > Data Lifecycle.

    • Nilai X-Engine (%) berkisar antara 10% hingga 90%. Jika Anda menggunakan mesin X-Engine untuk menyimpan semua tabel dan tidak ada tabel InnoDB yang ada, Anda dapat menetapkan X-Engine (%) menjadi 90%.

Metode 2: Pilih X-Engine sebagai mesin penyimpanan saat Anda membeli kluster

Saat membeli kluster PolarDB for MySQL, Anda dapat menetapkan parameter Storage Engine ke InnoDB & X-Engine dan menyesuaikan nilai X-Engine (%). Untuk informasi lebih lanjut, lihat parameter Storage Engine yang dijelaskan di Beli Kluster.

Catatan

Setelah mengaktifkan X-Engine, Anda dapat menyesuaikan proporsi berdasarkan skenario bisnis aktual Anda di tab X-Engine (Warm Data). Untuk mengakses tab ini, masuk ke Konsol PolarDB dan pilih Settings and Management > Data Lifecycle.

image

image