Ekspor Pro

Action: Export Record ProStandard Edition+

Pengantar

Plugin Ekspor Pro menyediakan fitur tambahan di atas fitur ekspor biasa.

Instalasi

Plugin ini bergantung pada Plugin Manajemen Tugas Asynchronous, sebelum digunakan harus mengaktifkan Plugin Manajemen Tugas Asynchronous terlebih dahulu.

Peningkatan Fitur

  • Mendukung Action ekspor asynchronous, dieksekusi di thread independen, mendukung ekspor data dalam jumlah besar.
  • Mendukung ekspor lampiran.

Panduan Penggunaan

Konfigurasi Mode Ekspor

20251029172829

20251029172914

Pada tombol ekspor, Anda dapat mengkonfigurasi mode ekspor. Tiga mode ekspor yang tersedia:

  • Otomatis: Menentukan mode ekspor berdasarkan jumlah data saat ekspor. Jika jumlah data kurang dari 1000 record (100 record untuk ekspor lampiran), gunakan ekspor sinkron. Jika jumlah data lebih dari 1000 record (100 record untuk ekspor lampiran), gunakan ekspor asynchronous.
  • Sinkron: Menggunakan ekspor sinkron, akan dijalankan di thread utama saat ekspor, cocok untuk data skala kecil. Jika dieksekusi ekspor data skala besar dalam mode sinkron, mungkin akan menyebabkan sistem terblokir, lag, dan tidak dapat menangani request pengguna lain.
  • Asynchronous: Menggunakan ekspor asynchronous, akan dieksekusi di thread background independen saat ekspor, tidak akan memblokir penggunaan sistem saat ini.

Ekspor Asynchronous

Setelah ekspor dieksekusi, alur ekspor akan dieksekusi di thread background independen tanpa konfigurasi manual pengguna. Di antarmuka pengguna, setelah Action ekspor dieksekusi, di bagian kanan atas akan ditampilkan tugas ekspor yang sedang dieksekusi, dan progress tugas akan ditampilkan secara real-time.

20251029173028

Setelah ekspor selesai, Anda dapat mendownload file yang diekspor di tugas ekspor.

Ekspor Concurrent

Ketika ada banyak tugas ekspor concurrent, akan terpengaruh oleh konfigurasi server, sehingga menyebabkan respons sistem melambat. Oleh karena itu, disarankan kepada developer sistem untuk mengkonfigurasi jumlah maksimum konkurensi ekspor tugas (default 3). Ketika melebihi jumlah konkurensi yang dikonfigurasi, akan masuk ke status antrian. 20250505171706

Cara konfigurasi konkurensi: Variabel lingkungan ASYNC_TASK_MAX_CONCURRENCY=jumlah konkurensi

Dalam pengujian komprehensif konfigurasi yang berbeda dan kompleksitas data, jumlah konkurensi yang direkomendasikan:

  • 2 core CPU, jumlah konkurensi 3.
  • 4 core CPU, jumlah konkurensi 5.

Tentang Performa

Ketika Anda menemukan proses ekspor sangat lambat (referensi sebagai berikut), mungkin disebabkan oleh masalah performa karena struktur Collection.

Karakteristik DataTipe IndexJumlah DataDurasi Ekspor
Tanpa Field relasiPrimary key/unique constraint1 juta3-6 menit
Tanpa Field relasiIndex biasa1 juta6-10 menit
Tanpa Field relasiIndex gabungan (non-unique)1 juta30 menit
Field relasi
(one-to-one, one-to-many,
many-to-one, many-to-many)
Primary key/unique constraint500 ribu15-30 menit

Untuk memastikan ekspor yang efisien, Anda disarankan:

  1. Collection harus memenuhi kondisi berikut:
Tipe KondisiKondisi WajibPenjelasan Lainnya
Struktur Table (minimal memenuhi salah satu)Memiliki primary key
Memiliki unique constraint
Memiliki index (unique, biasa, gabungan)
Prioritas: primary key > unique constraint > index
Karakteristik FieldPrimary key/unique constraint/index (salah satu) harus memiliki karakteristik yang dapat di-sort, seperti: auto-increment ID, snowflake ID, UUID v1, timestamp, angka, dll.
(Perhatian: UUID v3/v4/v5, string biasa, dan Field yang tidak dapat di-sort lainnya akan mempengaruhi performa)
Tidak ada
  1. Kurangi Field yang tidak perlu diekspor, terutama Field relasi (masalah performa Field relasi masih dalam optimasi) 20250506215940
  2. Jika sudah memenuhi kondisi di atas tetapi masih ada fenomena ekspor lambat, dapat melakukan analisis log atau memberikan feedback ke tim resmi. 20250505182122