Об этом проекте
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.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.