Partizionamento orizzontale del feed

Per impostare un feed devi suddividere l'intero feed in più sottoinsiemi che non si intersecano. A seconda dei sistemi di backend, dei tipi di flotta e delle dimensioni, potrebbe essere necessario l'analisi.

Quando eseguire lo sharding

  • Se la dimensione del feed è troppo grande, questo può causare problemi di prestazioni quando il partner cerca di seguire i requisiti di aggiornamento dei dati.

  • Il sistema di backend del partner ha difficoltà tecniche a combinare le informazioni del parco risorse su più sistemi in diversi paesi.

  • Per evitare che lo sharding comprometta le prestazioni del sistema, consigliamo quanto segue per ogni sistema di micromobilità:

    • Dockless: il Sharding è sconsigliato, ma consentito. Ti consigliamo vivamente di mantenere il numero minimo di shard e di rendere ciascuno shard il più grande possibile in modo logico.

      Ogni shard deve coprire un'area geografica di servizio almeno la dimensione di un'area metropolitana o più grande. Ad esempio, anche se Google consente a uno shard di contenere solo una singola area metropolitana come New York, sono preferibili gli shard di grandi dimensioni come quello che copre l'intera area EMEA.

    • Agganciato: è consentito lo sharding e si consiglia ai partner di eseguire lo sharding del feed in base alle aree metropolitane.

Regole generali

  • Ogni shard deve contenere un set completo di file GBFS che possono descrivere completamente il sistema e possono essere utilizzati in modo indipendente.

  • Tutte le informazioni pertinenti devono essere contenute in un unico shard e non è consentito alcun riferimento incrociato con altri shard. Ad esempio, un veicolo senza docking in Shard A non può fare riferimento a un piano tariffario del sistema di Shard B. Il piano tariffario deve essere invece definito all'interno dello Shard A.

  • Tutti gli shard devono non essere intersecati. Nel caso in cui un veicolo senza dock o una stazione ancorata sia presentato in due shard diversi, viene considerato come due entità separate e le informazioni duplicate verranno presentate agli utenti.

  • Le aree geografiche definite in uno shard non devono sovrapporsi a quelle definite in uno shard separato.

  • Le aree geografiche non devono utilizzare una disposizione in senso antiorario che fa riferimento ad aree esterne al poligono.