Visualizza le categorie

Sincronizza DuckDB con Baserow a intervalli programmati

Automazione · Da DuckDB a Baserow

Mantenere Baserow in linea con il tuo file DuckDB, 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 Baserow. 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.

Circa 15 minuti Non è necessaria alcuna programmazione. Il file rimane dov'è Ogni 5 minuti o settimanalmente
Hai bisogno di aiuto? Chiedi pure a noi. Apri Supporto Accedi a Query Streams (menu in alto a destra → Supporto) e inviaci un messaggio. Persone reali lo leggono, e "Non so cosa mi stia chiedendo questa schermata" è una domanda assolutamente legittima.

Quello che otterrai alla fine

Logo di DuckDBUna tabella Baserow che contiene le righe restituite dalla query DuckDB e viene aggiornata periodicamente, da ogni cinque minuti a una volta alla settimana, con una ricevuta delle modifiche apportate a ogni esecuzione. Ad esempio:

DuckDB holds your data in a file. Your team works in Baserow. The usual bridge is a Zapier or Make scenario, or a CSV someone uploads that breaks quietly and copies one row at a time. Query Streams Automation does it differently: the Agent that already reads your DuckDB file runs your saved SQL on a schedule and writes the whole result into Baserow in one pass, matching rows by a key so the table stays correct rather than growing.

DOVE RISIEDE IL FILEcomputer dell'ufficio, un server o quello di casaIl tuo file DuckDBsales.duckdb · rimane quiAgente Query Streamsesegue la query salvatasecondo i tuoi orariFlussi di querycollegamento crittografatosolo righe · scritto, non riletto da noiDOVE LAVORA IL TUO TEAMqualsiasi browserBaserowla tua tabella, aggiornata sul posto
L'agente risiede nei tuoi dati ed esegue la query quando la pianificazione lo prevede. Baserow si limita a ricevere le righe. Nessuno deve premere alcun pulsante.

Cosa ti servirà

Un account Query Streams

Il piano gratuito è sufficiente per questa guida. Registrati su my.querystreams.com.

DuckDB connesso tramite l'agente

The Agent installed on the computer that holds your DuckDB file, or on one that reads it from a network share, with the connection added in Data Agents. Not done yet? Connetti prima DuckDBCi 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 a Baserow

Inserisci l'indirizzo del tuo server Baserow (quello predefinito è api.baserow.io), la tua email e la password. Query Streams le memorizza crittografate ed effettua l'accesso per te quando viene eseguita una sincronizzazione.

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 in Baserow; pertanto, quel computer deve rimanere acceso. Il browser può essere chiuso. Query Streams non memorizza mai le righe.

File on another computer? The Agent does not have to run on the computer that holds your DuckDB file: it can read the file from a network share. Reaching a file on a network share, below, shows what that takes.

