Εικόνα που δημιουργήθηκε με DALL-E
Σε μια εποχή όπου η αναλυτική επεξεργασία δεδομένων είναι η κρίσιμη διαφορά μεταξύ μιας επιτυχημένης επιχείρησης και όχι, χρειαζόμαστε μια στοίβα εργαλείων που θα μπορούσε να υποστηρίξει τις ανάγκες. Η πρόοδος της τεχνολογίας βοήθησε να προωθήσουμε όλα αυτά τα εργαλεία δεδομένων που χρειαζόμαστε, δηλαδή το DuckDB και το MotherDuck.
DuckDB είναι ένα σύστημα διαχείρισης βάσεων δεδομένων ανοικτού κώδικα, σε διαδικασία SQL Online Analytical Processing (OLAP). Το σύστημα βάσης δεδομένων έχει σχεδιαστεί για τον γρήγορο χειρισμό των αναλυτικών ερωτημάτων δεδομένων, ανεξάρτητα από το μέγεθος των δεδομένων. Το σύστημα εφαρμόζει συστήματα επεξεργασίας στη μνήμη και OLAP που βελτιώνουν αποτελεσματικά τη διαδικασία ανάλυσης δεδομένων μας.
Το DuckDB είναι ιδανικό για την αποθήκευση και την επεξεργασία δεδομένων πινάκων που περιλαμβάνουν ανάλυση δεδομένων (σύνδεση πινάκων, συγκέντρωση δεδομένων κ.λπ.) και όταν η ροή εργασίας μας συνήθως περιλαμβάνει σημαντικές αλλαγές στον πίνακα. Από την άλλη πλευρά, το DuckDB δεν είναι κατάλληλο για δραστηριότητα δεδομένων μεγάλου όγκου και πολλαπλές ταυτόχρονες διεργασίες σε μία βάση δεδομένων.
MotherDuck είναι μια διαχειριζόμενη υπηρεσία DuckDB-in-the-cloud. Είναι δωρεάν στη χρήση και ανοιχτού κώδικα ενώ διατηρείται από την Κοινότητα DuckDB. Είναι μια υπηρεσία που δημιουργήθηκε από τη συνεργασία με το DuckDB Lab για τη δημιουργία μιας πλατφόρμας υπηρεσιών cloud που μπορεί να χρησιμοποιήσει το κοινό.
Με έναν συνδυασμό DuckDB και Motherduck, μπορούμε να δημιουργήσουμε μια μηχανή ανάλυσης που είναι εύκολα χρησιμοποιήσιμη σε κάθε σενάριο. Πώς θα το κάνουμε αυτό; Ας μπούμε σε αυτό.
Θα χρησιμοποιούσαμε την εγγενή διεπαφή χρήστη MotherDuck για να σας δώσουμε ένα παράδειγμα για το πώς λειτουργεί η υπηρεσία και γιατί το DuckDB είναι ένα ισχυρό εργαλείο για την ανάλυση δεδομένων. Εγγραφείτε στον ιστότοπο και αποκτήστε τον λογαριασμό MotherDuck εάν δεν το έχετε κάνει ήδη.
Μόλις εγγραφείτε επιτυχώς για τον λογαριασμό MotherDuck, θα μεταφερθούμε στη διεπαφή χρήστη MotherDuck. Προσπαθήστε να εξοικειωθείτε με τη διεπαφή χρήστη και θα καταλάβετε ότι η διεπαφή χρήστη είναι παρόμοια με το σημειωματάριο Jupyter, αν ποτέ χρησιμοποιήσετε.
Θα πειραματιστούμε με την ισχύ DBduck στη διεπαφή χρήστη MotherDuck με τα δεδομένα μισθού DS από Kaggle. Μεταφορτώστε τα δεδομένα χρησιμοποιώντας το κουμπί Προσθήκη αρχείων και θα εμφανιστεί ένα νέο κελί με το ερώτημα προς εκτέλεση. Το ερώτημα πρέπει να μοιάζει με αυτό.
CREATE OR REPLACE TABLE ds_salaries AS SELECT * FROM read_csv_auto(['ds_salaries.csv']);
Μόλις δημιουργήσετε τον πίνακα, προσπαθήστε να κάνετε ερώτημα στα δεδομένα με τον ακόλουθο κώδικα.
select * from my_db.ds_salaries limit 10;
Όπως μπορείτε να δείτε, το MotherDuck μοιάζει σχεδόν με την ανάλυση δεδομένων στο Notebook, αλλά με ερωτήματα SQL. Ας δοκιμάσουμε το ερώτημα για να κάνουμε ανάλυση δεδομένων στο 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
Μπορείτε να εκτελέσετε το ερώτημα στο κελί. το αποτέλεσμα του πίνακα φαίνεται παρόμοια με την παρακάτω εικόνα.
Μπορείτε να φιλτράρετε τα δεδομένα, να περιστρέψετε τον πίνακα ή να κάνετε λήψη του αποτελέσματος με το κουμπί επιλογής που είναι διαθέσιμο στη διεπαφή χρήστη.
Το MotherDuck επιτρέπει επίσης στον χρήστη να έχει πρόσβαση στη βάση δεδομένων μέσω Python στο Notebook σας. Πρέπει να εγκαταστήσουμε το πακέτο DuckDB χρησιμοποιώντας τον παρακάτω κώδικα.
pip install duckdb==v0.9.2
Η τρέχουσα έκδοση που υποστηρίζει το MotherDuck είναι το DuckDB 0.9.2. γι' αυτό εγκαταστήσαμε αυτήν την έκδοση.
Όταν η εγκατάσταση είναι επιτυχής, πρέπει να συνδέσουμε το DuckDB με το Motherduck. Υπάρχουν μερικοί τρόποι για τον έλεγχο ταυτότητας της σύνδεσης, αλλά θα χρησιμοποιούσαμε το διακριτικό υπηρεσίας. Αυτό το διακριτικό αποκτάται στις ρυθμίσεις MotherDuck.
import duckdb
token = "insert token here"
# initiate the MotherDuck connection
con = duckdb.connect(f'md:?motherduck_token={token}')
Εάν δεν ορίζαμε κανένα όνομα βάσης δεδομένων, το MotherDuck θα είχε πρόσβαση χρησιμοποιώντας την προεπιλεγμένη βάση δεδομένων, η οποία είναι η my_db. Στη συνέχεια, ας χρησιμοποιήσουμε το ίδιο ερώτημα που κάναμε προηγουμένως στο Σημειωματάριο.
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()
Θα δείτε την έξοδο παρόμοια με τον παρακάτω πίνακα.
┌─────────────────────────────────────┬───────────────────────┐
│ 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 │
└─────────────────────────────────────────────────────────────┘
Με το παραπάνω ερώτημα, μπορείτε να χρησιμοποιήσετε τον ακόλουθο κώδικα για να τα επεξεργαστείτε στο Pandas DataFrame.
import pandas as pd
df = con.sql(q).fetchdf()
Τέλος, μπορείτε να φορτώσετε ένα άλλο σύνολο δεδομένων στη βάση δεδομένων χρησιμοποιώντας το ακόλουθο ερώτημα.
con.sql("CREATE TABLE mytable AS SELECT * FROM '~/filepath.csv'")
Το παραπάνω ερώτημα προϋποθέτει ότι τα δεδομένα σας είναι αρχείο CSV. Άλλες επιλογές περιλαμβάνουν το S3 ή το τοπικό DuckDB στη βάση δεδομένων MotherDuck.
Το DuckDB είναι ένα σύστημα βάσης δεδομένων ανοιχτού κώδικα που αναπτύχθηκε ειδικά για την ανάλυση δεδομένων. Το σύστημα έχει σχεδιαστεί για να χειρίζεται την επεξεργασία δεδομένων γρήγορα και αποτελεσματικά. Το MotherDuck είναι μια διαχειριζόμενη υπηρεσία ανοιχτού κώδικα που βασίζεται σε σύννεφο για το DuckDB.
Συνδυάζοντας το DuckDB και το MotherDuck, μπορούμε να μετατρέψουμε τους φορητούς υπολογιστές μας σε μια μηχανή προσωπικής ανάλυσης, έχοντας τα δεδομένα μας στο cloud και επεξεργάζοντάς τα γρήγορα με το DuckDB.
Cornellius Yudha Wijaya είναι βοηθός διευθυντής επιστήμης δεδομένων και συγγραφέας δεδομένων. Ενώ εργάζεται με πλήρη απασχόληση στην Allianz Indonesia, του αρέσει να μοιράζεται συμβουλές για Python και Data μέσω των μέσων κοινωνικής δικτύωσης και των μέσων συγγραφής.
- SEO Powered Content & PR Distribution. Ενισχύστε σήμερα.
- PlatoData.Network Vertical Generative Ai. Ενδυναμώστε τον εαυτό σας. Πρόσβαση εδώ.
- PlatoAiStream. Web3 Intelligence. Ενισχύθηκε η γνώση. Πρόσβαση εδώ.
- PlatoESG. Ανθρακας, Cleantech, Ενέργεια, Περιβάλλον, Ηλιακός, Διαχείριση των αποβλήτων. Πρόσβαση εδώ.
- PlatoHealth. Ευφυΐα βιοτεχνολογίας και κλινικών δοκιμών. Πρόσβαση εδώ.
- πηγή: 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
- :έχει
- :είναι
- :δεν
- :που
- 10
- 125
- 15000
- 20
- 25
- 3d
- 7
- 8
- 8000
- 9
- a
- πάνω από
- πρόσβαση
- Λογαριασμός
- αποκτούν
- αποκτήθηκαν
- δραστηριότητα
- προσθέτω
- εκ των προτέρων
- προαγωγή
- συσσωμάτωση
- AI
- Όλα
- Allianz
- επιτρέπει
- ήδη
- Επίσης
- an
- ανάλυση
- αναλυτής
- Αναλυτικός
- Αναλυτικός
- analytics
- και
- Άλλος
- κάθε
- εφαρμοσμένος
- ΕΙΝΑΙ
- AS
- Βοηθός
- υποθέτει
- At
- πιστοποιώ την αυθεντικότητα
- αυτονόμος
- αυτόνομο όχημα
- διαθέσιμος
- BE
- παρακάτω
- μεταξύ
- χτισμένο
- επιχείρηση
- αλλά
- κουμπί
- by
- CAN
- κύτταρο
- Αλλαγές
- Backup
- κωδικός
- Στήλες
- συνδυασμός
- συνδυάζοντας
- κοινότητα
- υπολογιστή
- Computer Vision
- ανταγωνιστής
- Connect
- σύνδεση
- θα μπορούσε να
- δημιουργία
- κρίσιμης
- Ρεύμα
- ημερομηνία
- ανάλυση δεδομένων
- αναλυτής δεδομένων
- Δεδομένα Analytics
- μηχανικός δεδομένων
- επεξεργασία δεδομένων
- επιστημονικά δεδομένα
- επιστήμονας δεδομένων
- βάση δεδομένων
- Προεπιλογή
- σχεδιασμένα
- αναπτύχθηκε
- Εργολάβος
- DID
- διαφορά
- do
- πράξη
- διπλασιαστεί
- κατεβάσετε
- αποτελεσματικά
- αποτελεσματικά
- Κινητήρας
- μηχανικός
- κ.λπ.
- Αιθέρας (ΕΤΗ)
- ΠΑΝΤΑ
- Κάθε
- παράδειγμα
- εκτελέσει
- πείραμα
- ενημερώνω
- λίγοι
- Αρχεία
- Αρχεία
- φιλτράρισμα
- Εξής
- Για
- Δωρεάν
- από
- παράγεται
- παίρνω
- Δώστε
- Group
- χέρι
- λαβή
- Χειρισμός
- που έχει
- he
- βοήθησε
- εδώ
- Πως
- HTTPS
- if
- εικόνα
- υλοποιεί
- βελτίωση
- in
- περιλαμβάνουν
- Indonesia
- κινήσει
- εγκαθιστώ
- εγκατάσταση
- σε
- περιλαμβάνει
- συμμετοχή
- IT
- ενταχθούν
- Jupyter Notebook
- KDnuggets
- εργαστήριο
- laptop
- φορητούς υπολογιστές
- μάθηση
- Μου αρέσει
- LIMIT
- φορτίο
- τοπικός
- ματιά
- μοιάζει
- αγαπά
- μηχανή
- μάθηση μηχανής
- διαχειρίζεται
- διαχείριση
- σύστημα διαχείρησης
- διευθυντής
- Εικόνες / Βίντεο
- πολύ
- πολλαπλούς
- όνομα
- και συγκεκριμένα
- ντόπιος
- Ανάγκη
- ανάγκες
- Νέα
- επόμενη
- σημειωματάριο
- of
- on
- ONE
- διαδικτυακά (online)
- ανοικτού κώδικα
- Επιλογές
- or
- τάξη
- ΑΛΛΑ
- δικός μας
- έξω
- παραγωγή
- πακέτο
- Πάντα
- Συνεργαζόμενοι
- τέλειος
- προσωπικός
- άξονας περιστροφής
- πλατφόρμες
- Πλάτων
- Πληροφορία δεδομένων Plato
- Πλάτωνα δεδομένα
- σας παρακαλούμε
- δύναμη
- ισχυρός
- αρκετά
- προηγουμένως
- Κύριος
- διαδικασια μας
- Διεργασίες
- μεταποίηση
- Προϊόν
- Προγραμματιστής
- δημόσιο
- Python
- ερωτήματα
- γρήγορα
- πρόθυμα
- συνειδητοποιήσουν
- Ανεξάρτητα
- κάντε ΕΓΓΡΑΦΗ
- αντικαθιστώ
- έρευνα
- ερευνητής
- αποτέλεσμα
- μισθός
- ίδιο
- σενάριο
- Επιστήμη
- Επιστήμονας
- δείτε
- επιλέξτε
- επιλογή
- υπηρεσία
- σειρά
- ρυθμίσεις
- Κοινοποίηση
- θα πρέπει να
- παρουσιάζεται
- σημαντικός
- παρόμοιες
- Ομοίως
- Μέγεθος
- Μ.Κ.Δ
- social media
- λογισμικό
- ειδικά
- SQL
- σωρός
- Προσωπικό
- επιτυχής
- Επιτυχώς
- κατάλληλος
- υποστήριξη
- Υποστηρίζει
- ταχέως
- σύστημα
- συστήματα
- τραπέζι
- λαμβάνεται
- Τεχνολογία
- ότι
- Η
- Τους
- Εκεί.
- Αυτοί
- αυτό
- ώρα
- συμβουλές
- προς την
- ένδειξη
- εργαλείο
- εργαλεία
- προσπαθώ
- ΣΤΡΟΦΗ
- ui
- χρήση
- Χρήστες
- χρησιμοποιώντας
- συνήθως
- όχημα
- εκδοχή
- μέσω
- όραμα
- ήταν
- τρόπους
- we
- Ιστοσελίδα : www.example.gr
- πότε
- Ποιό
- ενώ
- WHY
- θα
- με
- ροής εργασίας
- εργαζόμενος
- λειτουργεί
- θα
- συγγραφέας
- γραφή
- εσείς
- Σας
- τον εαυτό σας
- zephyrnet