Wyświetl kategorie

Synchronizuj DuckDB z Arkuszami Google według harmonogramu

Automatyzacja · DuckDB do Arkuszy Google

Trzymać Arkusze Google zgodnie z plikiem DuckDB, zgodnie z harmonogramem

Napisz zapytanie SQL raz. Query Streams uruchamia je zgodnie z Twoim harmonogramem, od pięciu minut do cotygodniowych, i zapisuje wiersze w Arkuszach Google. Dopasuj wiersze do klucza, aby zmiany trafiły na swoje miejsce, a wiersze, które opuściły zapytanie, zostały usunięte, lub po prostu dopisz. Bez Zapiera, skryptów i eksportów. Za pierwszym razem zajmie to około piętnastu minut, a plan darmowy to obejmuje.

Około 15 minut Nie potrzeba kodowania Plik pozostaje tam, gdzie jest Co 5 minut lub co tydzień
Utknąłeś w jakimś momencie? Po prostu zapytaj nas. Otwórz Wsparcie w Query Streams (menu w prawym górnym rogu → Wsparcie) i wyślij nam wiadomość. Przeczytają ją prawdziwi ludzie, a pytanie „Nie wiem, o co pyta ten ekran” jest jak najbardziej trafne.

Co z tego wyjdzie?

Logo DuckDBArkusz Arkuszy Google, który przechowuje wiersze zwracane przez zapytanie DuckDB i jest aktualizowany według harmonogramu, od pięciu minut do cotygodniowych aktualizacji, z potwierdzeniem zmian po każdym uruchomieniu. Na przykład:

DuckDB holds your data in a file. Your team works in Google Sheets. The usual bridge is an Apps Script or a Zapier zap 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 Google Sheets in one pass, matching rows by a key so the sheet stays correct rather than growing.

GDZIE PRZECHOWYWANY JEST PLIKkomputer biurowy, serwer lub ten w domuTwój plik DuckDBsales.duckdb · pozostaje tutajAgent strumieni zapytańuruchamia zapisane zapytaniewedług twojego harmonogramuStrumienie zapytańszyfrowane łączetylko wiersze · napisane, nieodczytane przez nasGDZIE PRACUJE TWÓJ ZESPÓŁdowolna przeglądarka, dowolne urządzenieArkusze GoogleTwój arkusz, aktualizowany na miejscu
Agent pracuje z Twoimi danymi i uruchamia zapytanie zgodnie z harmonogramem. Arkusze Google po prostu odbierają wiersze. Nikt nie musi niczego naciskać.

Czego będziesz potrzebować

Konto Query Streams

Plan darmowy wystarczy do tego poradnika. Zarejestruj się na my.querystreams.com.

DuckDB połączony przez agenta

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? Najpierw połącz DuckDB; zajmie to około dziesięciu minut.

Zapisane zapytanie

SELECT, który chcesz zachować w synchronizacji, zapisany w Kreator zapytańKrok 1 poniżej pokazuje jeden z nich. Jeśli chcesz, aby zmienione wiersze były aktualizowane na miejscu, dodaj kolumnę, która jest unikatowa dla każdego wiersza, np. identyfikator.

Twoje logowanie do Arkuszy Google

Google prosi o zezwolenie usłudze Query Streams na dostęp i edycję tylko wybranych przez Ciebie arkuszy kalkulacyjnych. Nie widzi ona niczego innego na Twoim Dysku.

Gdzie odbywa się praca? Na komputerze, na którym działa Agent. Uruchamia on zapytanie zgodnie z harmonogramem i zapisuje wiersze w Arkuszach Google, więc komputer musi pozostać włączony. Przeglądarkę można zamknąć. Sam Query Streams nigdy nie zapisuje wierszy.

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.

