mcpField
A
airbyte-connection-setup

airbyte-connection-setup

github.com/dengineproblem数据与数据库60 次安装
代码仓库

关于 airbyte-connection-setup

airbyte-connection-setup 是用于配置和管理 Airbyte 数据连接的技能,涵盖源与目标设置、同步模式、通过 API 创建连接以及故障排查。

主要功能

  1. 01配置源和目标连接
  2. 02选择全量刷新或增量同步模式
  3. 03通过 API 创建源
  4. 04排查网络、认证和架构问题
  5. 05应用连接安全与性能实践

适用场景

  1. 01设置源与目标之间的数据流
  2. 02为连接选择同步方式
  3. 03排查连接失败或数据变化问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dengineproblem/agents-monorepo --skill airbyte-connection-setup

安装后在 Claude Code 中输入/airbyte-connection-setup确认已加载。

详细介绍

Airbyte 连接设置专家

Airbyte 连接的设置与管理专家。

基本原则

连接架构
  • 源-目标对:带有转换的数据流
  • 增量同步:优先于全量刷新
  • 架构演进:处理架构变更
  • 故障恢复:可靠地处理错误
同步模式
  • Full Refresh:完整覆盖数据
  • Incremental Append:添加新记录
  • Incremental Deduped:按主键去重

Docker Compose 设置

version: '3.8'
services:
  db:
    image: airbyte/db:${VERSION}
    environment:
      - POSTGRES_USER=${DATABASE_USER}
      - POSTGRES_PASSWORD=${DATABASE_PASSWORD}
    volumes:
      - db:/var/lib/postgresql/data

  server:
    image: airbyte/server:${VERSION}
    environment:
      - DATABASE_PASSWORD=${DATABASE_PASSWORD}
      - DATABASE_URL=${DATABASE_URL}
      - WORKSPACE_ROOT=/tmp/workspace
    ports:
      - "8001:8001"
    volumes:
      - workspace:/tmp/workspace
      - data:/data
    depends_on:
      - db

  webapp:
    image: airbyte/webapp:${VERSION}
    ports:
      - "8000:80"
    depends_on:
      - server

源配置

# PostgreSQL источник
source_config = {
    "host": "localhost",
    "port": 5432,
    "database": "production_db",
    "username": "airbyte_user",
    "password": "secure_password",
    "ssl_mode": {"mode": "require"},
    "replication_method": {
        "method": "CDC",
        "plugin": "pgoutput",
        "initial_waiting_seconds": 300
    }
}

目标配置

# Snowflake назначение
destination_config = {
    "host": "account.snowflakecomputing.com",
    "role": "AIRBYTE_ROLE",
    "warehouse": "AIRBYTE_WAREHOUSE",
    "database": "AIRBYTE_DATABASE",
    "schema": "RAW_DATA",
    "username": "airbyte_user",
    "password": "secure_password",
    "loading_method": {"method": "Internal Staging"}
}

同步配置

{
  "syncCatalog": {
    "streams": [
      {
        "stream": {
          "name": "users",
          "supportedSyncModes": ["full_refresh", "incremental"]
        },
        "config": {
          "syncMode": "incremental",
          "cursorField": ["updated_at"],
          "destinationSyncMode": "append_dedup",
          "primaryKey": [["id"]]
        }
      }
    ]
  },
  "schedule": {
    "units": 1,
    "timeUnit": "hours"
  }
}

API 集成

import requests

# Создание источника
source_payload = {
    "sourceDefinitionId": "decd338e-5647-4c0b-adf4-da0e75f5a750",
    "connectionConfiguration": source_config,
    "workspaceId": workspace_id,
    "name": "Production PostgreSQL"
}

response = requests.post(
    f"{airbyte_url}/api/v1/sources/create",
    json=source_payload,
    headers={"Content-Type": "application/json"}
)

# Создание подключения
connection_payload = {
    "sourceId": source_id,
    "destinationId": destination_id,
    "syncCatalog": sync_catalog,
    "schedule": {"units": 1, "timeUnit": "hours"}
}

requests.post(
    f"{airbyte_url}/api/v1/connections/create",
    json=connection_payload
)

故障排除

常见问题
  1. 网络连接:检查防火墙和访问权限
  2. 身份验证:检查权限和有效期
  3. 资源限制:监控内存和 CPU
  4. 架构变更:更新配置
优化
  • 调整批次大小
  • 使用连接池
  • 为游标字段建立索引
  • 监控性能
安全
  • 将机密存储在 vault 中
  • 对所有连接使用 SSL/TLS
  • 网络分段
  • 定期更新

评论

支持 Markdown