Mantenere Anvil.works in linea con il tuo magazzino Snowflake, secondo un programma
Scrivi la query SQL una sola volta. Query Streams la esegue secondo la tua pianificazione, da ogni cinque minuti a settimanalmente, e scrive le righe nella tua tabella dati Anvil.works. Abbina le righe tramite una chiave in modo che le modifiche vengano applicate correttamente e le righe escluse dalla query vengano rimosse, oppure aggiungile semplicemente. Niente Zapier, niente script, niente esportazioni. La prima volta ci vogliono circa quindici minuti, ed è incluso nel piano gratuito.
Quello che otterrai alla fine
Una tabella dati di Anvil.works che contiene le righe restituite dalla query Snowflake e viene aggiornata a intervalli regolari, da cinque minuti a una volta alla settimana, con una ricevuta che riporta le modifiche apportate a ogni esecuzione. Ad esempio:
Snowflake archivia i tuoi dati nel proprio cloud. Il tuo team lavora in Anvil.works. Il metodo tradizionale consiste in un'importazione manuale nella tua applicazione che si interrompe silenziosamente e copia una riga alla volta. Query Streams Automation funziona diversamente: l'agente già presente nel tuo data warehouse Snowflake esegue le query SQL salvate a intervalli regolari e scrive l'intero risultato in Anvil.works in un'unica operazione, abbinando le righe tramite una chiave in modo che la tabella dati rimanga corretta anziché espandersi.
Cosa ti servirà
Un account Query Streams
Il piano gratuito è sufficiente per questa guida. Registrati su my.querystreams.com.
Fiocco di neve connesso tramite l'agente
L'agente installato su qualsiasi computer sempre acceso, con il data warehouse Snowflake aggiunto come connessione in Data Agents. Non hai ancora finito? Collega prima SnowflakeCi vogliono circa dieci minuti.
Una query salvata
La SELECT che vuoi mantenere sincronizzata, salvata in Generatore di queryIl passaggio 1 qui sotto ne mostra uno. Se si desidera che le righe modificate vengano aggiornate sul posto, includere una colonna univoca per riga, come un ID.
Le tue credenziali di accesso ad Anvil.works
Inserisci l'indirizzo HTTPS della tua app Anvil e la chiave del connettore che hai impostato nell'app con connector.init_connector("key") dal modulo querystreams. Query Streams controlla le risposte dell'app ed elenca le relative tabelle di dati.
Dove si svolge il lavoro? Sul computer su cui è in esecuzione l'Agent, la query viene eseguita in base alla pianificazione e le righe vengono scritte su Anvil.works; pertanto, quel computer deve rimanere acceso. Il browser può essere chiuso. Query Streams non memorizza mai le righe.
Configuralo in sei passaggi
-
Salva la query che desideri mantenere sincronizzata
Apri Generatore di query, scegli la tua connessione Snowflake (non sei ancora connesso? Inizia da qui), e scrivi la SELECT che restituisce esattamente le righe e le colonne che desideri in Anvil.works. Questa estrae alcune colonne da un ORDINI tavolo:
Esempio · SQLSELECT order_id, customer_name, order_total FROM SALES.PUBLIC.ORDERS ORDER BY order_total DESC LIMIT 100;
Eseguilo, poi Risparmiare con un nome che riconoscerai, come "Ordini per Anvil.works". Mantieni una colonna univoca per riga nella SELECT, qui ID ordineQuesta è la chiave che Full Sync utilizza per aggiornare le righe direttamente sul posto. Modifica e salva nuovamente la query in seguito e l'automazione rileverà la modifica alla successiva esecuzione.
-
Apri Automazione e seleziona Anvil.works.
Nel portale, apri Automazione (menu principale) Flussi → Programmati → Automazione) e clicca Nuova automazione. La procedura guidata ha cinque brevi passaggi. Su Passo 1 clicca sul Anvil.works carta.
Visualizzi invece la sezione "Prima di iniziare"? La procedura guidata si apre solo quando un agente è online con una connessione e almeno una query salvata è presente. La pagina elenca quale delle tre query manca e fornisce un link per recuperarla.
-
Connetti Anvil.works
SU Passo 2 la pagina ti guida attraverso il lato Anvil: aggiungi il codice di dipendenza Query Streams alla tua app sotto Impostazioni → Dipendenze → Terze parti, crea un modulo server con
da querystreams importa connettoreeconnector.init_connector("la tua chiave")e clicca Genera chiave sicura per creare quella chiave. Quindi inserisci il tuo URL dell'app Anvil e lo stesso Chiave di autenticazione del connettore e clicca Collegamento di provaLa tua app ha bisogno Tabelle accelerate Attivato (Impostazioni → Tabelle dati); la pagina lo verifica automaticamente. -
Scegli dove atterrano le righe
SU Passo 3 scegliere il Tabella dati le righe dovrebbero essere inserite. Crealo prima nella tua app Anvil se vuoi un file vuoto. Se contiene già delle righe, un'anteprima le mostra e spiega cosa farebbe ogni modalità di sincronizzazione. Un'automazione per tabella.
-
Scegli la query e decidi come vengono visualizzate le righe
SU Passo 4 aprire il Query salvata Seleziona la query dal passaggio 1. Query Streams la esegue una volta per leggere le colonne, ti indica quante righe restituisce e ti mostra due opzioni:
Aggiungi · veloceAppendice
Ogni esecuzione aggiunge le righe della query in fondo alla tabella dati. Nulla viene aggiornato né eliminato, quindi è la scelta ideale per archiviare rapidamente log, eventi e cronologia. Non è necessaria alcuna colonna chiave. Una riga che non subisce modifiche non viene aggiunta nuovamente; una riga i cui valori sono cambiati viene aggiunta come nuova riga sottostante, mentre la precedente rimane invariata.
Sincronizzazione completa · specchiSincronizzazione completa
Le righe sono abbinate da un chiave colonna come un ID ordine. Le nuove righe vengono aggiunte, le righe modificate vengono aggiornate sul posto e le righe che non vengono più restituite dalla query vengono rimosse, comprese le righe inserite manualmente nella tabella dati, quindi conserva le righe inserite manualmente in un'altra tabella dati. Questa è la scelta ideale per inventario, pipeline, dati anagrafici e dashboard.
La sincronizzazione completa viene impostata per colonna, ed è proprio questo che la rende utile in una tabella dati condivisa:
- Chiave
- La colonna che identifica una riga, ad esempio ID ordineDeve essere univoco nel risultato della query; Query Streams lo verifica automaticamente e rifiuta i duplicati.
- Sincronizzazione
- Sovrascritto da Snowflake a ogni esecuzione. Se qualcuno modifica una colonna Sync in Anvil.works, l'esecuzione successiva ripristina il valore di origine.
- Conserva
- Viene scritto al primo arrivo della riga e non viene più confrontato, quindi una modifica in Snowflake non attiva un aggiornamento. Per note, proprietari e date di follow-up inseriti manualmente dal team, utilizzare una colonna che non è presente nella query: le colonne che esistono solo in Anvil.works non vengono mai modificate dalla sincronizzazione.
Quale dei due è più veloce? L'opzione "Append" scrive i dati senza prima leggere la tabella. L'opzione "Full Sync" la legge, confronta ogni riga e scrive solo le differenze, quindi richiede più tempo ma la tabella dati corrisponde sempre alla query. È possibile passare da un'opzione all'altra in un secondo momento dal pannello di modifica dell'automazione.
Per una tabella di dati di cui ti puoi fidare, fai clic Crea tutte le colonne come Sincronizzate, quindi fai clic sull'icona della chiave su ID ordine per renderlo il ChiaveQuery Streams analizza l'intero risultato per confermare che la chiave sia univoca e ti avvisa in caso contrario. Conserva le note del tuo team in colonne che non fanno parte della query; queste non vengono mai modificate. Per un registro che dovrebbe solo crescere, fai clic Crea tutte le colonne come Mantieni invece e salta il tasto. Fai clic Continuare.
-
Imposta il programma, dagli un nome, crealo
SU Passo 5 scegliere Eseguire secondo un programma e scegli un Frequenza:
Frequenza Corse Ogni 5 minuti ogni 5 minuti, il più veloce consentito Ogni 15 minuti ogni 15 minuti Ogni 30 minuti ogni 30 minuti Ogni ora all'inizio di ogni ora Tutti i giorni alle 9:00 ogni giorno alle 9:00, l'impostazione predefinita Tutti i giorni alle 6 del mattino tutti i giorni alle 6:00 Nei giorni feriali alle 9:00 Dal lunedì al venerdì alle 9:00 Settimanale (lunedì ore 9:00) ogni lunedì alle 9:00 Programma personalizzato i tuoi minuti, ore, giorni della settimana o giorni del mese I tempi seguono il Fuso orario tu scegli, che inizia come il tuo browser. Puoi anche scegliere Solo manuale e premere Correre Puoi eseguire l'automazione quando vuoi; una pianificazione può essere aggiunta in seguito dal pannello di modifica dell'automazione. Le esecuzioni pianificate avvengono sull'agente, quindi continuano anche quando il browser è chiuso. Se il computer su cui è in esecuzione l'agente è spento quando è prevista un'esecuzione, l'esecuzione mancata viene eseguita una sola volta, poco dopo il riavvio dell'agente.
Dagli un Nome dell'integrazione, come “Ordini a Anvil.works, giornalieri”, controlla il Pronto a creare riassunto e clicca Creazione di automazioneTornato alla pagina Automazione, premi Correre Esegui subito la prima sincronizzazione invece di aspettare la pianificazione. Apri Anvil.works: le righe sono lì, sotto le intestazioni di colonna.
Questo è tutto. D'ora in poi la tabella dati si aggiorna automaticamente. Nulla esce dalla rete tranne le righe restituite dalla query e nessuno deve ricordarsi di eseguire nulla.
Ciò che vedi dopo
IL Pagina sull'automazione elenca ogni automazione con il relativo stato, origine, destinazione, chiave, pianificazione, ultima sincronizzazione e conteggio delle righe. Aprine una per il Esecuzioni scheda: ogni esecuzione con il relativo trigger (manuale o pianificato), durata e righe create, aggiornate, eliminate e invariate. Prestazione La scheda mostra i dati elaborati e il tasso di successo nell'arco di 7-90 giorni.
Ti viene comunicato quando si ferma
Ogni organizzazione ha un Problemi di sincronizzazione Regola di avviso fin dal primo giorno: una notifica in-app e un'email in caso di errore di sincronizzazione, e un'ulteriore notifica al termine del processo. Un messaggio per ogni errore, mai uno per ogni tentativo di sincronizzazione. Disattivalo o modifica i canali in Streams → Avvisi e segnalazioni.
Si mette in pausa quando dovrebbe
Se Anvil.works smette di accettare la connessione o il connettore dati viene eliminato, l'automazione si interrompe e ne indica il motivo. Riconnettiti o seleziona una nuova origine e premi Riprendi. Altri errori non interrompono la pianificazione e vengono visualizzati nella riga corrispondente.
Le chiavi devono essere uniche
Prima di ogni esecuzione di Sincronizzazione completa, Query Streams verifica che i valori chiave nel risultato della query siano univoci e, in caso contrario, rifiuta l'esecuzione, evitando così che dati parzialmente scritti finiscano nella tabella. Mantieni la colonna chiave in Anvil; le colonne non utilizzate dalla query non vengono mai eliminate durante la sincronizzazione.
Cosa consentono i piani
L'automazione è inclusa in tutti i piani, compreso quello gratuito, senza limiti al numero di automazioni che è possibile creare. Ogni piano limita invece il numero di righe che una query può restituire per ogni esecuzione:
| Piano | Righe per esecuzione |
|---|---|
| Gratuito | 125 |
| Nucleo personale | 500 |
| Plus personale | 1,000 |
| Nucleo aziendale | 2,500 |
| Business Plus | 5,000 |
| Gestione massima | 10,000 |
| Nucleo aziendale | 25,000 |
| Enterprise Plus | 100,000 |
| Enterprise Max | 250,000 |
Se una query restituisce più risultati, l'esecuzione viene sospesa anziché interrotta e l'automazione indica quale piano è più adatto o suggerisce di aggiungere un filtro, ad esempio un intervallo di date. Ogni esecuzione completata con successo viene inoltre conteggiata ai fini della quota di Data Realm, lo stesso pool utilizzato dalle query di Excel e Fogli Google. Consulta la pagina dei prezzi per le indennità.
Buone mosse successive
- Aggiungi un filtro alla query, ad esempio gli ultimi 90 giorni, in modo che la tabella dati rimanga piccola e veloce e rispetti il limite di righe del tuo piano.
- Conserva gli appunti scritti a mano in colonne separate., al di fuori della query, quindi sopravvivono a ogni sincronizzazione.
- Raggruppa le tue automazioni Una volta che ne hai creati alcuni, puoi modificarli dal pannello Modifica; la pagina Automazione filtra per gruppo.
Domande che le persone si pongono
La sincronizzazione sovrascriverà le note aggiunte dal mio team in Anvil.works?
Non se le note si trovano in una colonna separata. Le colonne che esistono solo in Anvil.works e non nella query non vengono mai modificate, quindi aggiungi una colonna Note o Proprietario accanto a quelle sincronizzate e digita lì. Colonne contrassegnate Sincronizzazione vengono riportati al valore Snowflake ad ogni esecuzione; Conserva Le colonne vengono riempite al primo arrivo di una riga e non vengono confrontate successivamente.
I miei dati Snowflake vengono memorizzati da Query Streams?
No. L'agente esegue la query sul tuo lato e invia le righe direttamente ad Anvil.works tramite un collegamento crittografato. Query Streams conserva la configurazione, la pianificazione e il conteggio delle righe per ogni esecuzione, non le righe stesse.
Il mio computer deve rimanere acceso?
È il computer che esegue l'Agent a farlo, perché è l'Agent che esegue la query e scrive su Anvil.works. Il tuo laptop e il tuo browser possono essere chiusi. Se quel computer è spento quando è prevista un'esecuzione, l'esecuzione mancata si verifica una sola volta, poco dopo il riavvio dell'Agent.
Posso modificare la query in seguito?
Sì. Modifica e salva il file in Query Builder e la successiva esecuzione utilizzerà automaticamente la nuova versione. Se aggiungi o rimuovi colonne, apri il pannello di modifica dell'automazione per mapparle.
È possibile che due automazioni scrivano nella stessa tabella dati?
No, una sola automazione per tabella dati. Imposta una seconda automazione su una tabella dati diversa oppure amplia la query alla base della prima.
Il piano gratuito copre davvero tutto questo?
Sì. Il piano gratuito è un piano che mantieni, non una prova che scade. L'automazione è inclusa in ogni piano; ciò che cambia a seconda del piano è il numero di righe che una query può restituire per ogni esecuzione. Scopri esattamente cosa include il piano gratuito. pagina dei prezzi.
Guide correlate
Ogni guida per Snowflake
Setup trouble?
- Want the Agent to sign in with a login that can only read? Create a read-only database user, with copy-paste SQL for each database → Create a read-only database user
- Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?

