All Products
Search
Document Center

PolarDB:Aktifkan X-Engine

Last Updated:Sep 25, 2026

Topik ini menjelaskan cara mengaktifkan X-Engine Edition, serta kondisi dan tindakan pencegahan selama proses pengaktifan.

Prasyarat

  • Versi engine harus memenuhi persyaratan berikut:

    • 8.0.1.1.31 atau versi yang lebih baru.

    • 8.0.2.2.12 atau versi yang lebih baru.

    Untuk memeriksa versi kluster, lihat Query the version number.

  • Multi-master Cluster (Limitless) tidak mendukung pengaktifan X-Engine Edition.

  • Spesifikasi node read-write (RW) kluster harus minimal 8 GB. Spesifikasi node read-only (RO) dalam kluster harus lebih besar dari atau sama dengan spesifikasi node RW.

  • Kluster belum bergabung ke Global Database Network (GDN).

Catatan penggunaan

  • X-Engine Edition memiliki batasan pada fitur engine dan transaksi besar.

    Batasan

    Batasan fitur engine

    Kategori

    Fitur

    Deskripsi

    Fitur SQL

    foreign key

    Tidak didukung

    temporary table

    Tidak didukung

    generated column

    Tidak didukung

    handler API

    Tidak didukung

    Kolom dan properti kolom

    Jumlah maksimum kolom per tabel

    10.000

    maximum record length

    256 MB

    GIS data type

    X-Engine tidak mendukung tipe data apa pun yang terkait GIS, termasuk geometry, point, linestring, polygon, multipoint, multilinestring, multipolygon, dan geometrycollection.

    index

    hash index

    Tidak didukung

    spatial index

    Tidak didukung. Fitur untuk full-text index juga tidak didukung.

    transaksi

    transaction isolation level

    Dua tingkat isolasi berikut ini didukung:

    • Read committed (RC)

    • Repeatable read (RR)

    Maximum rows per transaction

    Secara default, satu transaksi dapat berisi hingga 100.000 baris. Anda dapat mengubah batas ini dengan menggunakan parameter loose_xengine_bulk_load_size.

    savepoint

    Tidak didukung

    XA transaction

    Transaksi XA internal didukung.

    kunci

    lock granularity

    • Kunci tingkat tabel dan kunci tingkat baris didukung.

    • Gap lock tidak didukung.

    Skip Locked

    Tidak didukung

    Lock Nowait

    Tidak didukung

    character set

    Character set yang didukung untuk kolom non-indexed

    Semua character set dan collation didukung untuk kolom non-indexed.

    Character set yang didukung untuk kolom indexed

    • latin1 (latin1_bin)

    • gbk (gbk_chinese_ci, gbk_bin)

    • utf8 (utf8_general_ci, utf8_bin, utf8_unicode_ci)

    • utf8mb4 (utf8mb4_0900_ai_ci, utf8mb4_general_ci, utf8mb4_bin, utf8mb4_unicode_ci)

    primary/secondary replication

    binary log format

    Tiga format berikut ini didukung:

    • stmt

    • row

    • mixed

    Catatan

    Format default adalah row. Penggunaan format stmt atau mixed dapat membahayakan keamanan data dalam skenario konkurensi tinggi tertentu.

    Catatan

    For any features not listed in this topic, X-Engine behaves identically to InnoDB.

    Batasan transaksi besar

    X-Engine tidak mendukung transaksi besar. Ketika suatu transaksi memodifikasi 10.000 baris atau lebih, X-Engine mengaktifkan fitur commit in middle. Fitur ini menyebabkan X-Engine melakukan commit internal terhadap transaksi saat ini dan memulai sub-transaksi baru untuk melanjutkan operasi. Namun, fitur commit in middle tidak menjamin atomicity transaksi secara ketat. Perhatikan implikasi berikut:

    • Jika Anda memulai transaksi untuk memasukkan volume data yang besar, fitur commit in middle mungkin melakukan commit sebagian data sebelum transaksi selesai. Data yang telah di-commit sebagian tersebut menjadi terlihat oleh transaksi konkuren lainnya.

    • Anda tidak dapat melakukan rollback penuh terhadap transaksi yang telah di-commit sebagian oleh fitur commit in middle.

      DROP TABLE t1;
      CREATE TABLE t1(c1 int primary key , c2 int)ENGINE=xengine;
      BEGIN;
      call insert_data(12000); // Insert 12.000 rows to trigger commit in middle. The first 10.000 rows are committed.
      rollback;// The rollback operation can only undo the last 2.000 rows.
      SELECT COUNT(*) FROM t1; // The query still finds the 10.000 committed rows.
      +----------+
      | COUNT(*) |
      +----------+
      |    10000 |
      +----------+
      1 row in set (0.00 sec)
    • Karena fitur commit in middle, jika suatu transaksi memasukkan lalu menghapus sejumlah besar baris, operasi DELETE mungkin tidak melihat baris yang baru saja dimasukkan.

      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; // The DELETE operation triggers commit in middle, causing it to miss the rows inserted within the same transaction.
      commit;
      SELECT * FROM t1;
      +-------+-------+
      | c1    | c2    |
      +-------+-------+
      | 10001 | 10001 |
      | 10002 | 10002 |
      +-------+-------+
      2 rows in set (0.00 sec)
  • Mengaktifkan X-Engine Edition secara otomatis akan me-restart kluster. Selama restart, terjadi gangguan koneksi sementara hingga 30 detik. Sebagai praktik terbaik, lakukan operasi ini pada jam sepi dan pastikan aplikasi Anda memiliki mekanisme reconnect.

  • Setelah Anda mengaktifkan X-Engine Edition:

    • Untuk menghindari pengecualian akses pada tabel yang sudah disimpan dalam X-Engine Edition, fitur ini tidak dapat dinonaktifkan.

    • Bergabung ke Global Database Network (GDN) tidak didukung.

