13 पॉइंट द्वारा GN⁺ 2024-03-23 | 1 टिप्पणियां | WhatsApp पर शेयर करें

DuckDB, नई jq के रूप में उभरता हुआ

  • DuckDB प्रोजेक्ट डेटा applications के लिए SQLite जैसी database है, जिसमें बिना अतिरिक्त dependencies के विभिन्न data formats import करने की क्षमता शामिल है.
  • यह JSON files को सीधे database tables के रूप में पढ़ और parse कर सकता है, और यही बात कई अन्य formats पर भी लागू होती है.
  • JSON के साथ काम करते समय आमतौर पर jq का उपयोग किया जाता है, लेकिन जटिल jq syntax की बजाय SQL से परिचित होने के कारण DuckDB का उपयोग अधिक सुविधाजनक लगता है.
  • उदाहरण के लिए, GitHub API का उपयोग करके golang organization के repository information को JSON में लाने के बाद, open source license types के statistics SQL से आसानी से निकाले जा सकते हैं.
  • DuckDB का उपयोग करके SQL statements लिखना documentation देखे बिना भी आसान है, और यह PostgreSQL JSON functions जैसी syntax का उपयोग करता है.
  • DuckDB JSON output भी support करता है, और जरूरत होने पर परिणाम को सुंदर ढंग से दिखाने के लिए jq का उपयोग किया जा सकता है.
  • DuckDB केवल JSON ही नहीं, बल्कि CSV, parquet, Excel files जैसे विभिन्न data formats को भी import कर सकता है.
  • यदि data को लगातार store करने की आवश्यकता नहीं है, तो table बनाए बिना भी data query किया जा सकता है.
  • DuckDB local files के साथ-साथ URL से भी सीधे JSON पढ़ सकता है.

GN⁺ की राय

  • DuckDB उन users के लिए एक दिलचस्प tool हो सकता है जो अक्सर data analysis से जुड़े काम करते हैं. खासकर SQL से परिचित लोगों के लिए, यह JSON data को आसानी से संभालने का एक शक्तिशाली विकल्प बन सकता है.
  • DuckDB का JSON data को सीधे पढ़ पाना data preprocessing प्रक्रिया को सरल बनाता है, और data pipeline बनाते समय अलग data transformation steps को कम करने का लाभ देता है.
  • यदि DuckDB का उपयोग बढ़ता है, तो data analysis और processing के लिए मौजूद जटिल tools की तुलना में इसकी learning curve कम हो सकती है और productivity बेहतर हो सकती है.
  • लेकिन यदि DuckDB अभी व्यापक रूप से ज्ञात नहीं है या community support पर्याप्त नहीं है, तो users को समस्याओं का सामना होने पर समाधान ढूंढना कठिन हो सकता है.
  • DuckDB जैसी सुविधाएँ देने वाले अन्य open source projects में Apache Drill और PrestoDB शामिल हैं, जो बड़े datasets पर SQL queries को support करते हैं.

1 टिप्पणियां

 
GN⁺ 2024-03-23
Hacker News राय
  • jq और बेसिक shell tools का संयोजन

    • jq का syntax और data model बहुत elegant और powerful है, लेकिन standard library की कमी और design की कुछ असहजताओं की वजह से रोज़मर्रा के काम जटिल हो सकते हैं.
    • jq data को line-by-line text में अच्छी तरह बदल देता है, इसलिए इसे Unix shell tools के साथ जोड़ना आसान है.
    • उदाहरण के लिए, project list से OSS license निकालकर हर एक के उपयोग की संख्या गिनने का काम curl ... | jq '.[].license.key' | sort | uniq -c से आसानी से किया जा सकता है.
  • Babashka और Clojure

    • अगर आपको Lisp और Clojure पसंद हैं, तो Babashka को देखना चाहिए.
    • Babashka का इस्तेमाल करके JSON files को process करने, data को group करने और count करने के example code दिए गए हैं.
  • ClickHouse local CLI

    • ClickHouse local CLI JSON और CSV जैसे formats को parse और query करने में बहुत तेज़ है.
    • इसे "दुनिया का सबसे तेज़ JSON query tool" कहा गया है, और serverless data analysis के लिए एक छोटे tool के रूप में पेश किया गया है.
  • jq, DuckDB और SQL का उपयोग

    • jq filtering, mapping और joining जैसे कामों के लिए आदर्श है.
    • उदाहरण के लिए, किसी खास download link को ढूंढने या Terraform state से Kubernetes cluster का KUBE_CONFIG निकालने जैसे कामों में jq का उपयोग किया जा सकता है.
  • Google Sheets query

    • सार्वजनिक Google Sheets data को SQL जैसे तरीके से query किया जा सकता है.
  • SQLite database का उपयोग करके structured logging

    • हर दिन बनने वाले log events को JSON objects के रूप में store किया जा सकता है, और कुछ fields पर index बनाकर उन्हें SQL queries से खोजा जा सकता है.
  • Benthos

    • data transformation, message bus, webhook और database में data ले जाने के लिए Benthos का उपयोग किया जा सकता है.
  • Nushell

    • Nushell ad-hoc data manipulation और सामान्य shell कार्यों के लिए उपयोगी है.
  • pq (prql-query)

    • DuckDB, DataFusion और PRQL का उपयोग करके terminal में data पर काम करना आसान और मज़ेदार बनाने के लिए pq बनाया गया.
    • अभी maintenance में कठिनाई के कारण यह archive स्थिति में है, लेकिन अगर सहयोग करने वाला कोई हो तो स्थिति बदली जा सकती है.
  • JSON और programming languages का उपयोग

    • JSON को programming language के hash map जैसे data structure की तरह संभालने की तुलना में इसके फायदे स्पष्ट नहीं हैं.
    • अगर आप interactive तरीके से काम करना चाहते हैं, तो notebook या REPL का उपयोग कर सकते हैं.