• Je découvre #duckdb
    https://duckdb.org/docs/archive/0.9.2

    Quel merveilleux outil pour travailler avec open data.

    Merci @simplicissimus pour ce lien vers la présentation à Toulouse.
    https://seenthis.net/messages/1038730

    Côté pratique c’est mpressionnant

    Data Import & Export

    CSV Import
    CSV Export
    Parquet Import
    Parquet Export
    Query Parquet
    HTTP Parquet Import
    S3 Parquet Import
    S3 Parquet Export
    JSON Import
    JSON Export
    Excel Import
    Excel Export
    SQLite Import
    PostgreSQL Import

    Tout sauf du #PHP

    There are various client APIs for DuckDB:

    C
    C++
    Java
    Julia
    Node.js
    Python
    R
    Rust
    WebAssembly/Wasm
    ADBC API
    ODBC API

    Additionally, there is a standalone Command Line Interface (CLI) client.

    There are also contributed third-party DuckDB wrappers for:

    C# by Giorgi
    Common Lisp by ak-coram
    Crystal by amauryt
    Go by marcboeker
    Ruby by suketa
    Zig by karlseguin

    Les arguments pour
    https://duckdb.org/why_duckdb

    ... what goals DuckDB has and why and how we try to achieve those goals through technical means. To start with, DuckDB is a relational (table-oriented) DBMS that supports the Structured Query Language (SQL)
    ...
    no external dependencies ...
    no DBMS server software to install ...
    support for complex queries in SQL with a large function library ...

    DuckDB is deeply integrated into Python and R for efficient interactive data analysis. DuckDB provides APIs for Java, C, C++, Julia, Swift, and others.
    ...
    DuckDB is released under the very permissive MIT License
    etc.

    don’t

    High-volume transactional use cases (e.g., tracking orders in a webshop)
    Large client/server installations for centralized enterprise data warehousing
    Writing to a single database from multiple concurrent processes
    Multiple concurrent processes reading from a single writable database

    mais

    PHP example to integrate DuckDB using PHP-FFI
    https://github.com/thbley/php-duckdb-integration

    Currently there is no PHP extension available for using DuckDB, so I created a small library using PHP-FFI.

    DuckDB is an embeddable SQL OLAP database management system. It does not require external servers. Databases are stored in single files (similar to SQLite). Compared to SQLite, DuckDB is much faster. E.g. I imported 16M rows from a CSV file in 5s on my notebook (i5-8250U).

    DuckDB can import CSV files with automatic format detection and automatic table creation using:

    CREATE TABLE test1 AS SELECT FROM read_csv_auto(’test1.csv’);
    CREATE TABLE test2 AS SELECT
    FROM read_csv_auto(’test2.csv.gz’);

    Usage:

    php -dffi.enable=1 test.php

    or:

    docker build -t php-ffi .
    docker run -it —rm -v $(pwd):/code php-ffi php /code/test.php

    Requirements:

    PHP 7.4+ with FFI extension enabled

    Question / défi

    Directly running DuckDB queries on data stored in SQLite files | Hacker News
    https://news.ycombinator.com/item?id=30801575

    #SQL #open_data

  • Meetup Eric Mauvière - Avec DuckDB, gavez-vous d’open data ! - YouTube
    https://www.youtube.com/watch?v=ajo0VBXT6ho

    Nouveau venu parmi les moteurs de requêtes, le « canard » bluffe les habitués par sa vélocité et sa simplicité d’usage. Avec un SQL moderne et amical, il écume tous les formats : CSV, Parquet, JSON et bien d’autres, y compris en ligne. Il se joue de vos dataframes R, Pandas ou Polars et se régale aussi avec les données spatiales.

    Pour vous donner envie de « quacker », rejoignez-nous pour cette présentation basée sur des cas d’usage concrets : elle vous ouvrira de nouveaux espaces et de belles envolées.

    00:00 Introduction
    05:49 Comment utiliser DuckDB
    36:45 Quelques points forts de DuckDB
    47:24 DuckDB, D’ou ça sort ?
    49:43 Savoir utiliser les nouveaux formats orientés colonnes..
    1:00:05 Perspectives et limites