Configuralo in sei passaggi

  1. Salva la query che desideri mantenere sincronizzata

    Apri Generatore di query, scegli la tua connessione DuckDB (non sei ancora connesso? Inizia da qui), e scrivi la SELECT che restituisce esattamente le righe e le colonne che desideri in Baserow. Questa estrae alcune colonne da un ordini tavolo:

    Esempio · SQL
    SELECT order_id, customer_name, order_total FROM main.orders ORDER BY order_total DESC LIMIT 100;

    Eseguilo, poi Risparmiare con un nome che riconoscerai, come "Ordini per Baserow". 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.

  2. Apri Automazione e scegli Baserow

    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 Baserow 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.

  3. Connetti Baserow

    SU Passo 2 riempire URL del server (lascia vuoto per Baserow cloud), il tuo Email e Password, quindi fai clic Collegamento di provaInserisci l'indirizzo del tuo server Baserow (quello predefinito è api.baserow.io), la tua email e la password. Query Streams le memorizza crittografate ed effettua l'accesso per te quando viene eseguita una sincronizzazione.

  4. Scegli dove atterrano le righe

    SU Passo 3 scegliere il Database, quindi il Tavolo le righe dovrebbero essere inserite. Crea prima la tabella in Baserow se desideri una tabella vuota. Se contiene già delle righe, un'anteprima le mostra e spiega cosa farebbe ogni modalità di sincronizzazione. Un'automazione per tabella.

  5. 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 · veloce

    Appendice

    Ogni esecuzione aggiunge le righe della query in fondo alla tabella. 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 · specchi

    Sincronizzazione 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, quindi conservate le righe inserite manualmente in un'altra tabella. 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 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 DuckDB a ogni esecuzione. Se qualcuno modifica una colonna Sync in Baserow, l'esecuzione successiva ripristina il valore originale.
    Conserva
    Viene scritta al primo arrivo della riga e non viene più confrontata, quindi una modifica in DuckDB 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 Baserow non vengono mai modificate dalla sincronizzazione.

    Quale dei due è più veloce? L'opzione "Append" scrive 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 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 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.

  6. Imposta il programma, dagli un nome, crealo

    SU Passo 5 scegliere Eseguire secondo un programma e scegli un Frequenza:

    FrequenzaCorse
    Ogni 5 minutiogni 5 minuti, il più veloce consentito
    Ogni 15 minutiogni 15 minuti
    Ogni 30 minutiogni 30 minuti
    Ogni oraall'inizio di ogni ora
    Tutti i giorni alle 9:00ogni giorno alle 9:00, l'impostazione predefinita
    Tutti i giorni alle 6 del mattinotutti i giorni alle 6:00
    Nei giorni feriali alle 9:00Dal lunedì al venerdì alle 9:00
    Settimanale (lunedì ore 9:00)ogni lunedì alle 9:00
    Programma personalizzatoi 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 Baserow, 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 Baserow: le righe sono lì, sotto le intestazioni di colonna.

Questo è tutto. D'ora in poi la tabella 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 Baserow 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 consentono di proseguire con la pianificazione e vengono visualizzati nella riga.

Colonna chiave mancante

Se qualcuno rinomina o elimina la colonna chiave in Baserow, la sincronizzazione completa si interrompe prima di scrivere qualsiasi cosa e mostra Opzioni fisse: ripristina la colonna con il suo nome esatto ed esegui nuovamente la sincronizzazione. Le altre colonne 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:

PianoRighe per esecuzione
Gratuito125
Nucleo personale500
Plus personale1,000
Nucleo aziendale2,500
Business Plus5,000
Gestione massima10,000
Nucleo aziendale25,000
Enterprise Plus100,000
Enterprise Max250,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 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.

Reaching a file on a network share

The Agent opens files as a background service, not as you, so a file on another computer needs one extra step. Which step depends on the computer the Agent runs on.

Finestre

Type the network path, like \\server\condiviso\cartella, never a mapped drive letter such as S:, which the Agent cannot see. If the share only lets in named people, click Service identity (the chip under the path) and store a login for that server: a company domain account, or an account made on the server itself with Domain left blank. The Agent then signs in to that server and reads the file there, and every connector on that Agent that reads the same server must use the same login. Without a login, it reads as its own service account, which a company domain sees as the computer itself. Step by step on Windows

Linux

Share logins stored in the Portal are not used on Linux: an administrator mounts the share on the Agent’s computer first, in a folder under /mnt o /media, because the Agent’s service cannot see /home o /run/user. In the connector, keep the \\server\share path, which the Agent maps onto the mount, or type the mount path instead, such as /mnt/fileserver-shared/Accounts. How to mount a share on Linux

Mac

Share logins stored in the Portal are not used on a Mac: mount the share first from Terminal with sudo, in a folder under /Volumes, so the Agent’s background service can see it. In the connector, keep the \\server\share path, which the Agent maps onto the mount, or type the mount path instead, such as /Volumes/fileserver-shared/Accounts. How to mount a share on a Mac

If the test cannot get to the share, look for these words in its result: unreachable means the Agent’s computer got no answer from the server. On Linux or a Mac, not mounted means the share still has to be mounted, and that message includes the exact mount command for your server.

DuckDB file on a share? DuckDB allows one writer at a time, so the Agent cannot open a file that another program has open for writing; on a \\server\share path the test says it is open for writing by another program. Close it there, or point the connector at a file nobody is writing to. Every query reads the file across the network, so a large file answers more slowly than it would from a local disk.