Skonfiguruj w sześciu krokach

  1. Zapisz zapytanie, które chcesz zachować w synchronizacji

    Otwórz Kreator zapytań, wybierz połączenie DuckDB (jeszcze nie połączony? zacznij tutaj) i napisz instrukcję SELECT, która zwróci dokładnie te wiersze i kolumny, których potrzebujesz w Arkuszach Google. Ta instrukcja pobiera kilka kolumn z zamówienia tabela:

    Przykład · SQL
    WYBIERZ order_id, customer_name, order_total Z main.orders ZAMÓW WEDŁUG order_total OPIS LIMIT 100;

    Uruchom to, a potem Zapisz Nadaj mu nazwę, którą rozpoznasz, na przykład „Zamówienia dla Arkuszy Google”. Zachowaj kolumnę unikalną dla każdego wiersza w SELECT, tutaj. numer_zamówieniaTo jest klucz, którego używa Full Sync do aktualizacji wierszy w miejscu. Edytuj i ponownie zapisz zapytanie później, a automatyzacja wykryje zmianę przy następnym uruchomieniu.

  2. Otwórz Automatyzację i wybierz Arkusze Google

    W portalu otwórz Automatyzacja (górne menu Strumienie → Zaplanowane → Automatyzacja) i kliknij Nowa automatyzacja. Kreator ma pięć krótkich kroków. Na Krok 1 Kliknij Arkusze Google karta.

    A może wolisz „Zanim zaczniesz”? Kreator otwiera się tylko wtedy, gdy agent jest online i ma połączenie oraz istnieje co najmniej jedno zapisane zapytanie. Strona zawiera listę brakujących zapytań i linki do nich.

  3. Połącz Arkusze Google

    NA Krok 2 trzask Połącz się z Arkuszami GoogleOtworzy się okno Google; zaloguj się i zezwól. Google prosi o zezwolenie Query Streams na wyświetlanie i edytowanie tylko wybranych arkuszy kalkulacyjnych. Nie widzi niczego innego na Twoim Dysku. Czy już połączyłeś się raz? Strona oferuje… Użyj tego połączenia Zamiast.

  4. Wybierz miejsce, w którym będą lądować rzędy

    NA Krok 3 wybierz Arkusz kalkulacyjny:kliknij Wybierz z Dysku Google i wybierz go w selektorze plików Google lub wpisz nazwę w polu Utwórz nowy arkusz kalkulacyjny i kliknij Tworzyć. Następnie wybierz Arkusz (zakładka). Jedna automatyzacja na zakładkę; zakładka, do której zapisuje się już inna automatyzacja, jest wyświetlana jako zajęta.

  5. Wybierz zapytanie i zdecyduj, jak mają trafić wiersze

    NA Krok 4 otwórz Zapisane zapytanie wyświetl listę i wybierz zapytanie z kroku 1. Query Streams uruchamia je raz, aby odczytać kolumny, informuje o liczbie zwróconych wierszy i pokazuje dwie opcje:

    Dołącz · szybko

    Dołącz

    Każde uruchomienie dodaje wiersze zapytania na dole arkusza. Nic nie jest aktualizowane ani usuwane, dlatego jest to szybki wybór w przypadku dzienników, zdarzeń i historii, które chcesz gromadzić. Kolumna klucza nie jest potrzebna. Wiersz, który powraca bez zmian, nie jest dodawany ponownie; wiersz, którego wartości uległy zmianie, jest dodawany poniżej jako nowy wiersz, a stary wiersz pozostaje.

    Pełna synchronizacja · lustra

    Pełna synchronizacja

    Wiersze są dopasowywane za pomocą klawisz kolumna, taka jak identyfikator zamówienia. Nowe wiersze są dodawane, zmienione wiersze są aktualizowane na miejscu, a wiersze, które nie są już zwracane z zapytania, są usuwane, w tym wiersze wpisane ręcznie do arkusza, więc wiersze utworzone ręcznie należy przechowywać na osobnej karcie. Jest to opcja dla zapasów, lejków, danych głównych i pulpitów nawigacyjnych.

    Pełna synchronizacja jest ustawiana dla każdej kolumny, co czyni ją przydatną w arkuszach współdzielonych:

    Klawisz
    Kolumna identyfikująca wiersz, na przykład numer_zamówieniaMusi być unikatowy w wyniku zapytania. Query Streams sprawdza to i odrzuca duplikaty.
    Synchronizacja
    Nadpisywane z DuckDB przy każdym uruchomieniu. Jeśli ktoś edytuje kolumnę synchronizacji w Arkuszach Google, przy kolejnym uruchomieniu przywracana jest wartość źródłowa.
    Utrzymywać
    Zapisywana, gdy wiersz pojawia się po raz pierwszy i nigdy nie jest porównywana ponownie, więc zmiana w DuckDB nie powoduje aktualizacji. W przypadku notatek, właścicieli i dat kontynuacji, które Twój zespół wpisuje ręcznie, użyj kolumny, która w ogóle nie występuje w zapytaniu: kolumny istniejące tylko w Arkuszach Google nigdy nie są modyfikowane przez synchronizację.

    Co jest szybsze? Dołączanie zapisów odbywa się bez wcześniejszego odczytu arkusza. Pełna synchronizacja odczytuje arkusz, porównuje każdy wiersz i zapisuje tylko różnice, więc trwa to dłużej, ale arkusz zawsze pasuje do zapytania. Możesz później przełączyć się z panelu edycji automatyzacji.

    Aby wybrać arkusz, któremu chcesz zaufać, kliknij Utwórz wszystkie kolumny jako synchronizowane, a następnie kliknij ikonę klucza na numer_zamówienia aby to zrobić KlawiszStrumienie zapytań skanują cały wynik, aby potwierdzić, że klucz jest unikatowy, i ostrzegają, jeśli tak nie jest. Przechowuj notatki zespołu w kolumnach, które nie są częścią zapytania; nigdy ich nie zmieniaj. Aby utworzyć dziennik, który powinien stale rosnąć, kliknij Utwórz wszystkie kolumny jako Zachowaj zamiast tego i pomiń klucz. Kliknij Kontynuować.

  6. Ustaw harmonogram, nazwij go, utwórz

    NA Krok 5 wybierać Uruchom według harmonogramu i wybierz Częstotliwość:

    CzęstotliwośćBiegi
    Co 5 minutco 5 minut, najszybszy dozwolony
    Co 15 minutco 15 minut
    Co 30 minutco 30 minut
    Każda godzinana szczycie każdej godziny
    Codziennie o 9 ranocodziennie o 9:00, domyślnie
    Codziennie o 6 ranocodziennie o 6:00
    Dni powszednie o 9 ranoOd poniedziałku do piątku o 9:00
    Tygodniowo (poniedziałek 9 rano)w każdy poniedziałek o 9:00
    Niestandardowy harmonogramwłasne minuty, godziny, dni tygodnia lub dni miesiąca

    Czasy podążają za Strefa czasowa którą wybierzesz, która zaczyna się od Twojej przeglądarki. Możesz również wybrać Tylko ręcznie i naciśnij Bieg Kiedy tylko chcesz; harmonogram można dodać później z panelu edycji automatyzacji. Zaplanowane uruchomienia odbywają się w Agencie, więc trwają nawet po zamknięciu przeglądarki. Jeśli komputer z Agentem jest wyłączony w momencie planowanego uruchomienia, pominięte uruchomienie nastąpi jednorazowo, wkrótce po ponownym uruchomieniu Agenta.

    Daj temu Nazwa integracji, takie jak „Zamówienia do Arkuszy Google, codziennie”, sprawdź Gotowy do stworzenia podsumowanie i kliknij Utwórz automatyzację. Wróć na stronę Automatyzacja i naciśnij Bieg Aby wykonać pierwszą synchronizację teraz, zamiast czekać na harmonogram, otwórz Arkusze Google: wiersze są tam, pod nagłówkami kolumn.

