Skip to main content

Airbyte

What is Airbyte?

  • Airbyte 是一个开源数据集成平台,可以将应用程序、API 和数据库中的数据同步到数仓、数据湖和数据库。
  • 您可以将任何 airbyte 源中的数据加载到 Databend。

目前,我们实现了一个实验性的 airbyte destination,允许您将数据从 airbyte 源发送到 databend

注意:

目前我们只实现了 append 模式,这意味着 destination 只会将数据追加到表中,而不会覆盖、更新或删除任何数据。 此外,我们假设您的 databend destination 是 S3 Compatible,因为我们使用 presign 将数据从 databend Stage 复制到表。

要检查您的后端是否支持集成,您可以简单地运行以下命令

CREATE STAGE IF NOT EXISTS airbyte_stage FILE_FORMAT = (TYPE = CSV);
PRESIGN UPLOAD @airbyte_stage/test.csv;

如果您收到类似 Code: 501, Text = Presign is not supported 的错误,则您无法使用此集成。 请阅读 this 了解如何使用 S3 作为存储后端。

创建 Databend 用户

使用 MySQL 客户端连接到 Databend 服务器:

mysql -h127.0.0.1 -uroot -P3307

创建用户:

CREATE USER user1 IDENTIFIED BY 'abc123';

创建数据库:

CREATE DATABASE airbyte;

授予用户权限:

GRANT ALL PRIVILEGES ON airbyte.* TO user1;

配置 Airbyte

要将 Databend 与 Airbyte 结合使用,您应该将我们自定义的连接器添加到您的 Airbyte 实例。 您可以在 Settings -> Destinations -> Custom Destinations -> Add a Custom Destination 页面中添加 destination。 我们的自定义 destination 镜像为 datafuselabs/destination-databend:alpha

设置 Databend destination

注意:

您应该有一个正在运行且可从您的 airbyte 实例访问的 databend 实例。 对于本地 airbyte,您无法将 docker compose 与您的 localhost 网络连接。 您可以查看 ngrok 以隧道传输您的服务(切勿在您的生产环境中公开它)。

测试您的集成

您可以使用 Faker 源来测试您的集成,同步完成后,您可以运行以下命令来查看预期的上传数据。

select * from default._airbyte_raw_users limit 5;
Explore Databend Cloud for FREE
Low-cost
Fast Analytics
Easy Data Ingestion
Elastic Scaling
Try it today