Bild generiert mit DALL-E
In einer Zeit, in der die Datenanalyseverarbeitung den entscheidenden Unterschied zwischen einem erfolgreichen Unternehmen und einem nicht erfolgreichen Unternehmen darstellt, benötigen wir einen Tool-Stack, der diese Anforderungen erfüllen kann. Der technologische Fortschritt hat dazu beigetragen, all diese Datentools voranzutreiben, die wir brauchen, nämlich DuckDB und MotherDuck.
Duckdb ist ein Open-Source-In-Process-SQL Online Analytical Processing (OLAP)-Datenbankverwaltungssystem. Das Datenbanksystem ist für die schnelle Bearbeitung datenanalytischer Abfragen unabhängig von der Datengröße ausgelegt. Das System implementiert In-Memory-Verarbeitung und OLAP-Systeme, die unseren Datenanalyseprozess effektiv verbessern.
DuckDB eignet sich perfekt zum Speichern und Verarbeiten von Tabellendaten im Zusammenhang mit Datenanalysen (Tabellenverknüpfung, Datenaggregation usw.) und wenn unser Arbeitsablauf normalerweise erhebliche Änderungen in der Tabelle beinhaltet. Andererseits ist DuckDB nicht für große Datenaktivitäten und mehrere gleichzeitige Prozesse in einer Datenbank geeignet.
MutterEnte ist ein verwalteter DuckDB-in-the-Cloud-Dienst. Die Nutzung ist kostenlos und Open Source, während die Wartung durch die DuckDB-Community erfolgt. Es handelt sich um einen Dienst, der in Zusammenarbeit mit DuckDB Lab entwickelt wurde, um eine Cloud-Service-Plattform zu schaffen, die die Öffentlichkeit nutzen kann.
Mit einer Kombination aus DuckDB und Motherduck können wir eine Analyse-Engine erstellen, die in jedem Szenario problemlos einsetzbar ist. Wie machen wir das? Lasst uns darauf eingehen.
Wir würden die native MotherDuck-Benutzeroberfläche verwenden, um Ihnen ein Beispiel dafür zu geben, wie der Dienst funktioniert und warum DuckDB ein leistungsstarkes Tool für die Datenanalyse ist. Bitte registrieren Sie sich auf der Website und erwerben Sie das MotherDuck-Konto, falls Sie dies noch nicht getan haben.
Sobald Sie sich erfolgreich für das MotherDuck-Konto registriert haben, werden wir zur MotherDuck-Benutzeroberfläche weitergeleitet. Versuchen Sie, sich mit der Benutzeroberfläche vertraut zu machen, und Sie werden feststellen, dass die Benutzeroberfläche dem Jupyter-Notebook ähnelt, falls Sie jemals eines verwenden.
Wir werden mit der DBduck-Leistung in der MotherDuck-Benutzeroberfläche mit den DS-Gehaltsdaten von experimentieren Kaggle. Laden Sie die Daten über die Schaltfläche „Dateien hinzufügen“ hoch. Daraufhin wird eine neue Zelle mit der auszuführenden Abfrage angezeigt. Die Abfrage sollte so aussehen.
CREATE OR REPLACE TABLE ds_salaries AS SELECT * FROM read_csv_auto(['ds_salaries.csv']);
Versuchen Sie nach dem Erstellen der Tabelle, die Daten mit dem folgenden Code abzufragen.
select * from my_db.ds_salaries limit 10;
Wie Sie sehen, ähnelt MotherDuck der Datenanalyse in Notebook, jedoch mit SQL-Abfragen. Probieren wir die Abfrage aus, um eine Datenanalyse in MotherDuck durchzuführen.
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
Sie können die Abfrage in der Zelle ausführen; Das Tabellenergebnis wird ähnlich wie im Bild unten angezeigt.
Mit der in der Benutzeroberfläche verfügbaren Auswahlschaltfläche können Sie die Daten herausfiltern, die Tabelle schwenken oder das Ergebnis herunterladen.
MotherDuck ermöglicht dem Benutzer auch den Zugriff auf die Datenbank über Python auf Ihrem Notebook. Wir müssen das DuckDB-Paket mit dem folgenden Code installieren.
pip install duckdb==v0.9.2
Die aktuelle Version, die MotherDuck unterstützt, ist DuckDB 0.9.2; Deshalb haben wir diese Version installiert.
Wenn die Installation erfolgreich ist, müssen wir die DuckDB mit der Motherduck verbinden. Es gibt mehrere Möglichkeiten, die Verbindung zu authentifizieren, wir würden jedoch das Service-Token verwenden. Dieses Token wird in Ihren MotherDuck-Einstellungen erworben.
import duckdb
token = "insert token here"
# initiate the MotherDuck connection
con = duckdb.connect(f'md:?motherduck_token={token}')
Wenn wir keinen Datenbanknamen festlegen würden, würde MotherDuck über die Standarddatenbank zugreifen, die my_db ist. Als Nächstes verwenden wir dieselbe Abfrage wie zuvor im 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()
Sie sehen eine Ausgabe ähnlich der folgenden Tabelle.
┌─────────────────────────────────────┬───────────────────────┐
│ 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 │
└─────────────────────────────────────────────────────────────┘
Mit der obigen Abfrage können Sie den folgenden Code verwenden, um sie im Pandas DataFrame zu verarbeiten.
import pandas as pd
df = con.sql(q).fetchdf()
Abschließend können Sie mit der folgenden Abfrage einen weiteren Datensatz in die Datenbank laden.
con.sql("CREATE TABLE mytable AS SELECT * FROM '~/filepath.csv'")
Bei der obigen Abfrage wird davon ausgegangen, dass es sich bei Ihren Daten um eine CSV-Datei handelt. Weitere Optionen sind S3 oder die lokale DuckDB zur MotherDuck-Datenbank.
DuckDB ist ein Open-Source-Datenbanksystem, das speziell für die Datenanalyse entwickelt wurde. Das System ist darauf ausgelegt, die Datenverarbeitung schnell und effizient abzuwickeln. MotherDuck ist ein Open-Source-verwalteter cloudbasierter Dienst für DuckDB.
Durch die Kombination von DuckDB und MotherDuck können wir unsere Laptops in eine persönliche Analyse-Engine verwandeln, indem wir unsere Daten in der Cloud haben und sie schnell mit DuckDB verarbeiten.
Cornellius Yudha Wijaya ist Data Science Assistant Manager und Data Writer. Während er Vollzeit bei Allianz Indonesien arbeitet, liebt er es, Python- und Datentipps über soziale Medien zu teilen und Medien zu schreiben.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- PlatoData.Network Vertikale generative KI. Motiviere dich selbst. Hier zugreifen.
- PlatoAiStream. Web3-Intelligenz. Wissen verstärkt. Hier zugreifen.
- PlatoESG. Kohlenstoff, CleanTech, Energie, Umwelt, Solar, Abfallwirtschaft. Hier zugreifen.
- PlatoHealth. Informationen zu Biotechnologie und klinischen Studien. Hier zugreifen.
- Quelle: 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
- :hast
- :Ist
- :nicht
- :Wo
- 10
- 125
- 15000
- 20
- 25
- 3d
- 7
- 8
- 8000
- 9
- a
- oben
- Zugang
- Konto
- erwerben
- erworben
- Aktivität
- hinzufügen
- vorantreiben
- Förderung
- Anhäufung
- AI
- Alle
- Allianz
- erlaubt
- bereits
- ebenfalls
- an
- Analyse
- Analytiker
- Analytisch
- Analytische
- Analytik
- und
- Ein anderer
- jedem
- angewandt
- SIND
- AS
- Assistentin
- übernimmt
- At
- authentifizieren
- Autonom
- autonomes Fahrzeug
- verfügbar
- BE
- unten
- zwischen
- erbaut
- Geschäft
- aber
- Taste im nun erscheinenden Bestätigungsfenster nun wieder los.
- by
- CAN
- Zelle
- Änderungen
- Cloud
- Code
- Spalten
- Kombination
- Vereinigung
- community
- Computer
- Computer Vision
- Wettbewerber
- Vernetz Dich
- Verbindung
- könnte
- erstellen
- kritischem
- Strom
- technische Daten
- Datenanalyse
- Datenanalytiker
- Datenanalyse
- Dateningenieur
- Datenverarbeitung
- Datenwissenschaft
- Datenwissenschaftler
- Datenbase
- Standard
- entworfen
- entwickelt
- Entwickler:in / Unternehmen
- DID
- Unterschied
- do
- Dabei
- doppelt
- herunterladen
- effektiv
- effizient
- Motor
- Ingenieur
- etc
- Äther (ETH)
- ÜBERHAUPT
- Jedes
- Beispiel
- ausführen
- Experiment
- vertraut machen
- wenige
- Reichen Sie das
- Mappen
- Filter
- Folgende
- Aussichten für
- Frei
- für
- erzeugt
- bekommen
- ABSICHT
- Gruppe an
- Pflege
- Griff
- Handling
- mit
- he
- dazu beigetragen,
- hier
- Ultraschall
- HTTPS
- if
- Image
- implementiert
- zu unterstützen,
- in
- das
- Indonesien
- initiieren
- installieren
- Installation
- in
- beinhaltet
- Beteiligung
- IT
- join
- Jupyter Notizbuch
- KDnuggets
- Labor
- Laptop
- Laptops
- lernen
- Gefällt mir
- LIMIT
- Belastung
- aus einer regionalen
- aussehen
- aussehen wie
- liebt
- Maschine
- Maschinelles Lernen
- verwaltet
- Management
- Management System
- Manager
- Medien
- viel
- mehrere
- Name
- nämlich
- nativen
- Need
- Bedürfnisse
- Neu
- weiter
- Notizbuch
- of
- on
- EINEM
- Online
- Open-Source-
- Optionen
- or
- Auftrag
- Andere
- UNSERE
- Möglichkeiten für das Ausgangssignal:
- Paket
- Pandas
- Partnerschaft
- perfekt
- persönliche
- Drehpunkt
- Plattform
- Plato
- Datenintelligenz von Plato
- PlatoData
- Bitte
- Werkzeuge
- größte treibende
- ziemlich
- vorher
- Principal
- Prozessdefinierung
- anpassen
- Verarbeitung
- Produkt
- Programmierer
- Öffentlichkeit
- Python
- Abfragen
- schnell
- leicht
- realisieren
- Ungeachtet
- Registrieren
- ersetzen
- Forschungsprojekte
- Forscher
- Folge
- Gehalt
- gleich
- Szenario
- Wissenschaft
- Wissenschaftler
- sehen
- wählen
- Auswahl
- kompensieren
- Einstellungen
- Teilen
- sollte
- gezeigt
- signifikant
- ähnlich
- Ähnlich
- Größe
- Social Media
- Social Media
- Software
- speziell
- SQL
- Stapel
- Unser Team
- erfolgreich
- Erfolgreich
- geeignet
- Support
- Unterstützt
- schnell
- System
- Systeme und Techniken
- Tabelle
- gemacht
- Technologie
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- Sie
- Dort.
- Diese
- fehlen uns die Worte.
- Zeit
- Tipps
- zu
- Zeichen
- Werkzeug
- Werkzeuge
- versuchen
- WENDE
- ui
- -
- Mitglied
- Verwendung von
- gewöhnlich
- Fahrzeug
- Version
- Seh-
- wurde
- Wege
- we
- Webseite
- wann
- welche
- während
- warum
- werden wir
- mit
- Arbeitsablauf.
- arbeiten,
- Werk
- würde
- Schriftsteller
- Schreiben
- U
- Ihr
- sich selbst
- Zephyrnet