Real time query su dati in tempo reale

-1

Ho dati che passano da Kafka a MongoDB in tempo reale. Si tratta solo di dati non elaborati e vengono servite varie API utilizzando questi dati in tempo reale.

Le API rispondono utilizzando query di aggregazione. Tuttavia, quando i dati da aggregare sono grandi, il tempo di risposta dell'API è troppo alto.

Quale tecnologia o metodologia posso adottare per ottenere una bassa latenza per le risposte API?

Approccio attuale

Sto aggregando i dati utilizzando Spark Streaming in base al tipo di query effettuate dall'API. Ciò ha ridotto il tempo di risposta dell'API, ma i cambiamenti nelle query richiedono molto tempo per essere riflessi nei risultati dell'API poiché l'intero dato deve essere aggregato in base al nuovo tipo di query. Ma questo porta a tempi di fermo significativi. È questo l'approccio giusto. Se sì, come posso ridurre il tempo di inattività.

    
posta Nishant Kumar 22.12.2017 - 09:25
fonte

1 risposta

0

Come ho capito, tu hai un sistema funzionante che serve a rispondere alle domande "aggiorna", ma cerchi un modo per essere veloce quando arriva un nuovo "tipo" di query. A meno che non si possa prevedere ciò che verrà, la tua unica opzione è aggiungere potenza di calcolo. Se è possibile prevedere alcune query probabili, è possibile pre-compilare la pipeline di risposta. Forse potresti avere un'opzione per i clienti per avvisare quanto inizieranno a richiedere presto, in modo che la preparazione possa iniziare presto dando una percezione migliore.

    
risposta data 22.12.2017 - 15:54
fonte

Leggi altre domande sui tag