For a full write-up with code examples, latest features, and updates, please see the official Ibis 3.1.0 release blog here.
Before we jump into the latest updates, I want to briefly review what Ibis is and how it’s used. Ibis is an open-source Python framework for accessing data and performing analytical computations using multiple backends, including SQL databases, like Postgres and MySQL, and big data systems, like Google’s BigQuery. Ibis has approximately 500,000 monthly downloads and is used by companies like Google, Heavy.AI, and Microsoft.
Ibis 3.1.0 is live. With this release comes new features, increased backend coverage, and numerous bug fixes. A full list of the changes can be found in the project release notes. Here’s a quick summary of notable changes from the Ibis 3.1.0 release:
The first big change is the
ibis.connect function. You now have a more convenient way to connect to a backend using a connection string, and no longer need to specify which backend module you’re using to connect. This makes it easier to swap between backends, and standardizes connections a bit more.
Unnest support was added in 3.1, allowing users to
unnest arrays data types. This allows you to take a column of arrays and then expand the values out into rows.
There is now a shorthand for lambda functions using
_. This is useful for chaining expressions to one another and helps reduce total line characters and appearances of lambdas.
Ibis 3.1.0 release is live and available. Check out the original blog post here for more detail on these changes, or the patch notes here for specifics. Also, please join the community: contributions are welcome and encouraged–drop into the discussions, raise an issue, or put in a pull request. Get started with Ibis today!