Test failed on a share?

Every run reaches the file the same way the connection test does. If runs start failing after something changed on the file server, a new password for example, open the connector in Agenti dati e clicca Verifica la connessione. The test result, and the line under the file path, name the problem:

MessaggioCausaAggiustare
DuckDB database file not found: followed by a \\server\share path you know is rightNo login is stored, so the Agent tried the share as its own account and could not see the file: the share turned that account away, or the server did not answer. In the first case the line under the path says Access denied for the agent’s service account.Cliccare Service identity under the path and store a login that can read the share. If the line under the path does not say access denied, check that the Agent’s computer can open the share at all.
Share \\server: access denied — add credentials for this serverA login is stored, but that account has no permission on the share, or another sign-in to the same server is in the way; the message before this line says which.Ask whoever runs the server to give that account read access, or store an account that has it. For a sign-in in the way, see the two rows on one login per server below.
Share \\server: the credentials were refused — check the username and passwordThe server turned the stored login down: a typo, the wrong domain, or a password changed since it was saved, which also stops runs that used to work.Click the chip under the path and type the password again; for an account made on the server itself, leave Domain blank. After a refused login the Agent waits a minute before it tries that same one again, so the account is not locked out; saving a corrected password tries straight away.
Share \\server: server unreachable from the agent machineThe Agent’s computer got no answer from the server: a wrong server name, the server is off, or a firewall blocks file sharing.On the Agent’s computer, open the same \\server\share path in File Explorer. If that fails too, it is a network problem for whoever runs the network.
Another connector on this agent already signs in to \\server as …Windows lets one computer sign in to a server as one account at a time, and another connector on this Agent uses a different login for that server.Store the same login the other connector uses, or change it on every connector that reads that server.
Windows already holds a sign-in to \\server for …Something on the Agent’s computer other than the Agent is already signed in to that server as a different account, and the Agent never closes a sign-in it did not make.Do what the rest of the message says: use that same account on this connector, or close the other sign-in on the Agent’s computer. If it says the share is already readable through that sign-in, choose Use service identity in the login box instead.
This agent build cannot sign in to \\server with stored credentials.The Agent is an older version that cannot use stored logins.Update the Agent, then test again.
\\server\share is not mounted on this Linux agent (o macOS agent)The Agent runs on Linux or a Mac and the share has not been mounted on its computer yet; logins stored in the Portal are not used there.Mount it with the command the message gives you, then test again. Step by step: su Linux · on a Mac.
… is open for writing by another programDuckDB allows one writer at a time, and another program has the file open for writing.Close the file in that program, or point the connector at a file nobody is writing to.

Domande che le persone si pongono

La sincronizzazione sovrascriverà le note aggiunte dal mio team in Baserow?

Non se le note si trovano in una colonna separata. Le colonne che esistono solo in Baserow 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 ripristinati al valore DuckDB ad ogni esecuzione; Conserva Le colonne vengono riempite al primo arrivo di una riga e non vengono confrontate successivamente.

I miei dati DuckDB vengono memorizzati da Query Streams?

No. L'agente esegue la query sul tuo lato e invia le righe direttamente a Baserow 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 Baserow. 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 sulla stessa tabella?

No, una sola automazione per tabella. Imposta una seconda automazione su una tabella 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.

Ancora bloccato? Apri Supporto Accedi a Query Streams e comunicaci a quale passaggio ti trovi e cosa visualizzi. Ti aiuteremo a connetterti.
La stessa query salvata può anche essere mantenuta al passo conFogli di GoogleTavola d'ariaSmartsheetTavolo da mareAnvil.workse altro ancora

Ogni guida per DuckDB

Non è proprio la tua configurazione?

  • Hai una cartella di file Parquet anziché un file di database DuckDB? Parquet Folder li legge tutti come un'unica tabella → Parquet Folder

Setup trouble?

  • Agent says the file or folder does not exist, or access is denied? Mapped drives, network shares, OneDrive and Linux home folders each need one fix → Where the Agent can read files from
  • Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?
Updated on Ottobre 12, 2026

Powered by BetterDocs