1 Punkte von GN⁺ 2025-10-20 | 1 Kommentare | Auf WhatsApp teilen
  • Duck-UI ist eine im Browser laufende SQL IDE, die DuckDB unterstützt
  • Datenabfragen sind in der Webumgebung ohne zusätzliche Installation möglich
  • Durch eine benutzerfreundliche Oberfläche werden schnelle Datenanalyse-Workflows bereitgestellt
  • Als Open-Source-basiert ist die kostenlose Nutzung für Entwickler und Data Scientists möglich
  • Dank seiner schlanken Architektur startet es sehr schnell und gilt im Vergleich zu anderen Datenbank-IDEs als besonders einfach

Einführung in Duck-UI

  • Duck-UI ist eine direkt im Browser ausgeführte SQL IDE, mit der Abfragen für DuckDB durchgeführt werden können
  • Ohne Installationsprozess stellt es über bloßen Webzugriff sofort eine Umgebung für Datenbankabfragen und Datenanalysen bereit
  • Es bietet intuitive Datenwerkzeuge wie das Erkunden von Tabellenstrukturen, das Schreiben von Abfragen und die Ergebnisanzeige
  • Als Open-Source-Projekt kann jeder den Quellcode auf GitHub einsehen und Funktions­erweiterungen vornehmen
  • Die unkomplizierte Datenanalyse mit DuckDB im Web trägt dazu bei, die Produktivität in Entwicklungs- und Datenaufgaben zu erhöhen

