12 poin oleh GN⁺ 2024-10-07 | 2 komentar | Bagikan ke WhatsApp
  • Alat open source untuk inspeksi data, kueri, join, impor, dan ekspor, berguna untuk menangani database dan dokumen
  • Menggunakan bahasa kueri bernama SLQ, serta mendukung berbagai sumber dan format data

Fitur utama

  • Membandingkan tabel database: Dapat menggunakan perintah diff untuk membandingkan metadata sumber atau nilai baris.
  • Mengimpor data dari Excel ke Postgres: Dapat menyisipkan isi worksheet Excel XLSX ke tabel Postgres baru.
  • Melihat metadata database: Dengan flag --json, skema dan metadata lainnya dapat ditampilkan dalam format JSON.
  • Mengambil semua nama kolom dari tabel MySQL: Nama kolom dari tabel tertentu dapat diekstrak dengan mudah.
  • Menjalankan kueri SQL Server dan menyisipkan hasil ke SQLite: Dapat menjalankan kueri di SQL Server dan menyisipkan hasilnya ke SQLite.
  • Mengekspor semua tabel database ke CSV: Dapat mengekstrak nama tabel menggunakan metadata JSON, lalu menulis tiap tabel ke file CSV.

Perintah sumber

  • Menambahkan dan mengelola sumber: Menyediakan perintah untuk menambah, mengaktifkan, memindahkan, mencantumkan, mengelompokkan, melakukan ping, atau menghapus sumber.
  • Perintah tabel database: Menyediakan perintah praktis seperti menyalin, memotong, dan menghapus tabel.

Kueri JSONL

  • Dukungan format JSONL: Dapat mengueri file log dalam format JSON Lines.

Sumber SQL dan format output

  • Database yang didukung: Mendukung Postgres, SQLite, MySQL, MariaDB, SQL Server, Azure SQL Edge, dan lainnya.
  • Sumber lain: Dapat mengimpor data dari format seperti Excel XLSX, CSV, TSV, JSON, JSONA, dan JSONL.
  • Format output: Dapat menghasilkan output dalam berbagai format seperti penyisipan ke database SQL, Excel XLSX, CSV, TSV, JSON, JSONL, JSONA, XML, HTML, Markdown, Raw, dan lainnya.

Ringkasan GN⁺

  • sq adalah alat yang kuat untuk menangani data database dan dokumen, dengan dukungan untuk berbagai sumber dan format data sehingga memberi fleksibilitas dalam pemrosesan data.
  • Berbagai fitur seperti pemindahan data antar-database, pengelolaan metadata, dan konversi data ke beragam format dapat menyederhanakan pekerjaan data.
  • Berguna bagi developer yang tertarik pada administrasi database dan pemrosesan data, terutama dalam proyek yang menangani beragam sumber data.
  • Alat dengan fungsi serupa antara lain jq, pandas, dan Apache Drill.

2 komentar

 
xguru 2024-10-08

SQ - swiss-army knife for data

Saya pernah memperkenalkannya tiga setengah tahun lalu, dan selama itu fiturnya bertambah banyak.

 
GN⁺ 2024-10-07
Opini Hacker News
  • Saya rasa bahasa kueri JQ tidak terlalu menarik. Saya tidak mengerti alasan memilih bahasa mirip XPATH milik JQ saat ingin mengajukan kueri ke database
  • Saya penasaran apakah ada alat yang bisa menerima input JSON lalu menguerinya dengan sintaks SQL. Ini kemungkinan akan lebih menarik bagi pengguna lama
  • Mengusulkan bagaimana kalau Python dikemas sebagai satu berkas eksekusi tunggal, lalu aplikasi dan modul di-symlink dengan gaya Unix
    • Banyak pengembang menempatkan aspek estetika di urutan paling bawah saat memilih alat. Faktor lain lebih penting daripada kemasan atau konsistensi estetika
  • Demo terasa terlalu bergantung pada state. Kekuatan sejati jq adalah keandalannya dan kemampuan untuk memahami perilakunya, dan alat yang bergantung pada state tidak memiliki hal tersebut
  • Saya tidak melihat apa yang tidak bisa dilakukan dengan SQL standar dan alat CLI. Mempelajari SQL standar akan memberi pengetahuan yang lebih bisa dipakai ulang
  • Alat baru selalu bagus. Walaupun tidak menjadi arus utama, menjelajahi cara baru untuk menangani database selalu merupakan hal yang baik
  • Saya suka sq. Ini berguna untuk cepat melakukan pekerjaan sederhana di DB dan mengekspor hasil sebagai CSV atau JSON. Hanya saja, saya berharap bahasa kueri sq (SLQ) mendukung pencocokan substring seperti ... LIKE "SOME_STRING%" di SQL. SQL tetap bisa dipanggil secara manual
  • Saya membaca bahwa fitur output JSON akan ditambahkan ke Postgres. .wrangle | .data berfungsi di iPhone 13 mini
  • Saya berharap alat ini sudah ada saat saya menggunakan database SQL
  • Akan bagus jika ada dukungan TSV untuk log Zeek