To wszystko. Od teraz arkusz jest zawsze aktualny. Nic nie opuszcza sieci poza wierszami zwróconymi przez zapytanie i nikt nie musi pamiętać o uruchomieniu czegokolwiek.

Co widzisz później

Ten Strona automatyzacji Wyświetla listę wszystkich automatyzacji wraz ze statusem, źródłem, celem, kluczem, harmonogramem, ostatnią synchronizacją i liczbą wierszy. Otwórz jeden dla Egzekucje Karta: każde uruchomienie z jego wyzwalaczem (ręcznym lub zaplanowanym), czasem trwania oraz wierszami utworzonymi, zaktualizowanymi, usuniętymi i niezmienionymi. Wydajność na karcie wyświetlane są przetworzone dane i wskaźnik sukcesu w okresie od 7 do 90 dni.

Dowiesz się, kiedy się zatrzyma

Każda organizacja ma Problemy z synchronizacją Zasada alertów od samego początku: powiadomienie w aplikacji i e-mail w przypadku niepowodzenia synchronizacji oraz kolejny w przypadku jej przywrócenia. Jedna wiadomość na incydent, nigdy jedna na ponowną próbę. Wyłącz tę opcję lub zmień kanał w sekcji Strumienie → Alerty i raporty.

Zatrzymuje się, kiedy powinien

Jeśli Arkusze Google przestaną akceptować połączenie lub łącznik danych zostanie usunięty, automatyzacja zatrzyma się i wyświetli komunikat z informacją o przyczynie. Połącz się ponownie lub wybierz nowe źródło i naciśnij przycisk Wznów. Pozostałe błędy kontynuują działanie harmonogramu i wyświetlają się w wierszu.

Brak kolumny kluczowej

Jeśli ktoś zmieni nazwę lub usunie kolumnę kluczową w Arkuszach Google, pełna synchronizacja zostanie zatrzymana przed zapisaniem czegokolwiek i wyświetli komunikat Napraw opcje: wstaw nagłówek z powrotem i uruchom ponownie lub zacznij od nowa. Pozostałe kolumny nigdy nie zostaną usunięte podczas synchronizacji.

Co pozwalają plany

Automatyzacja jest dostępna w każdym planie, w tym w planie darmowym, bez limitu liczby tworzonych automatyzacji. Każdy plan ogranicza liczbę wierszy, jakie zapytanie może zwrócić w jednym przebiegu:

