Об этом проекте

Ibis — это открытая библиотека Python для датафреймов, созданная для переносимости между движками выполнения. Вместо привязки к одному движку она предоставляет общий Python API для манипулирования данными и компилирует выражения в нативный язык бэкенда, обычно SQL. Ключевые возможности, описанные в README: - Быстрые локальные датафреймы, по умолчанию использующие DuckDB. - Ленивые выражения датафреймов, а также интерактивный режим для итеративного исследования. - Сочетание кода Python для датафреймов с SQL: выражения можно компилировать в SQL через ibis.to_sql, а SQL можно встраивать в конвейер с помощью t.sql(...). - Единый API для более чем 20 бэкендов, включая Apache DataFusion, Apache Druid, Apache Flink, Apache Impala, Apache PySpark, Athena, BigQuery, ClickHouse, Databricks, DuckDB, Exasol, Materialize, MySQL/MariaDB, Oracle, Polars, PostgreSQL, RisingWave, SingleStoreDB, SQL Server, SQLite, Snowflake и Trino. - Переносимость: переключение бэкендов через ibis.set_backend или путём создания объекта подключения (например, ibis.duckdb.connect, ibis.polars.connect, ibis.datafusion.connect), затем перечисление и чтение таблиц или файлов, таких как CSV и Apache Parquet. - Две широкие категории бэкендов: бэкенды, генерирующие SQL, и бэкенды, генерирующие датафреймы. Установка выполняется через pip, например pip install 'ibis-framework[duckdb,examples]'. Проект распространяется под лицензией Apache, управляется независимо и приветствует вклад сообщества через GitHub и Zulip. Документация, руководства и инструкции по установке размещены на ibis-project.org.