postgres_scanner VS duckdf

Compare postgres_scanner vs duckdf and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
postgres_scanner duckdf
6 3
179 41
5.0% -
9.3 0.0
16 days ago 4 months ago
C++ R
MIT License GNU General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

postgres_scanner

Posts with mentions or reviews of postgres_scanner. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-14.
  • Connect ODBC Databases to DuckDB
    3 projects | news.ycombinator.com | 14 Jul 2023
    I've created an ODBC DuckDB extension to query any database that has an ODBC driver. It's modeled after the fantastic official Postgres scanner extension https://github.com/duckdblabs/postgres_scanner.

    It supports fetching rowsets in batches to minimize network overhead and defaults to the default DuckDB vector size of 2048.

    I've tested it against the IBM DB2 & Postgres ODBC drivers and will continue to test and add support for all major databases. If you've got one you'd like to see let me know in the comments.

    I've got plenty of improvements in the pipeline including:

  • DuckDB 0.7.0
    2 projects | news.ycombinator.com | 13 Feb 2023
    It's not a dumb question at all. I'm pretty knowledgeable with DBs and still find it very difficult to understand how many of these front-end/pass-through engines work.

    Checkout Postgres Foreign Data Wrappers. That might be the most well known approach for accessing one database through another. The Supabase team wrote an interesting piece about this recently.

    https://supabase.com/blog/postgres-foreign-data-wrappers-rus...

    You might also want to try out duckdb's approach to reading other DBs (or DB files). They talk about how they can "import" a sqlite DB in the above 0.7.0 announcement, but also have some other examples in their duckdblabs github project. Check out their "...-scanner" repos:

    https://github.com/duckdblabs/postgres_scanner

    https://github.com/duckdblabs/sqlite_scanner

  • DuckDB – in-process SQL OLAP database management system
    4 projects | news.ycombinator.com | 10 Feb 2023
    Doesn't postgres have a columnar option? If so, you could prob get better performance for your analytical interactions if you switched some tables to columnar.

    Otherwise check out postgres scanner. https://github.com/duckdblabs/postgres_scanner

  • DuckDB on YugabyteDB
    2 projects | dev.to | 22 Nov 2022
  • Notes on the SQLite DuckDB Paper
    4 projects | news.ycombinator.com | 1 Sep 2022
    DuckDB can actually read SQLite or Postgres directly! In the SQLite case, something like Litestream plus DuckDB could work really well!

    Also, with Pyarrow's help, DuckDB can already do this with Delta tables!

    https://github.com/duckdblabs/sqlite_scanner

    https://github.com/duckdblabs/postgresscanner

  • Friendlier SQL with DuckDB
    8 projects | news.ycombinator.com | 12 May 2022
    Interesting thought! I have not tried this yet so I only have a guess as an answer. Could you export the data as SQL statements and then run those statements on DuckDB? That may be easier to set up, but may take longer to run...

    DuckDB also has the ability to read Postgres data directly, and there is a Postgres FDW that can read from DuckDB!

    https://github.com/duckdblabs/postgresscanner

    https://github.com/alitrack/duckdb_fdw

duckdf

Posts with mentions or reviews of duckdf. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-10.
  • DuckDB – in-process SQL OLAP database management system
    4 projects | news.ycombinator.com | 10 Feb 2023
    Quite a while ago, when duckdb was just a duckling, I wrote an R package that supported direct manipulation of R dataframes using SQL.[1] duckdb was the engine for this.

    The approach was never as fast as data.table but did approach the speed of dplyr for more complex queries.

    Life had other things in store for me and I haven’t touched this library for a while now.

    At the time there was no Julia connector for duckdb, but now that there is, I’d like to try this approach in that language.

    [1] https://github.com/phillc73/duckdf

  • ClickHouse as an alternative to Elasticsearch for log storage and analysis
    13 projects | news.ycombinator.com | 2 Mar 2021
    Yeah, I agree sqldf is quite slow. Fair point.

    As you've seen, duckdb registers an "R data frame as a virtual table." I'm not sure what they mean by "yet" either.

    Of course it is possible to write an R dataframe to an on-disk duckdb table, if that's what you want to do.

    There are some simple benchmarks on the bottom of the duckdf README[1]. Essentially I found for basic SQL SELECT queries, dplyr is quicker, but for much more complex queries, the duckdf/duckdb combination performs better.

    If you really want speed of course, just use data.table.

    [1] https://github.com/phillc73/duckdf

  • Julia 1.6: what has changed since Julia 1.0?
    9 projects | news.ycombinator.com | 14 Feb 2021
    That's a really good point that I'd not really thought about. I'd never really considered the difference between calling just functions versus macros.

    Thinking about Query.jl and DataFramesMeta.jl, and I am for sure not an expert in either, I can't specifically speak to your `head` example, but other base functions can be combined with macros. For example, see the LINQ examples from DataFramesMeta.jl[1] where `mean` is being used. Or again the LINQ style examples in Query.jl[2], where `descending` is used in the first example, or `length` later in the Grouping examples.

    Is that the kind of thing you meant?

    For whatever reason, with the way my brain is wired, the LINQ style of query just works for me. I have never directly used LINQ, but do have some SQL experience. In fact, I wrote some dinky little wrapper functions[3] around duckdb[4] so I could directly query R dataframes and datatables with SQL using that backend, rather than sqldf[5].

    [1] https://juliadata.github.io/DataFramesMeta.jl/stable/#@linq-...

    [2] https://www.queryverse.org/Query.jl/stable/linqquerycommands...

    [3] https://github.com/phillc73/duckdf

    [4] https://duckdb.org/

    [5] https://cran.r-project.org/web/packages/sqldf/index.html

What are some alternatives?

When comparing postgres_scanner and duckdf you can also consider the following projects:

odbc-scanner-duckdb-extension - A DuckDB extension to read data directly from databases supporting the ODBC interface

tidyquery - Query R data frames with SQL

ClickBench - ClickBench: a Benchmark For Analytical Databases

Typesense - Open Source alternative to Algolia + Pinecone and an Easier-to-Use alternative to ElasticSearch ⚑ πŸ” ✨ Fast, typo tolerant, in-memory fuzzy Search Engine for building delightful search experiences

sqlite_scanner - DuckDB extension to read and write to SQLite databases

julia - The Julia Programming Language

budibase - Budibase is an open-source low code platform that helps you build internal tools in minutes πŸš€

loki - Like Prometheus, but for logs.

go-duckdb - go-duckdb provides a database/sql driver for the DuckDB database engine.

Makie.jl - Interactive data visualizations and plotting in Julia

duckdb - DuckDB is an in-process SQL OLAP Database Management System

MeiliSearch - A lightning-fast search API that fits effortlessly into your apps, websites, and workflow