Membagi feed adalah memecah seluruh feed menjadi beberapa subset yang tidak beririsan. Bergantung pada sistem backend, jenis, dan ukuran armada Anda, sharding mungkin diperlukan.
Kapan harus melakukan sharding
Jika ukuran feed terlalu besar (lebih dari 50 MB), hal ini dapat menyebabkan masalah performa saat partner mencoba memenuhi persyaratan keaktualan data.
Sistem backend partner mengalami kesulitan teknis dalam menggabungkan informasi armada di seluruh sistem di berbagai negara.
Untuk mencegah sharding mengganggu performa sistem, sebaiknya lakukan hal berikut untuk setiap sistem mobilitas mikro:
Tanpa dok: Sebaiknya pertahankan jumlah shard seminimal mungkin dan buat setiap shard sebesar mungkin secara logis. Setiap shard harus mencakup area layanan geografis setidaknya sebesar area metropolitan atau lebih besar.
Disambungkan: Sharding diizinkan dan partner dianjurkan untuk melakukan sharding feed menurut wilayah metropolitan.
Peraturan umum
Setiap shard harus berisi kumpulan lengkap file GBFS yang dapat sepenuhnya mendeskripsikan sistem dan dapat digunakan secara independen.
Semua informasi yang relevan harus ada dalam satu shard dan tidak ada referensi silang dengan shard lain. Misalnya, kendaraan tanpa stasiun pengisian daya di Shard A tidak dapat mereferensikan paket harga sistem dari Shard B. Sebagai gantinya, paket harganya harus ditentukan dalam Shard A.
Semua shard tidak boleh beririsan. Jika kendaraan tanpa stasiun atau stasiun dengan dok ditampilkan dalam dua shard yang berbeda, kendaraan atau stasiun tersebut akan diperlakukan sebagai dua entity terpisah, dan informasi duplikat akan ditampilkan kepada pengguna.
Geofence yang ditentukan dalam satu shard tidak boleh tumpang-tindih dengan geofence yang ditentukan dalam shard terpisah.
Geofence tidak boleh menggunakan susunan berlawanan arah jarum jam yang merujuk ke area di luar poligon.