1 Kommentare

 
GN⁺ 2025-10-20
Hacker-News-Kommentare
  • DuckDB hat bereits eine eingebaute UI, die ich wirklich bequem nutze. Ich verstehe zwar den Reiz dessen, was der Ersteller gebaut hat, aber dafür ist die andere Lösung im gleichen Anwendungsfall deutlich einfacher und bequemer. Vorstellung der DuckDB UI
    • Allerdings ist sie nicht self-hosted, deshalb kann man die Standard-UI offline nicht nutzen und die Datensicherheit ist auch nicht garantiert.
    • Die eingebaute UI hat keine Chart-Funktion, sondern unterstützt nur grundlegende Statistikgrafiken wie Histogramme pro Spalte. Benutzerdefinierte Charts wie in der Software des OP sind nicht möglich.
  • Ich freue mich total auf die Zukunft von DuckDB
    1. DuckLake ist die beste Data-Lake-Spezifikation, und das Team entwickelt die entsprechende Erweiterung sehr schnell weiter.
    2. Mit DuckDB WASM kann man Apps, die ursprünglich pro Netzwerk-Call 2–3 Sekunden brauchen, auf unter 200 ms bringen.
      In unserer Firma Definite verwenden wir DuckDB als eingebauten Data Lake und sind wirklich sehr zufrieden damit.
    • Mir gefällt die DuckLake-Spezifikation wirklich sehr. Es gibt auch ein ähnliches Projekt für Graphen: graph-archiving, CAP-theorem-for-graphs
      Der Graphdatenbank-Katalog basiert derzeit auf dem inzwischen archivierten kuzu graph db-Projekt, und die Entwicklung wird bei ladybug fortgesetzt.
    • Ich mag duckdb, aber ich verstehe den zweiten Punkt nicht — wie reduziert duckdb wasm die Latenz von Netzwerk-Calls?
    • Stimme zu, nur schade, dass die Unterstützung für Vektoroperationen im experimentellen Status hängen bleibt.
    • Mich würde interessieren, ob DuckDB tatsächlich in Produktionsumgebungen eingesetzt wird.
  • Wirklich großartig, danke
    Ich nutze zwar auch die eingebaute UI gut, werde dieses Projekt aber definitiv ebenfalls ausprobieren.
    DuckDB ist eine der beeindruckendsten Softwares, die ich in meiner gesamten Karriere verwendet habe.
    Selbst Parquet-Dateien im Terabyte-Bereich lassen sich problemlos verarbeiten, und auch die Bindings sind sehr gut gemacht.
    • Volle Zustimmung, ich war auch so beeindruckt von DuckDB, dass ich es in andere Projekte übernommen habe.
      Die Idee, diese App zu 100 % im Browser umzusetzen, entstand bei mir nach einer Erfahrung in einer früheren Firma, in der wir viele CSV-Dateien vieler verschiedener Leute verarbeiten mussten und Excel nicht einmal ein einziges koreanisches Zeichen laden konnte.
      Dieses Tool hat mein Leben viel einfacher gemacht, und ich hoffe, es hilft auch euch weiter.
  • Ich habe nach etwa 5 Minuten Herumprobieren schnelle Probleme und Vorschläge notiert (getestet in Firefox)
    1. Eine meiner Lieblingsfunktionen der eingebauten DuckDB UI ist das Panel, das automatisch Diagramme für jede Spalte erstellt. Es zeigt sowohl den gesamten Datensatz als auch direkt Visualisierungen der Abfrageergebnisse. Für leichte Anwendungsfälle reicht das Diagramm-Panel auch ohne Query völlig aus, daher wäre das für mich ein Grund, statt dieser App die eingebaute Standard-UI zu verwenden.
    2. In der Grid view gibt es kein Panel, das den Inhalt der aktuell ausgewählten Zelle anzeigt. Noch besser wäre es, wenn Formate wie JSON automatisch erkannt und dargestellt würden.
    3. In der Grid view werden derzeit nur bis zu 200 Zeilen gleichzeitig angezeigt. Es wäre gut, wenn intern Infinite Scrolling unterstützt würde, damit sich viele Zeilen (zum Beispiel über 10.000) leicht kopieren lassen. In der eingebauten UI ist es aktuell praktisch, mehrere Zeilen-IDs einfach kopieren zu können.
    4. Im Dropdown für den Spaltenfilter ist ein integriertes Suchfeld zwar gut, aber es ist unpraktisch, dass der Fokus bei jeder Zeicheneingabe automatisch verloren geht.
    5. Das Dropdown-Filtermenü schließt sich nicht automatisch, wenn man außerhalb klickt oder ein anderes Dropdown öffnet.
    6. Das Rechtsklick-Menü des Grid viewers schließt sich zwar beim Loslassen der Maus, aber nicht bei einem Klick außerhalb, und beim Öffnen befindet sich der Cursor auch nicht über dem Menü. Verlässt man das Menü also sofort, bleibt es dauerhaft stehen.
    7. In der Grid view gibt es einen Bug bei der Größenanpassung, nachdem man die Anzahl der angezeigten Zeilen pro Seite geändert hat.
    8. Im Chart viewer ist der Tooltip-Hintergrund transparent, sodass der Text im Dark Mode oder auf gelbem Hintergrund nicht sichtbar ist.
    9. Das Explorer-Seitenpanel wird abhängig von der Fenstergröße proportional skaliert; beim ersten Start ist es zu groß, und es wäre vermutlich besser, eine feste Größe zu verwenden, damit es sich bei Änderungen der Fenstergröße nicht jedes Mal vergrößert.
    • Dieses Feedback ist unglaublich, ich habe alles gut notiert! Vielen Dank, dass du dir die Zeit genommen hast! Ich werde mir alles genau ansehen.
  • Es wäre wirklich schön, wenn sich das mit der Arrow-IPC-Rückgabestruktur aus flightsql oder einem HTTP-Endpunkt integrieren ließe zugehörige Dokumentation
    Mich würde interessieren, ob du für das Charting im letzten Schritt auch den Einsatz von Perspective in Betracht gezogen hast.
    Eigene Charts direkt zu bauen ist sicher eine riesige Aufgabe, aber es ist dir wirklich gut gelungen.
    • Perspective wird DuckDB bald auch direkt unterstützen Update-Verlauf
  • Falls eine Desktop-Version benötigt wird, lohnt sich auch ein Blick auf qstudio.
    Es ist mit DuckDB-Funktionen sowie parquet, csv, Pivot usw. integriert.
    Vorstellung von qstudio
    • Nur eine einfache Vorstellung ist etwas schade.
      Lokal kann man die volle CPU und den gesamten Speicher nutzen, deshalb ist der Leistungsunterschied gegenüber einer Wasm-basierten Lösung überwältigend.
  • Dieses Produkt gefällt mir sehr
    Ein ähnliches Produkt ist auch sql-workbench.com
  • Auf meinem Computer läuft immer duckdb --ui.
    Funktional ist es wirklich hervorragend, aber ich bin unzufrieden damit, dass die UI nicht Open Source ist und nur von motherduck verwaltet wird.
    Es gibt viele kleine, aber wichtige Verbesserungen, doch aus Sicht von motherduck scheint es keinen echten Anreiz zu geben, diese ordentlich umzusetzen, was ich schade finde.
    Ich frage mich, ob dieses Projekt die lokale UI von duckdb ersetzen könnte.
    • Ich mag die motherduck UI auch nicht besonders.
      Übrigens habe ich dieses Projekt zwei Wochen vor dem Release der motherduck UI gebaut, deshalb habe ich es DuckUI genannt (die Domain hatte ich schon gekauft, also habe ich mir über den Namen keine weiteren Gedanken gemacht …).
      Ich möchte es zu der bestmöglichen UI weiterentwickeln, ganz für uns alle.
      Ich würde mich sehr über Ideen und Hilfe freuen, um die fehlenden Teile umzusetzen.
  • Ich frage mich, ob das bereitgestellte DuckDB Wasm identisch mit dem offiziell von DuckDB bereitgestellten DuckDB Wasm ist.
    Soweit ich weiß, unterstützt der offizielle Wasm-Client von DuckDB noch nicht alle Funktionen.
    Mich würde interessieren, ob diese App mehr, weniger oder dieselbe Funktionsmenge unterstützt.