PlanLiczba wierszy na przebieg
Bezpłatny125
Rdzeń osobisty500
Osobisty Plus1,000
Podstawy działalności2,500
Biznes Plus5,000
Biznes Max10,000
Rdzeń przedsiębiorstwa25,000
Enterprise Plus100,000
Enterprise Max250,000

Jeśli zapytanie zwróci więcej, przebieg jest wstrzymywany, a nie przerywany, a automatyzacja wskazuje, który plan pasuje lub sugeruje dodanie filtra, takiego jak zakres dat. Każde pomyślne przebiegnięcie jest również wliczane do limitu Data Realm, tej samej puli, z której korzystają zapytania w Excelu i Arkuszach. Zobacz stronę z cennikiem za dodatki.

Dobre następne ruchy

  • Dodaj filtr do zapytania, np. ostatnich 90 dni, dzięki czemu arkusz pozostaje mały i szybki oraz mieści się w limicie wierszy Twojego planu.
  • Przechowuj notatki wpisane ręcznie w osobnych kolumnach, poza zapytaniem, dzięki czemu przetrwają każdą synchronizację.
  • Grupuj swoje automatyzacje z panelu Edycja, gdy masz ich kilka; strona Automatyzacja filtruje według grupy.

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.

Okna

Type the network path, like \\serwer\udział\folder, 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 lub /głoska bezdźwięczna, because the Agent’s service cannot see /home lub /run/user. In the connector, keep the \\serwer\udział 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

Prochowiec

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 \\serwer\udział 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 \\serwer\udział 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 Agenci danych i kliknij Połączenie testowe. The test result, and the line under the file path, name the problem:

WiadomośćPrzyczynaNaprawić
DuckDB database file not found: followed by a \\serwer\udział 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.Kliknij 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 \\serwer\udział 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 (lub 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: na Linuksie · 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.

Pytania, które zadają ludzie

Czy synchronizacja nadpisze notatki dodane przez mój zespół w Arkuszach Google?

Nie, jeśli notatki znajdują się w osobnej kolumnie. Kolumny, które istnieją tylko w Arkuszach Google i nie są uwzględnione w zapytaniu, nigdy nie są modyfikowane, więc dodaj kolumnę „Notatki” lub „Właściciel” obok zsynchronizowanych i wpisz tam swoje dane. Kolumny oznaczone Synchronizacja są przy każdym uruchomieniu przywracane do wartości DuckDB; Utrzymywać kolumny są wypełniane w momencie, gdy wiersz po raz pierwszy dociera do odbiorcy, i nie są później porównywane.

Czy moje dane DuckDB są przechowywane w strumieniach zapytań?

Nie. Agent uruchamia zapytanie po Twojej stronie i przesyła wiersze bezpośrednio do Arkuszy Google za pomocą szyfrowanego łącza. Strumienie zapytań przechowują konfigurację, harmonogram i liczbę wierszy w każdym uruchomieniu, a nie same wiersze.

Czy mój komputer musi być włączony?

Ten, który uruchamia Agenta, robi to, ponieważ to Agent uruchamia zapytanie i zapisuje je w Arkuszach Google. Twój laptop i przeglądarka mogą być wyłączone. Jeśli komputer jest wyłączony w momencie, gdy ma zostać wykonane zadanie, pominięte zadanie zostanie wykonane jednorazowo, wkrótce po ponownym uruchomieniu Agenta.

Czy mogę później zmienić zapytanie?

Tak. Edytuj i zapisz w Kreatorze zapytań, a przy następnym uruchomieniu automatycznie zostanie użyta nowa wersja. Jeśli dodasz lub usuniesz kolumny, otwórz panel edycji automatyzacji, aby je zmapować.

Czy dwa automatyzacje mogą zapisywać na tej samej karcie?

Nie, jedna automatyzacja na kartę. Skieruj drugą automatyzację na inną kartę lub rozszerz zapytanie za pierwszą.

Czy plan darmowy naprawdę to obejmuje?

Tak. Wersja darmowa to plan, który można zachować, a nie okres próbny, który wygasa. Automatyzacja jest zawarta w każdym planie; w zależności od planu zmienia się liczba wierszy, które jedno zapytanie może zwrócić w jednym przebiegu. Zobacz dokładnie, co obejmuje wersja darmowa. strona z cenami.

Nadal masz problem? Otwórz Wsparcie w Query Streams i powiedz nam, na jakim etapie jesteś i co widzisz. Połączymy Cię.
To samo zapisane zapytanie można również zachować w trybieAirtableSmartsheetBaserowSeaTableKowadło.worksi więcej

Każdy przewodnik dla DuckDB

Nie jest to dokładnie to, czego szukasz?

  • Masz folder z plikami Parquet zamiast pliku bazy danych DuckDB? Parquet Folder odczyta je wszystkie jako jedną tabelę → 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?
Zaktualizowano na październik 12, 2026

Powered by BetterDocs