Parameter

Setelah Anda mengaktifkan X-Engine Edition, jika perlu mengarsipkan partisi dari tabel partisi ke format X-Engine, Anda harus mengatur secara manual parameter kernel berikut pada halaman Parameters kluster. Untuk deskripsi lengkap parameter dan batasan penggunaan partisi hibrida, lihat Create a hybrid partition.

Parameter

Level

Description

loose_polar_allow_create_hybrid_partition

Global

Specifies whether to allow creating or archiving partitioned tables that contain partitions of engines other than InnoDB. Valid values:

  • OFF (default): Creating partitioned tables that contain partitions of engines other than InnoDB is not allowed. All partitions must use the InnoDB engine.

  • ON (recommended): Creating partitioned tables that contain partitions of engines other than InnoDB is allowed. You can specify the X-Engine engine at the partition level.

Catatan

Parameter di atas hanya berlaku untuk kluster versi 8.0.2 dengan revisi versi 8.0.2.2.34.1 atau lebih baru.

Prosedur

Anda dapat mengaktifkan high-compression engine (X-Engine) menggunakan salah satu dari dua metode berikut.

Metode 1: Aktifkan high-compression engine (X-Engine) dengan satu klik pada kluster yang sudah ada

  1. Log in to the PolarDB console,In the navigation pane on the left, click Clusters. Select the Region where the cluster is deployed, and then click the cluster ID to go to the cluster details page。

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

  3. Catatan
    • Jika Anda tidak melihat tab X-Engine (Warm Data), periksa apakah kluster Anda memenuhi Prasyarat.

    • Setelah high-compression storage engine diaktifkan untuk kluster, fitur ini tidak dapat dinonaktifkan. Pengaktifannya memerlukan restart kluster, yang menyebabkan 1 hingga 2 gangguan koneksi sementara hingga 30 detik.

  4. Pada kotak dialog, Anda dapat menyesuaikan proporsi resource memori untuk X-Engine Edition berdasarkan skenario bisnis Anda, lalu klik Enable Now.

    Tabel berikut mencantumkan konfigurasi proporsi resource memori untuk mesin penyimpanan dalam tiga skenario umum sebagai referensi. Anda dapat mengonfigurasi proporsi tersebut sesuai skenario bisnis aktual Anda.

    Applicable scenario

    InnoDB engine memory resource proportion (%)

    X-Engine memory resource proportion (%)

    The InnoDB engine stores hot data, the X-Engine engine stores cold data, and the archived cold data is rarely accessed.

    80

    20

    The InnoDB engine stores hot data, the X-Engine engine stores cold data, and the archived cold data is still updated or queried.

    50

    50

    The InnoDB engine stores a small number of tables, the X-Engine engine stores a large number of tables, and the data is updated or queried.

    20

    80

    Catatan
    • Setelah high-compression engine (X-Engine) diaktifkan, Anda dapat menyesuaikan proporsi resource memori kapan saja sesuai skenario bisnis Anda pada halaman Settings and Management > Data Lifecycle kluster, pada tab X-Engine (Warm Data).

    • Proporsi resource memori X-Engine dapat diatur dalam rentang 10% hingga 90%. Jika Anda menggunakan engine X-Engine untuk menyimpan semua tabel dan tidak memiliki tabel engine InnoDB, Anda dapat mengatur proporsi resource memori X-Engine menjadi 90%.

Metode 2: Pilih high-compression engine (X-Engine) saat membeli kluster baru

Saat membeli kluster PolarDB for MySQL baru, Anda dapat mengatur mesin penyimpanan menjadi InnoDB & X-Engine, dan menggunakan slider pada X-Engine Memory Usage untuk mengatur proporsi penyimpanan antara X-Engine dan InnoDB. Rentangnya adalah 10% hingga 90%. Misalnya, ketika nilai diatur ke 50%, prompt di bawah menampilkan X-Engine:4 GB;InnoDB:4 GB. Lihat Purchase a cluster untuk informasi lebih lanjut tentang opsi Storage Engine.

Catatan

Setelah high-compression engine (X-Engine) diaktifkan, Anda dapat menyesuaikan proporsi resource memori kapan saja sesuai skenario bisnis Anda pada halaman Settings and Management > Data Lifecycle kluster, pada tab X-Engine (Warm Data).