Pianifica le interrogazioni del chiosco dati
Scopri come pianificare le query su Data Kiosk.
Usa questa guida per scoprire come effettuare automaticamente chiamate regolari verso createQuery
evitando richieste di dati ridondanti.
Nota
Un esempio completo di codice per questo meccanismo di pianificazione è pubblicato nel nostro Esempi di repository su GitHub.
Panoramica di Data Kiosk
L'utilizzo di Data Kiosk prevede i seguenti passaggi:
- Iscriviti alla notifica: Sottoscrivi una coda SQS al
DATA_KIOSK_QUERY_PROCESSING_FINISHED
notifica, che ti avvisa quando l'elaborazione dei dati è completa. - Crea la query: Invia una query GraphQL utilizzando
createQuery
operazione. - Recupera il documento: Usa
dataDocumentId
oerrorDocumentId
per recuperare i dettagli del documento congetDocument
operazione. Questi attributi si trovano nel payload delle notifiche. Se ricevierrorDocumentId
, puoi trovare il motivo dell'errore nel documento. - Memorizza i dati: Recupera e archivia il JSONL file da
documentUrl
per ulteriori elaborazioni e accessi.
Nota
Per ulteriori informazioni sui flussi di lavoro di Data Kiosk, consulta:
Tutorial: crea un meccanismo di pianificazione per Data Kiosk
Scopri come effettuare interrogazioni automatiche e regolari su Data Kiosk, evitando chiamate ridondanti.
Fase 1 Definire i parametri di pianificazione
Determina la data di inizio e la frequenza con cui desideri effettuare le query.
Nota
Se la data di inizio della query è passata e desideri che lo scheduler riempia, crea le query il più spesso possibile fino a quando non esegui le query il giorno corrente. Ciò garantisce che i tuoi dati rimangano aggiornati. Ad esempio, se la data di inizio è un mese fa e desideri informazioni su ogni giorno, modifica la soluzione in modo che lo scheduler esegua rapidamente le query per ogni giorno dell'ultimo mese fino a raggiungere il giorno corrente.
Se non è necessario il backfill, imposta la data di inizio su una data presente o futura per evitare che lo scheduler crei query passate.
Le frequenze comuni sono giornaliere, settimanali o mensili. La scelta della tariffa dipende dalla frequenza con cui i dati vengono aggiornati. Ad esempio, se i dati vengono aggiornati giornalmente, è appropriata una frequenza giornaliera. Non interrogare troppo spesso. Se un set di dati si aggiorna giornalmente, una query oraria sarebbe ridondante.
Fase 2 Modifica i parametri dell'interrogazione
Crea una funzione che sposti le date di inizio e fine della query in base alla frequenza desiderata in modo che ogni query recuperi nuovi dati. Ad esempio, se la frequenza di pianificazione è giornaliera, la funzione dovrebbe modificare le date di inizio e fine di un giorno per ogni nuova query.
Avvertenza!
Set di dati diversi hanno nomi di chiavi di attributo diversi e periodi di ricarica dei dati diversi. Conosci le chiavi degli attributi per le date di inizio e fine di ogni set di dati. Quando aggiorni o sposti gli attributi della data di inizio e di fine, i nomi delle chiavi potrebbero variare tra i set di dati.
Fase 3 Creare l'interrogazione
Per inviare automaticamente le richieste, utilizza un programma di pianificazione degli eventi come AWS EventBridge. Con EventBridge, puoi impostare attività ricorrenti utilizzando espressioni cron o espressioni di frequenza (ad esempio, ogni cinque minuti, ogni ora, ogni giorno). Configura EventBridge per modificare automaticamente le date delle query ed effettuare le chiamate a createQuery
a intervalli definiti per recuperare i dati in modo continuo ed efficiente.
Fase 4 Salva le informazioni sulla pianificazione
Archivia le informazioni sulla pianificazione come date di inizio, tariffe e query associate in un database. Assicurati di poter annullare o eliminare le pianificazioni in base alle esigenze e di conservare i registri delle query per scopi di controllo e rendicontazione.
Migliori pratiche e considerazioni
Evita gli errori e gestisci la ridondanza. Alcune cose da considerare includono:
-
Evita la ridondanza: Verifica che le query richiedano dati univoci. Assicurati che non vi siano sovrapposizioni con i timestamp dei dati precedentemente archiviati e non create più pianificazioni per la stessa query. La creazione della query ha esito negativo se la query precedente è ancora in esecuzione.
-
Errori di registro: Non permettete che una query fallita interrompa l'intero meccanismo di pianificazione. Implementa una registrazione completa per rilevare gli errori durante l'invio delle query e il recupero dei dati. Elabora i documenti di errore restituiti da Data Kiosk e correggi gli errori in essi contenuti.
-
Riprova: Se una query è limitata dalla limitazione delle query simultanee, incorpora meccanismi di riprova che utilizzano il backoff esponenziale.
-
Monitoraggio e avviso: Monitora in tempo reale e imposta avvisi di errore in caso di domande non riuscite, limiti di frequenza superati o tempi di elaborazione prolungati. Identifica e rispondi rapidamente ai problemi.
Per informazioni dettagliate sui diversi errori e su come correggerli, fare riferimento a Gestione degli errori di elaborazione.
Updated 23 days ago