Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    I

    Ibis Project Blog

    ibis-project.org · Company blog · on HN since 2015

    The Ibis project blog covers Ibis, a Python dataframe library that runs on backends like DuckDB, with benchmarks and usage posts.

    Visit blogHN submissions
    Data & VisualizationDatabasesProgramming
    What HN says

    Commenters recommend Ibis as a Python dataframe API over DuckDB and other backends, praising lazy execution, larger-than-memory data, and speed, though one says it gets little discussion.

    Stats for nerds
    39HN people shared it
    10linked in comments
    324story points
    Mar 2026last shared
    2015people per year2026

    Top posts on HN

    1. 1
      Farewell Pandas, and thanks for all the fish
      1 person · 228 points · first shared 2024 · 138 comments on HN
    2. 2
      Ibis: Scaling the Python Data Experience
      27 people · 90 points · first shared 2015 · 10 comments on HN
    3. 3
      Querying 1TB on a laptop with Python dataframes
      3 people · 3 points · first shared 2024 · Discussion on HN
    4. 4
      Querying every file in every release on the Python Package Index (redux)
      2 people · 1 points · first shared 2023 · Discussion on HN
    5. 5
      Querying every file in every release on the Python Package Index (redux)
      1 person · 1 points · first shared 2023 · Discussion on HN
    6. 6
      Ibis+DuckDB vs. X: Performance Across the Ecosystem
      1 person · 1 points · first shared 2023 · 1 comments on HN
    7. 7
      Udf rewriting
      1 person · first shared 2025
    8. 8
      Postgresql
      1 person · first shared 2024
    9. 9
      Why
      1 person · first shared 2024
    10. 10
      Why voda supports ibis
      1 person · first shared 2024

    What HN people wrote when they linked it

    • secretasiandanMar 2025

      1. I would argue there are no "real alternatives". The two most proximate alternatives in feature space are Ibis and Snowpark.

      - Ibis because while it can target multiple engines (as we state in our docs, we are built on and heavily reliant on Ibis), it aims to be "single engine, single session" in its execution in that nothing is expected to persist beyond the current session and an Ibis expression can only have a single engine. We want to be multi-engine and have some artifacts durable across sessions (by way of caching)

      - Snowpark because it is sort of "multi-engine" by way of external functions or python stages, but locked to Snowflake. In some sense, we want to be Anypark: Snowpark like functionality but centered on whatever engine of choice is desired and performant interop with any other engines.

      2. We don't have anything I would hold out as benchmarks yet. We don't aim to be "best in class" / the "fastest engine", we aim to be "in class" for as many operations as possible (we use the word performant). Our goal is to make it easy for an org to choose whichever engine(s) they feel most performant in when they consider the full space of {developer,computation} x {time,cost}. However, Hussain has demonstrated how having information from the "whole pipeline" available but execution deferred can allow for specialized optimization by way of predicate pushdowns (https://ibis-project.org/posts/udf-rewriting/)

      Thanks for your interest and please feel free challenge any of…

    • rapatel0Nov 2024

      Look into [Ibis](https://ibis-project.org/). It's a dataframe library built on duckdb. It supports lazy execution, greater than memory datastructures, remote s3 data and is insanely fast. Also works with basically any backend (postgres, mysql, parquet/csv files, etc) though there are some implementation gaps in places.

      I previously had a pandas+sklearn transformation stack that would take up to 8 hours. Converted it to ibis and it executes in about 4 minutes now and doesn't fill up RAM.

      It's not a perfect apples to apples pandas replacement but really a nice layer on top of sql. after learning it, I'm almost as fast as I was on pandas with expressions.

    • dangetsApr 2025

      I felt the same - have to relearn/lookup everything every time I went back to a project or wanted to do some operations that are simple to describe in SQL but I couldn't wrap my mind around e.g. using multi-indexed dataframes & aggregations properly. These days, I always jump to Polars instead of Pandas - much more intuitive and consistent API. Tons of props to Pandas for all that they did (and continue to do) in the data space, but their API did not evolve very well IMO.

      I've also been wanting to play with Ibis[1] recently, but Polars has been sufficient for me.

      [1] https://ibis-project.org/

    • ajfriendNov 2024

      You can compose SQL with https://ibis-project.org/tutorials/ibis-for-sql-users, which is using https://github.com/tobymao/sqlglot to parse the SQL under the hood.

      As an alternative to parsing the SQL yourself, DuckDB's https://duckdb.org/docs/api/python/relational_api allows you to compose SQL expressions efficiently and lazily, which I've used when playing around with things like https://gist.github.com/ajfriend/eea0795546c7c44f1c24ab0560a846b9

    • hantuskJan 2022

      Not a big fan of SQL dsl's personally. If you feel you'd need a better query syntax and plotting for interactive use, I'd suggest looking at the dataframe libraries that have a larger community to discover how to solve things and have ironed out issues.

      Specifically dataframe logic is easily mappable to dbplyr https://dbplyr.tidyverse.org/articles/sql-translation.html for those that know R and ibis https://ibis-project.org/ for Python/Pandas

    • 0thgenFeb 2024

      Ive found polars quite intuitive, though for python, I lean more towards [ibis](https://ibis-project.org/). The interface is nearly identical, but ibis has the benefit if building sql queries before pulling any actual data (like dbplyr) — whereas polars requires the data to be in-memory (at least for rdb’s, though correct me if Im wrong)

      this to me seems like a good argument for only using ibis, but Im happy to be convinced otherwise

    Related

    Cloudera Blogblog.cloudera.com86 people

    Cloudera taken private for $5.3B, acquires Datacoral and Cazena

    Cloudera Blog
    Company · last shared 2023
    Crunchy Data Blogcrunchydata.com187 people

    Learn Postgres at the Playground – Postgres compiled to WASM running in browser

    Crunchy Data Blog
    Company · last shared 2026
    PouchDB Blogpouchdb.com93 people

    PouchDB, the JavaScript Database That Syncs

    PouchDB Blog
    Company · last shared 2026
    Streamlit Blogblog.streamlit.io19 people

    Streamlit's $35M Series B

    Streamlit Blog
    Company · last shared 2024
    Datadog Blogdatadoghq.com262 people

    Husky, Datadog's Third-Generation Event Store

    Datadog Blog
    Company · last shared 2026
    Apache Libcloud Bloglibcloud.apache.org18 people

    Libcloud: One Interface To Rule Them All

    Apache Libcloud Blog
    Company · last shared 2020
    Engine Yard Blogengineyard.com204 people

    The Number One Trait of a Great Developer

    Engine Yard Blog
    Company · last shared 2025
    ClickHouse Blogclickhouse.com281 people

    28M Hacker News comments as vector embedding search dataset

    ClickHouse Blog
    Company · last shared 2026