Imagine generată cu DALL-E
Într-o perioadă în care procesarea analitică a datelor este diferența critică între o afacere de succes și nu, avem nevoie de o stivă de instrumente care ar putea susține nevoile. Avansarea tehnologiei a ajutat la avansarea tuturor acestor instrumente de date de care avem nevoie, și anume DuckDB și MotherDuck.
DuckDB este un sistem de gestionare a bazelor de date SQL Online Analytical Processing (OLAP) cu sursă deschisă, în proces. Sistemul de baze de date este conceput pentru a gestiona rapid interogările analitice de date, indiferent de dimensiunea datelor. Sistemul implementează procesarea în memorie și sisteme OLAP care îmbunătățesc eficient procesul nostru de analiză a datelor.
DuckDB este perfect pentru stocarea și procesarea datelor tabulare care implică analiza datelor (aderarea la tabel, agregarea datelor etc.) și atunci când fluxul nostru de lucru implică de obicei modificări semnificative în tabel. Pe de altă parte, DuckDB nu este potrivit pentru activități de date cu volum mare și procese multiple concurente într-o singură bază de date.
MotherDuck este un serviciu gestionat DuckDB-in-the-cloud. Este gratuit de utilizat și open-source în timp ce este întreținut de Comunitatea DuckDB. Este un serviciu creat prin parteneriatul cu DuckDB Lab pentru a crea o platformă de servicii cloud pe care publicul o poate folosi.
Cu o combinație de DuckDB și Motherduck, putem crea un motor de analiză care este ușor de utilizat în orice scenariu. Cum facem asta? Să intrăm în asta.
Am folosi interfața de utilizare nativă MotherDuck pentru a vă oferi un exemplu despre cum funcționează serviciul și de ce DuckDB este un instrument puternic pentru analiza datelor. Vă rugăm să vă înregistrați pe site și să obțineți contul MotherDuck dacă nu ați făcut-o deja.
După ce vă înregistrați cu succes pentru contul MotherDuck, vom fi direcționați către interfața de utilizare MotherDuck. Încercați să vă familiarizați cu interfața de utilizare și veți realiza că interfața de utilizare este similară cu Jupyter Notebook, dacă veți folosi vreodată unul.
Vom experimenta cu puterea DBduck în interfața de utilizare MotherDuck cu datele Salariului DS de la Kaggle. Încărcați datele utilizând butonul Adăugați fișiere și va fi afișată o nouă celulă cu interogarea de executat. Interogarea ar trebui să arate așa.
CREATE OR REPLACE TABLE ds_salaries AS SELECT * FROM read_csv_auto(['ds_salaries.csv']);
Odată ce ați creat tabelul, încercați să interogați datele cu următorul cod.
select * from my_db.ds_salaries limit 10;
După cum puteți vedea, MotherDuck seamănă cu analiza datelor în Notebook, dar cu interogări SQL. Să încercăm interogarea pentru a face analiza datelor în MotherDuck.
select job_title,
avg(salary_in_usd) as average_salary_in_usd
from my_db.ds_salaries
GROUP BY job_title
ORDER BY job_title
Puteți executa interogarea în celulă; rezultatul tabelului este afișat în mod similar cu imaginea de mai jos.
Puteți filtra datele, puteți pivota tabelul sau puteți descărca rezultatul cu butonul de selecție disponibil în interfața de utilizare.
De asemenea, MotherDuck permite utilizatorului să acceseze baza de date prin Python pe Notebook. Trebuie să instalăm pachetul DuckDB folosind următorul cod.
pip install duckdb==v0.9.2
Versiunea actuală pe care MotherDuck o acceptă este DuckDB 0.9.2; de aceea am instalat acea versiune.
Când instalarea are succes, trebuie să conectăm DuckDB cu Motherduck. Există câteva modalități de a autentifica conexiunea, dar am folosi jetonul de serviciu. Acest token este achiziționat în setările dvs. MotherDuck.
import duckdb
token = "insert token here"
# initiate the MotherDuck connection
con = duckdb.connect(f'md:?motherduck_token={token}')
Dacă nu am setat niciun nume de bază de date, MotherDuck ar accesa folosind baza de date implicită, care este my_db. În continuare, să folosim aceeași interogare pe care am făcut-o anterior în Notebook.
q = """
select job_title,
avg(salary_in_usd) as average_salary_in_usd
from my_db.ds_salaries
GROUP BY job_title
ORDER BY job_title
"""
con.sql(q).show()
Veți vedea rezultatul similar cu tabelul de mai jos.
┌─────────────────────────────────────┬───────────────────────┐
│ job_title │ average_salary_in_usd │
│ varchar │ double │
├─────────────────────────────────────┼───────────────────────┤
│ 3D Computer Vision Researcher │ 21352.25 │
│ AI Developer │ 136666.0909090909 │
│ AI Programmer │ 55000.0 │
│ AI Scientist │ 110120.875 │
│ Analytics Engineer │ 152368.63106796116 │
│ Applied Data Scientist │ 113726.3 │
│ Applied Machine Learning Engineer │ 99875.5 │
│ Applied Machine Learning Scientist │ 109452.83333333333 │
│ Applied Scientist │ 190264.4827586207 │
│ Autonomous Vehicle Technician │ 26277.5 │
│ · │ · │
│ · │ · │
│ · │ · │
│ Principal Data Engineer │ 192500.0 │
│ Principal Data Scientist │ 198171.125 │
│ Principal Machine Learning Engineer │ 190000.0 │
│ Product Data Analyst │ 56497.2 │
│ Product Data Scientist │ 8000.0 │
│ Research Engineer │ 163108.37837837837 │
│ Research Scientist │ 161214.19512195123 │
│ Software Data Engineer │ 62510.0 │
│ Staff Data Analyst │ 15000.0 │
│ Staff Data Scientist │ 105000.0 │
├─────────────────────────────────────┴───────────────────────┤
│ 93 rows (20 shown) 2 columns │
└─────────────────────────────────────────────────────────────┘
Cu interogarea de mai sus, puteți folosi următorul cod pentru a le procesa în Pandas DataFrame.
import pandas as pd
df = con.sql(q).fetchdf()
În cele din urmă, puteți încărca un alt set de date în baza de date folosind următoarea interogare.
con.sql("CREATE TABLE mytable AS SELECT * FROM '~/filepath.csv'")
Interogarea de mai sus presupune că datele dvs. sunt un fișier CSV. Alte opțiuni includ S3 sau DuckDB local la baza de date MotherDuck.
DuckDB este un sistem de baze de date open-source care a fost dezvoltat special pentru analiza datelor. Sistemul este conceput pentru a gestiona procesarea datelor rapid și eficient. MotherDuck este un serviciu open-source gestionat bazat pe cloud pentru DuckDB.
Combinând DuckDB și MotherDuck, ne putem transforma laptopurile într-un motor de analiză personal, având datele noastre în cloud și procesându-le rapid cu DuckDB.
Cornellius Yudha Wijaya este un asistent manager și redactor de date pentru știința datelor. În timp ce lucrează cu normă întreagă la Allianz Indonesia, îi place să împărtășească sfaturi Python și date prin intermediul rețelelor sociale și al rețelelor de scris.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- PlatoData.Network Vertical Generative Ai. Împuterniciți-vă. Accesați Aici.
- PlatoAiStream. Web3 Intelligence. Cunoștințe amplificate. Accesați Aici.
- PlatoESG. carbon, CleanTech, Energie, Mediu inconjurator, Solar, Managementul deșeurilor. Accesați Aici.
- PlatoHealth. Biotehnologie și Inteligență pentru studii clinice. Accesați Aici.
- Sursa: https://www.kdnuggets.com/turn-your-laptop-into-a-personal-analytics-engine-with-duckdb-and-motherduck?utm_source=rss&utm_medium=rss&utm_campaign=turn-your-laptop-into-a-personal-analytics-engine-with-duckdb-and-motherduck
- :are
- :este
- :nu
- :Unde
- 10
- 125
- 15000
- 20
- 25
- 3d
- 7
- 8
- 8000
- 9
- a
- mai sus
- acces
- Cont
- dobândi
- dobândite
- activitate
- adăuga
- avansa
- avansare
- agregare
- AI
- TOATE
- Allianz
- permite
- deja
- de asemenea
- an
- analiză
- analist
- analitic
- Analitic
- Google Analytics
- și
- O alta
- Orice
- aplicat
- SUNT
- AS
- Asistent
- presupune
- At
- autentifica
- autonom
- vehicul autonom
- disponibil
- BE
- de mai jos
- între
- construit
- afaceri
- dar
- buton
- by
- CAN
- celulă
- Modificări
- Cloud
- cod
- Coloane
- combinaţie
- combinând
- comunitate
- calculator
- Computer Vision
- concurent
- Conectați
- conexiune
- ar putea
- crea
- critic
- Curent
- de date
- analiza datelor
- analist de date
- Analiza datelor
- inginer de date
- de prelucrare a datelor
- știința datelor
- om de știință de date
- Baza de date
- Mod implicit
- proiectat
- dezvoltat
- Dezvoltator
- FĂCUT
- diferenţă
- do
- face
- dubla
- Descarca
- în mod eficient
- eficient
- Motor
- inginer
- etc
- Eter (ETH)
- EVER
- Fiecare
- exemplu
- a executa
- experiment
- familiariza
- puțini
- Fișier
- Fişiere
- filtru
- următor
- Pentru
- Gratuit
- din
- generată
- obține
- Da
- grup
- mână
- manipula
- Manipularea
- având în
- he
- a ajutat
- aici
- Cum
- HTTPS
- if
- imagine
- ustensile
- îmbunătăţi
- in
- include
- Indonezia
- iniția
- instala
- instalare
- în
- implică
- implicând
- IT
- alătura
- Jupiter Notebook
- KDnuggets
- de laborator
- laptop
- laptop-uri
- învăţare
- ca
- LIMITĂ
- încărca
- local
- Uite
- arată ca
- iubeste
- maşină
- masina de învățare
- gestionate
- administrare
- sistemul de management
- manager
- Mass-media
- mult
- multiplu
- nume
- și anume
- nativ
- Nevoie
- nevoilor
- Nou
- următor
- caiet
- of
- on
- ONE
- on-line
- open-source
- Opţiuni
- or
- comandă
- Altele
- al nostru
- afară
- producție
- pachet
- panda
- partenerială
- Perfect
- personal
- Pivot
- platformă
- Plato
- Informații despre date Platon
- PlatoData
- "vă rog"
- putere
- puternic
- destul de
- în prealabil
- Principal
- proces
- procese
- prelucrare
- Produs
- Programator
- public
- Piton
- interogări
- repede
- uşor
- realiza
- Fără deosebire
- Inregistreaza-te
- înlocui
- cercetare
- cercetător
- rezultat
- salariu
- acelaşi
- scenariu
- Ştiinţă
- Om de stiinta
- vedea
- selecta
- selecţie
- serviciu
- set
- setări
- Distribuie
- să
- indicat
- semnificativ
- asemănător
- asemănător
- Mărimea
- Social
- social media
- Software
- specific
- SQL
- stivui
- Personal
- de succes
- Reușit
- potrivit
- a sustine
- Sprijină
- rapid
- sistem
- sisteme
- tabel
- luate
- Tehnologia
- acea
- Lor
- Acolo.
- Acestea
- acest
- timp
- Sfaturi
- la
- semn
- instrument
- Unelte
- încerca
- ÎNTORCĂ
- ui
- utilizare
- Utilizator
- folosind
- obișnuit
- vehicul
- versiune
- de
- viziune
- a fost
- modalități de
- we
- website
- cand
- care
- în timp ce
- de ce
- voi
- cu
- flux de lucru
- de lucru
- fabrică
- ar
- scriitor
- scris
- tu
- Ta
- te
- zephyrnet