All Products
Search
Document Center

SchedulerX:Model sharding multibahasa

Last Updated:Aug 25, 2026

SchedulerX menjadwalkan berbagai jenis pekerjaan, termasuk pekerjaan berjadwal, alur kerja terkoordinasi, dan eksekusi ulang data historis. SchedulerX menyediakan model sharding untuk Java, Python, Shell, dan Go guna mendukung pemrosesan data skala besar.

Informasi latar belakang

Model sharding mencakup sharding statis dan sharding dinamis.

  • Sharding statis: Model ini digunakan untuk memproses jumlah shard tetap. Misalnya, Anda dapat menggunakannya untuk memproses 1.024 tabel yang telah di-shard pada beberapa mesin dalam lingkungan terdistribusi.

  • Sharding dinamis: Model ini digunakan untuk pemrosesan data terdistribusi dengan volume yang tidak diketahui. Misalnya, Anda dapat menggunakannya untuk pemrosesan batch pada tabel besar yang sering diperbarui. Kerangka kerja utama untuk model ini adalah model MapReduce yang disediakan oleh SchedulerX, yang saat ini belum bersifat open source.

Fitur

Model sharding multibahasa juga menyediakan fitur-fitur berikut.

  • Kompatibel dengan model sharding statis dari elastic-job.

  • Mendukung empat bahasa: Java, Python, Shell, dan Go.

  • High availability (HA): Model sharding didasarkan pada model MapReduce dan mewarisi fitur HA-nya. Jika sebuah worker gagal selama eksekusi, master worker secara otomatis melakukan failover shard tersebut ke node slave lainnya.

  • Pembatasan kecepatan (throttling): Model sharding didasarkan pada model MapReduce dan mewarisi fitur throttling-nya. Anda dapat mengontrol konkurensi tugas pada satu mesin. Misalnya, dengan 1.000 shard dan 10 mesin, Anda dapat membatasi setiap mesin agar menjalankan maksimal lima shard secara konkuren. Shard lainnya akan menunggu dalam antrian.

  • Retry otomatis untuk shard yang gagal: Model sharding didasarkan pada model MapReduce dan mewarisi kemampuannya untuk secara otomatis melakukan retry pada sub-tugas yang gagal.

Anda dapat mengatur ketersediaan dan pembatasan kecepatan dalam konfigurasi lanjutan saat membuat pekerjaan. Untuk informasi lebih lanjut, lihat Buat pekerjaan penjadwalan dan Parameter konfigurasi lanjutan untuk manajemen pekerjaan.

Catatan

Model sharding multibahasa hanya didukung pada versi client 1.1.0 dan yang lebih baru.

Pekerjaan sharding Java

  1. Masuk ke Konsol SchedulerX.

  2. Pada bilah navigasi atas, pilih Wilayah.

  3. Di panel navigasi sebelah kiri, pilih Job Management.

  4. Pada halaman Job Management, pilih namespace yang dituju, lalu klik Create Job di pojok kiri atas.

  5. Pada panel Create Job, di tab Basic Configuration, atur Execution Mode menjadi Sharded Run, konfigurasikan Shard Parameters, lalu klik Next.

    Pisahkan beberapa parameter shard dengan koma (,) atau baris baru. Contohnya, Shard ID 1=Shard parameter 1,Shard ID 2=Shard parameter 2,....

    image

  6. Dalam kode aplikasi, wariskan JavaProcessor. Gunakan JobContext.getShardingId() untuk mengambil ID shard dan JobContext.getShardingParameter() untuk mengambil parameter shard.

    Contoh:

    @Component
    public class HelloWorldProcessor extends JavaProcessor {
        @Override
        public ProcessResult process(JobContext context) throws Exception {
            System.out.println("Shard ID=" + context.getShardingId() + ", Shard parameter=" + context.getShardingParameter());
            return new ProcessResult(true);
        }
    }
  7. Pada halaman Execution List, klik Details di kolom Actions untuk pekerjaan yang dituju guna melihat detail shard.

    分片任务实例详情

Pekerjaan sharding Python

Untuk menggunakan pemrosesan batch terdistribusi pada aplikasi Python, Anda hanya perlu menginstal agent. SchedulerX kemudian dapat mengelola skrip tersebut.

  1. Unduh agent SchedulerX dan gunakan untuk men-deploy pekerjaan skrip.

  2. Buat pekerjaan sharding Python di SchedulerX. Untuk informasi lebih lanjut, lihat Buat pekerjaan penjadwalan.

    sys.argv[1] adalah ID shard, dan sys.argv[2] adalah parameter shard.

    Pisahkan beberapa parameter shard dengan koma (,) atau baris baru. Contohnya, Shard ID 1=Shard parameter 1,Shard ID 2=Shard parameter 2,....

    Python 分片任务

  3. Pada halaman Execution List, klik Details di kolom Actions untuk pekerjaan yang dituju guna melihat detail shard.

    分片任务实例详情

Pekerjaan sharding Shell dan Go

Proses pembuatan pekerjaan sharding Shell dan Go mirip dengan pekerjaan sharding Python. Untuk informasi lebih lanjut, lihat Pekerjaan sharding Python.