All Products
Search
Document Center

SchedulerX:Model sharding untuk berbagai bahasa pemrograman

Last Updated:Jul 02, 2025

Anda dapat menggunakan SchedulerX untuk menjadwalkan pekerjaan, seperti memicu pekerjaan pada waktu tertentu, membuat alur kerja untuk mengoordinasikan tugas, atau memperbarui hasil keluaran suatu pekerjaan. SchedulerX juga menyediakan model sharding untuk Java, Python, Shell, dan Go guna mendukung komputasi data besar.

Informasi latar belakang

Model sharding mencakup model sharding statis dan dinamis.

  • Sharding Statis: Model ini cocok untuk memproses sejumlah shard tetap. Contohnya, Anda dapat menggunakannya untuk memproses 1.024 tabel dalam pekerjaan sharding tabel di beberapa pekerja dalam skenario komputasi terdistribusi.

  • Sharding Dinamis: Model ini cocok untuk memproses data dengan volume yang tidak diketahui dalam skenario komputasi terdistribusi. Misalnya, jika memiliki tabel besar yang terus diperbarui, Anda dapat memproses tabel tersebut secara bertahap. Kerangka MapReduce yang disediakan oleh SchedulerX adalah solusi utama, namun tidak bersifat open source.

Fitur

Model sharding memiliki fitur berikut:

  • Kompatibilitas dengan elastic-job untuk model sharding statis.

  • Dukungan untuk Java, Python, Shell, dan Go.

  • Tingkat ketersediaan tinggi: Model sharding dibangun berdasarkan kerangka MapReduce dan menjamin tingkat ketersediaan tinggi. Jika pekerja gagal, pekerja master akan secara otomatis memindahkan shard ke pekerja lain.

  • Pembatasan trafik: Model sharding mendukung pembatasan trafik, memungkinkan Anda mengontrol konkurensi tugas pada pekerja tunggal. Sebagai contoh, jika terdapat 1.000 shard dan 10 pekerja, Anda dapat mengonfigurasi setiap pekerja untuk menjalankan maksimal lima shard secara paralel, sementara shard lainnya menunggu dalam antrian.

  • Pengaturan ulang shard otomatis: Model sharding mendukung pengaturan ulang shard otomatis untuk menjalankan ulang tugas yang gagal secara otomatis.

Anda dapat mengonfigurasi fitur ketersediaan tinggi dan pembatasan trafik di pengaturan lanjutan saat membuat pekerjaan. Untuk informasi lebih lanjut, lihat bagian Buat Pekerjaan dari topik "Manajemen Pekerjaan" dan Parameter Lanjutan untuk Manajemen Pekerjaan.

Catatan

Hanya agen versi 1.1.0 dan yang lebih baru yang mendukung model sharding multi-bahasa.

Buat pekerjaan sharding Java

  1. Masuk ke Konsol SchedulerX.

  2. Di bilah navigasi atas, pilih wilayah.

  3. Di panel navigasi sisi kiri, klik Task Management.

  4. Di halaman Jobs, pilih namespace tempat Anda ingin membuat pekerjaan dari daftar drop-down Namespace dan klik Create task.

  5. Pada langkah Basic configuration dalam wizard Create task, atur parameter Execution mode ke Shard run dan tentukan Sharding parameters. Kemudian, klik Next Step.

    Pisahkan beberapa parameter sharding dengan koma (,) atau tentukan hanya satu parameter sharding di setiap baris. Contoh: Shard index 1=Shard parameter 1,Shard index 2=Shard parameter 2,....

    image

  6. Di dalam kode aplikasi, turunkan JavaProcessor, gunakan JobContext.getShardingId() untuk mendapatkan indeks shard, dan gunakan JobContext.getShardingParameter() untuk mendapatkan parameter sharding yang sesuai.

    Contoh kode:

    @Component
    public class HelloWorldProcessor extends JavaProcessor {
        @Override
        public ProcessResult process(JobContext context) throws Exception {
            System.out.println("Indeks shard=" + context.getShardingId() + ", Parameter shard=" + context.getShardingParameter());
            return new ProcessResult(true);
        }
    }
  7. Di halaman Instances, temukan pekerjaan yang ingin Anda lihat dan klik Details di kolom Operation.

Buat pekerjaan sharding Python

Untuk mengonfigurasi aplikasi Python agar melakukan pemrosesan batch terdistribusi, cukup instal agen SchedulerX. Anda dapat menggunakan SchedulerX untuk memelihara skrip.

  1. Unduh agen SchedulerX dan gunakan agen tersebut untuk menerapkan pekerjaan skrip.

  2. Buat pekerjaan sharding Python di SchedulerX. Untuk informasi lebih lanjut, lihat bagian Create a Job dari topik "Job Management".

    sys.argv[1] menunjukkan indeks shard dan sys.argv[2] menunjukkan parameter sharding.

    Pisahkan beberapa parameter sharding dengan koma (,) atau tentukan hanya satu parameter sharding di setiap baris. Contoh: Shard index 1=Shard parameter 1,Shard index 2=Shard parameter 2,....

  3. Di halaman Instances, temukan pekerjaan yang ingin Anda lihat dan klik Details di kolom Operation.

Buat pekerjaan sharding Shell atau pekerjaan sharding Go

Anda dapat membuat pekerjaan sharding Shell atau pekerjaan sharding Go dengan cara serupa seperti membuat pekerjaan sharding Python. Untuk informasi lebih lanjut, lihat bagian Buat Pekerjaan Sharding Python dari topik ini.