S3
使用云存储可能会产生外发成本。外发是指从云存储系统传输的数据,例如下载文件或从不同位置访问它们。有关外发成本的详细信息,请参阅 AWS S3 定价指南。
先决条件
- 访问包含要复制的文件的 S3 存储桶。
- 对于私有存储桶,需要一个具有授予从存储桶读取权限的 AWS 账户。
设置指南
步骤 1:设置 S3
如果正在从私有存储桶同步,则需要验证连接。这可以通过使用 IAM 用户(具有 AWS 访问密钥 ID 和 秘密访问密钥)或 IAM 角色(具有 角色 ARN)来完成。首先创建具有所需权限的策略
创建策略
- 登录到您的 Amazon AWS 账户并打开 IAM 控制台。
- 在 IAM 仪表板中,选择 策略,然后单击 创建策略。
- 选择 JSON 选项卡,然后将以下 JSON 粘贴到策略编辑器中(请务必替换您的存储桶名称)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::{your-bucket-name}/*",
"arn:aws:s3:::{your-bucket-name}"
]
}
]
}
目前,仅对象级权限不足以成功验证连接。请确保包含提供的示例中提供的存储桶级权限。
- 为您的策略指定一个描述性名称,然后单击 创建策略。
选项 1:使用 IAM 用户
- 在 IAM 仪表板中,单击 用户。选择现有的 IAM 用户或通过单击 添加用户 创建一个新用户。
- 如果您正在使用现有 IAM 用户,请单击 添加权限 下拉菜单并选择 添加权限。如果您正在创建新用户,则在选择名称后,您将被带到权限屏幕。
- 选择直接附加权限,然后找到并选中您的新策略。单击下一步,然后单击添加权限。
- 成功创建用户后,选择 安全凭证 选项卡并单击 创建访问密钥。系统将提示您选择用例并为您的访问密钥添加可选标签。单击 创建访问密钥 以生成密钥。
您的 秘密访问密钥 仅在创建时可见一次。请务必复制并安全地存储它以供将来使用。
有关管理您的访问密钥的更多信息,请参阅 官方 AWS 文档。
选项 2:使用 IAM 角色(最安全)
使用 OSS 平台不支持 IAM 角色成员的 S3 身份验证。
使用 IAM 角色成员的 S3 身份验证必须由 Airbyte 团队的成员启用。如果您想使用此功能,请 联系销售团队 以获取更多信息。
-
在 IAM 仪表板中,单击角色,然后创建角色。
-
选择AWS 账户受信任实体类型。
-
设置角色的信任关系。这允许 Airbyte 实例的 AWS 账户承担此角色。您还需要指定外部 ID,这是信任服务(Airbyte)和受信任角色(您正在创建的角色)都知道的秘密密钥。此 ID 用于防止“困惑的代理”问题。外部 ID 应该是您的 Airbyte 工作区 ID,可以在您的工作区页面的 URL 中找到。编辑信任关系策略以包含外部 ID
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::094410056844:user/delegated_access_user"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "{your-airbyte-workspace-id}"
}
}
}
]
}
- 完成角色创建并记下角色 ARN。
步骤 2:在 Airbyte 中设置 S3 连接器
对于 Airbyte Cloud:
- 登录到您的 Airbyte Cloud 账户。
- 点击“来源”,然后点击“+ 新来源”。
- 在设置来源页面上,从来源类型下拉菜单中选择 S3。
- 输入 S3 连接器的名称。
- 选择一种 交付方法 来传输您的数据。
- 输入包含要复制的文件的 存储桶 的名称。
- 添加流
- 选择 文件格式
- 在 格式 框中,使用下拉菜单选择您想要复制的文件的格式。支持的格式是 CSV、Parquet、Avro 和 JSONL。切换 可选字段 按钮可以在 格式 框中允许您根据所选格式输入其他配置。有关这些设置的详细说明,请参阅 文件格式 部分。
- 为流指定一个 名称
- (可选) 输入 Glob 模式,它决定要同步哪些文件。这是一个正则表达式,允许 Airbyte 模式匹配要复制的特定文件。如果您正在复制存储桶中的所有文件,请使用
**作为模式。有关更精确的模式匹配选项,请参阅 Glob 模式 部分。 - (可选) 修改 历史记录已满时同步的天数 值。这使您可以控制我们将用于确定要同步哪些文件的回溯窗口。有关详细信息,请参阅 状态 部分。
- (可选) 如果您想强制执行特定的模式,可以输入 输入模式。默认情况下,此值设置为
{},将自动从您正在复制的文件推断模式。有关提供自定义模式的详细信息,请参阅 用户模式 部分。 - (可选) 选择 无模式 选项,以跳过所有针对模式的记录验证。如果选择此选项,模式将为
{"data": "object"},并且所有下游数据都将嵌套在“data”字段中。如果您的记录模式经常更改,这是一个不错的选择。 - (可选) 选择 验证策略,以告诉 Airbyte 如何处理与模式不匹配的记录。您可以选择无论如何发出记录(未包含在模式中的字段可能不会到达目标),完全跳过记录,或等待下一次发现(将在接下来的 24 小时内发生)。
- 要验证您的私有存储桶:
- 如果使用 IAM 角色,请输入 AWS 角色 ARN。
- 如果使用 IAM 用户凭证,请填写 AWS 访问密钥 ID 和 AWS 秘密访问密钥 字段,并提供适当的凭证。
所有其他字段都是可选的,可以保留为空。有关每个字段的更多信息,请参阅 S3 提供程序设置 部分。
对于 Airbyte 开源:
- 导航到 Airbyte 开源仪表板。
- 点击“来源”,然后点击“+ 新来源”。
- 在设置来源页面上,从来源类型下拉菜单中选择 S3。
- 输入 S3 连接器的名称。
交付方法
选择一种 交付方法 来传输您的数据。
在文件路径中保留子目录
如果启用,会将子目录文件夹结构与源文件名一起发送到目标。否则,文件将仅按其名称同步。如果未启用基于文件的复制,则忽略此选项。
支持的同步模式
S3 来源连接器支持以下 同步模式
| 功能 | 支持? |
|---|---|
| 完全刷新同步 | 是 |
| 增量同步 | 是 |
| 复制增量删除 | 否 |
| 复制多个文件(模式匹配) | 是 |
| 复制多个流(不同的表) | 是 |
| 命名空间 | 否 |
支持的流
没有预定义的流。流基于存储桶的内容。
文件压缩
| 压缩 | 支持? |
|---|---|
| Gzip | 是 |
| Zip | 是 |
| Bzip2 | 是 |
| Lzma | 否 |
| Xz | 否 |
| Snappy | 否 |
请告诉我们您希望在下一步支持的任何特定压缩。
Glob 模式
(简而言之 -> 路径模式语法使用 wcmatch.glob。启用了 GLOBSTAR 和 SPLIT 标志。)
此连接器可以通过使用类似 glob 的模式同步多个文件,而无需为每个文件指定特定路径。这使得
- 使用单个模式引用多个文件,例如
**将指示存储桶中的每个文件。 - 引用尚未存在的未来文件(因此没有特定的路径)。
您必须提供一个路径模式。您还可以使用用 | 分隔的多个模式,以用于更复杂的目录布局。
每个路径模式都是从存储桶的根目录的引用,因此请不要在模式中包含存储桶名称。
一些示例模式
**:匹配所有内容。**/*.csv:匹配具有特定扩展名的所有文件。myFolder/**/*.csv:匹配 myFolder 下的任何位置的所有 csv 文件。*/**:匹配至少位于一个文件夹深的任何内容。*/*/*/**:匹配至少位于三个文件夹深的任何内容。**/file.*|**/file:匹配名为“file”的任何文件,具有任何扩展名(或没有扩展名)。x/*/y/*: 匹配位于文件夹 x -> 任意文件夹 -> 文件夹 y 中的所有文件。**/prefix*.csv:匹配具有特定前缀的所有 csv 文件。**/prefix*.parquet:匹配具有特定前缀的所有 parquet 文件。
让我们看一个具体的例子,匹配以下存储桶布局
myBucket
-> log_files
-> some_table_files
-> part1.csv
-> part2.csv
-> images
-> more_table_files
-> part3.csv
-> extras
-> misc
-> another_part1.csv
我们想要获取 part1.csv、part2.csv 和 part3.csv(暂时排除 another_part1.csv)。我们可以通过几种不同的方式做到这一点
- 我们可以使用单个模式
**/part*.csv获取每个名为“partX”的 csv 文件。 - 为了更健壮,我们可以使用双模式
some_table_files/*.csv|more_table_files/*.csv仅从这些确切的文件夹中获取相关文件。 - 我们可以通过使用模式
*table_files/*.csv实现上述目的。但是,如果将来开始创建新的意外文件夹,这可能会导致问题。 - 我们还可以递归地使用通配符,因此添加模式
extras/**/*.csv将拾取嵌套在 "extras" 下的文件夹中的任何 csv 文件,例如 "extras/misc/another_part1.csv"。
正如你可能猜到的,有很多方法可以使用路径模式来实现相同的目标。我们建议使用确保清晰且对目录结构的未来添加具有鲁棒性的模式。
状态
为了执行增量同步,Airbyte 会从最旧到最新同步文件。每个同步的文件(最多 10,000 个文件)都将作为连接状态消息的“历史记录”部分中的一个条目添加。一旦历史记录已满,我们将从文件中删除较旧的消息,并且仅读取自历史记录中最新文件的日期和 Days to Sync if History is Full 天之前的最后修改文件。
用户模式
提供模式可以更好地控制此流的输出。如果没有提供模式,则列和数据类型将从匹配你的路径模式和后缀的存储桶中的第一个创建的文件中推断。在大多数情况下这可能没问题,但你可能希望强制执行模式,例如:
不提供 CSV 文件的模式,所有列都将被推断为 string。
- 你只关心特定已知的一组列。其他列仍然会全部包含在内,但会打包到
_ab_additional_properties地图中。 - 你的初始数据集非常小(就记录数而言),并且你认为从这个样本中自动推断出的类型可能不能代表未来的数据。
- 你希望为每列明确定义类型。
- 你知道将来数据中将添加的列的名称,并且希望将这些列包含在核心模式中作为列,而不是让它们出现在
_ab_additional_properties地图中。
或者任何其他原因!模式必须作为有效的 JSON 提供,形式为 {"column": "datatype"},其中每个 datatype 是以下之一:
- 字符串
- 数字
- 整数
- 对象
- array
- 布尔值
- null
例如
{"id": "integer", "location": "string", "longitude": "number", "latitude": "number"}{"username": "string", "friends": "array", "information": "object"}
请注意,S3 源连接器过去会从所有可用文件中推断模式,然后将它们合并以创建一个超集模式。从版本 2.0.0 开始,模式推断仅基于找到的第一个文件进行。我们考虑的第一个文件是写入前缀的最旧的文件。
S3 提供商设置
- AWS 访问密钥 ID:访问私有存储桶所需的 所需凭证 的一半。
- AWS 秘密访问密钥:访问私有存储桶所需的 所需凭证 的另一半。
- 端点:一个可选参数,用于启用使用与 Amazon S3 兼容的非 Amazon 服务。如果你正在使用默认的 Amazon 服务,请将此字段留空。
- 开始日期:一个可选参数,用于标记数据复制的起始日期和时间(UTC)。自指定日期/时间以来未修改的任何文件将不会被复制。使用提供的日期选择器(推荐)或以
YYYY-MM-DDTHH:mm:ssZ格式以编程方式输入所需的日期。将此字段留空将复制所有未被 路径模式 和 路径前缀 排除的文件的数据。
文件格式设置
CSV
由于 CSV 文件实际上是纯文本,因此通常需要提供特定的读取器选项才能正确解析文件。这些设置在创建或导出 CSV 时应用,因此请确保此过程随着时间的推移保持一致。
- 标题定义:将如何定义标题。
用户提供假定 CSV 没有标题行并使用提供的标题,而自动生成假定 CSV 没有标题行,并且 CDK 将使用f{i}生成标题,其中i从 0 开始的索引。否则,默认行为是使用 CSV 文件中的标题。如果用户想为带有标题的 CSV 自动生成或提供列名,他们可以将值设置为 "标题前跳过的行数" 选项以忽略标题行。 - 分隔符:虽然 CSV 是逗号分隔值的缩写,但它更普遍地用作平面文件数据的术语,这些数据可能或可能不以逗号分隔。分隔符字段允许你指定哪个字符充当分隔符。要使用 制表符分隔符,你可以将此值设置为
\t。默认情况下,此值设置为,。 - 双引号:此选项确定 CSV 值中的两个引号是否表示数据中的单个引号。默认设置为 True。
- 编码:某些数据可能使用不同的字符集(通常在涉及不同字母表时)。请参阅 此处允许的编码列表。默认设置为
utf8。 - 转义字符:可以使用转义字符来前缀保留字符并确保正确解析。常用的字符是反斜杠 (
\)。例如,给定以下数据
Product,Description,Price
Jeans,"Navy Blue, Bootcut, 34\"",49.99
反斜杠 (\) 直接位于第二个双引号 (") 之前,表示它不是字段的闭合引号,而是应该包含在值中的文字双引号字符(在本例中,表示牛仔裤的尺寸,单位为英寸:34")。
将此字段留空(默认选项)将禁止转义。
- False 值:一组区分大小写的字符串,应将其解释为 false 值。
- Null 值:一组区分大小写的字符串,应将其解释为 null 值。例如,如果值 'NA' 应解释为 null,请在此字段中输入 'NA'。
- 引号字符:在某些情况下,数据值可能包含保留字符的实例(例如,如果分隔符是逗号)。CSV 可以通过用定义的引号字符包装值来处理此问题,以便在读取时可以正确解析它。默认设置为
"。 - 标题后跳过的行数:标题行后要跳过的行数。
- 标题前跳过的行数:标题行前要跳过的行数。
- 字符串可以为 Null:是否可以将字符串解释为 null 值。如果为 true,则与 null_values 集合匹配的字符串将被解释为 null。如果为 false,则与 null_values 集合匹配的字符串将被解释为字符串本身。
- True 值:一组区分大小写的字符串,应将其解释为 true 值。
Parquet
Apache Parquet 是 Apache Hadoop 生态系统的列式数据存储格式。它提供高效的数据压缩和编码方案,并具有增强的性能来处理批量复杂数据。目前,不支持分区 parquet 数据集。可用的设置如下
- 将十进制字段转换为浮点数:是否将十进制字段转换为浮点数。将十进制转换为浮点数会损失精度,因此不建议这样做。
Avro
Avro 解析器使用 Fastavro 库。可用的设置如下
- 将双精度字段转换为字符串:是否将双精度字段转换为字符串。如果你的数字具有高精度的十进制数,建议这样做,因为处理浮点数可能会损失精度。
JSONL
目前没有 JSONL 解析选项。
文档文件类型格式(实验性)
文档文件类型格式目前是一项实验性功能,不受 SLA 约束。请自行承担风险使用。
文档文件类型格式是一种特殊格式,允许你从 Markdown、TXT、PDF、Word 和 Powerpoint 文档中提取文本。如果选择,连接器将从文档中提取文本并将其输出为名为 content 的单个字段。document_key 字段将保存已处理文件的唯一标识符,可以用作主键。文档的内容将包含从原始文件格式转换的 markdown 格式。将发出一个记录用于每个文档。请记住,大文件可能会发出不适合每个目标的大型记录,因为每个目标对字符串字段都有不同的限制。
将为每个文档发出一个记录。请记住,大文件可能会发出不适合每个目标的大型记录,因为每个目标对字符串字段都有不同的限制。
通过 Unstructured.io Python 库解析
此连接器利用开源 Unstructured 库来执行 PDF 和 MS Word 文件的 OCR 和文本提取,以及从嵌入式表格和图像中提取文本。你可以在 Unstructured 文档 中了解更多关于解析逻辑的信息,你可以在 www.unstructured.io 上了解有关其他 Unstructured 工具和服务的更多信息。
参考
配置字段参考
变更日志
展开以查看
| 版本 | 日期 | 拉取请求 | 主题 |
|---|---|---|---|
| 4.15.2 | 2025-11-11 | 69268 | 更新依赖项 |
| 4.15.1 | 2025-11-04 | 68844 | 更新依赖项 |
| 4.15.0 | 2025-10-29 | 68640 | 更新依赖项 |
| 4.14.6 | 2025-10-21 | 67222 | 更新依赖项 |
| 4.14.5 | 2025-10-08 | 67494 | 修复 zip 文件的 utf_8_sig 编码 |
| 4.14.4 | 2025-09-30 | 60547 | 更新依赖项 |
| 4.14.3 | 2025-09-15 | 66023 | 更新到 CDK v7 |
| 4.14.2 | 2025-05-22 | 60863 | chore(source-s3): 将基础镜像升级到 4.0.1 |
| 4.14.1 | 2025-05-10 | 58988 | 更新依赖项 |
| 4.14.0 | 2025-05-06 | 59685 | 将发布候选版本 4.14.0-rc.1 提升到主版本。 |
| 4.14.0-rc.1 | 2025-05-05 | 57498 | 使文件传输记录适应最新的协议,需要平台 >= 1.7.0,destination-s3 >= 1.8.0 |
| 4.13.5 | 2025-04-19 | 57994 | 更新依赖项 |
| 4.13.4 | 2025-04-05 | 57485 | 更新依赖项 |
| 4.13.3 | 2025-03-29 | 56791 | 更新依赖项 |
| 4.13.2 | 2025-03-22 | 52953 | 更新依赖项 |
| 4.13.1 | 2025-03-13 | 55694 | 修复 csv 列名是 'type' 的错误 |
| 4.13.0 | 2025-03-12 | 55202 | 将基础镜像升级到 4.0.0,同时升级 CDK |
| 4.12.2 | 2025-02-14 | 53684 | 添加 pendulum 到依赖项 |
| 4.12.1 | 2025-01-25 | 52509 | 更新依赖项 |
| 4.12.0 | 2025-01-20 | 52030 | 将发布候选版本 4.12.0-rc.1 提升到主版本。 |
| 4.12.0-rc.1 | 2025-01-15 | 51474 | 升级 cdk 以在复制原始文件功能中保留子目录(默认) |
| 4.11.4 | 2025-01-11 | 51370 | 更新依赖项 |
| 4.11.3 | 2025-01-04 | 50932 | 更新依赖项 |
| 4.11.2 | 2024-12-28 | 50739 | 更新依赖项 |
| 4.11.1 | 2024-12-21 | 49042 | 更新依赖项 |
| 4.11.0 | 2024-12-17 | 49824 | 将文件大小限制增加到 1.5GB |
| 4.10.2 | 2024-11-25 | 48613 | 从这个版本开始,Docker 镜像现在是 rootless。 请注意,此版本和未来的版本将与 Airbyte 版本早于 0.64 不兼容 |
| 4.10.1 | 2024-11-12 | 48346 | 实现文件传输功能 |
| 4.9.2 | 2024-11-04 | 48259 | 更新依赖项 |
| 4.9.1 | 2024-10-29 | 47038 | 更新依赖项 |
| 4.9.0 | 2024-10-17 | 46973 | 推广发布候选版本。 |
| 4.9.0-rc.1 | 2024-10-14 | 46298 | 迁移到 CDK v5 |
| 4.8.5 | 2024-10-12 | 46511 | 更新依赖项 |
| 4.8.4 | 2024-09-28 | 46131 | 更新依赖项 |
| 4.8.3 | 2024-09-21 | 45757 | 更新依赖项 |
| 4.8.2 | 2024-09-14 | 45504 | 更新依赖项 |
| 4.8.1 | 2024-09-07 | 45257 | 更新依赖项 |
| 4.8.0 | 2024-09-03 | 44908 | 迁移到 CDK v3 |
| 4.7.8 | 2024-08-31 | 45009 | 更新依赖项 |
| 4.7.7 | 2024-08-24 | 44732 | 更新依赖项 |
| 4.7.6 | 2024-08-19 | 44380 | 更新依赖项 |
| 4.7.5 | 2024-08-12 | 43868 | 更新依赖项 |
| 4.7.4 | 2024-08-10 | 43667 | 更新依赖项 |
| 4.7.3 | 2024-08-03 | 43083 | 更新依赖项 |
| 4.7.2 | 2024-07-27 | 42814 | 更新依赖项 |
| 4.7.1 | 2024-07-20 | 42205 | 更新依赖项 |
| 4.7.0 | 2024-07-16 | 41934 | 更新到 3.5.1 CDK |
| 4.6.3 | 2024-07-13 | 41934 | 更新依赖项 |
| 4.6.2 | 2024-07-10 | 41503 | 更新依赖项 |
| 4.6.1 | 2024-07-09 | 40067 | 更新依赖项 |
| 4.6.0 | 2024-06-26 | 39573 | 提高性能:更新到 Airbyte CDK 2.0.0 |
| 4.5.17 | 2024-06-06 | 39214 | [autopull]将基础镜像升级到 v1.2.2 |
| 4.5.16 | 2024-05-29 | 38674 | 避免在运行 discover 时空流时出错 |
| 4.5.15 | 2024-05-20 | 38252 | 将 AirbyteLogger 替换为 logging.Logger |
| 4.5.14 | 2024-05-09 | 38090 | 升级 python-cdk 版本以包含 CSV 字段长度修复 |
| 4.5.13 | 2024-05-03 | 37776 | 更新 airbyte-cdk 以修复 discovery 命令问题 |
| 4.5.12 | 2024-04-11 | 37001 | 更新 airbyte-cdk 以刷新打印缓冲区中的每条消息 |
| 4.5.11 | 2024-03-14 | 36160 | 升级 python-cdk 版本以包含 CSV 制表符分隔符修复 |
| 4.5.10 | 2024-03-11 | 35955 | 固定 transformers 传递依赖 |
| 4.5.9 | 2024-03-06 | 35857 | 升级 poetry.lock 以升级传递依赖 |
| 4.5.8 | 2024-03-04 | 35808 | 使用缓存的 AWS 客户端 |
| 4.5.7 | 2024-02-23 | 34895 | 使用并发执行增量同步 |
| 4.5.6 | 2024-02-21 | 35246 | 修复在创建带有制表符分隔符的 CSV 流时发生的错误。 |
| 4.5.5 | 2024-02-18 | 35392 | 添加按开始日期过滤的支持 |
| 4.5.4 | 2024-02-15 | 35055 | 暂时撤销并发 |
| 4.5.3 | 2024-02-12 | 35164 | 使用 Poetry 管理依赖项。 |
| 4.5.2 | 2024-02-06 | 34930 | 升级 CDK 版本以修复目录中缺少 SyncMode 时的问题 |
| 4.5.1 | 2024-02-02 | 31701 | 添加 region 支持 |
| 4.5.0 | 2024-02-01 | 34591 | 并发执行完全刷新同步 |
| 4.4.1 | 2024-01-30 | 34665 | 固定 moto & CDK 版本 |
| 4.4.0 | 2024-01-12 | 33818 | 添加 IAM Role 身份验证 |
| 4.3.1 | 2024-01-04 | 33937 | 为 airbyte-lib 准备 |
| 4.3.0 | 2023-12-14 | 33411 | 升级 CDK 版本以自动为文档文件流设置主键并支持原始 txt 文件 |
| 4.2.4 | 2023-12-06 | 33187 | 升级 CDK 版本以隐藏源定义的的主键 |
| 4.2.3 | 2023-11-16 | 32608 | 改进文档文件类型解析器 |
| 4.2.2 | 2023-11-20 | 32677 | 仅将扩展名为“.zip”的文件作为压缩文件读取 |
| 4.2.1 | 2023-11-13 | 32357 | 改进 spec 模式 |
| 4.2.0 | 2023-11-02 | 32109 | 修复文档;为 S3 端点添加 HTTPS 验证;修复覆盖率 |
| 4.1.4 | 2023-10-30 | 31904 | 更新 CDK |
| 4.1.3 | 2023-10-25 | 31654 | 减小镜像大小 |
| 4.1.2 | 2023-10-23 | 31383 | 添加处理 NoSuchBucket 错误 |
| 4.1.1 | 2023-10-19 | 31601 | 基础镜像迁移:移除 Dockerfile 并使用 python-connector-base 镜像 |
| 4.1.0 | 2023-10-17 | 31340 | 添加读取 zip 存档内的文件 |
| 4.0.5 | 2023-10-16 | 31209 | 添加实验性的 Markdown/PDF/Docx 文件格式 |
| 4.0.4 | 2023-09-18 | 30476 | 从 source-s3 配置中删除 streams.*.file_type |
| 4.0.3 | 2023-09-13 | 30387 | 升级 Airbyte-CDK 版本以改进记录解析错误的提示信息 |
| 4.0.2 | 2023-09-07 | 28639 | 始终显示 S3 Key 字段 |
| 4.0.1 | 2023-09-06 | 30217 | 将推理错误迁移到配置错误并避免发送 Sentry 警报 |
| 4.0.0 | 2023-09-05 | 29757 | 使用基于文件 CDK 的新版本 |
| 3.1.11 | 2023-08-30 | 29986 | 添加转换错误的配置错误 |
| 3.1.10 | 2023-08-29 | 29943 | 添加 arrow 无效错误的配置错误 |
| 3.1.9 | 2023-08-23 | 29753 | V4 版本的奇偶校验更新 |
| 3.1.8 | 2023-08-17 | 29520 | 更新遗留状态和错误处理 |
| 3.1.7 | 2023-08-17 | 29505 | v4 StreamReader 和 Cursor 修复 |
| 3.1.6 | 2023-08-16 | 29480 | 更新 Pyarrow 到版本 12.0.1 |
| 3.1.5 | 2023-08-15 | 29418 | 避免从 v3 迁移到 v4 时重复同步 |
| 3.1.4 | 2023-08-15 | 29382 | 处理遗留路径前缀和路径模式 |
| 3.1.3 | 2023-08-05 | 29028 | 更新 v3 和 v4 连接器以处理任一状态消息 |
| 3.1.2 | 2023-07-29 | 28786 | 添加使用基于文件的 CDK 的代码路径 |
| 3.1.1 | 2023-07-26 | 28730 | 添加人类可读的错误消息并改进编码字段为空时的验证 |
| 3.1.0 | 2023-06-26 | 27725 | 许可证更新:Elv2 |
| 3.0.3 | 2023-06-23 | 27651 | 处理 Bucket 访问错误 |
| 3.0.2 | 2023-06-22 | 27611 | 修复开始日期 |
| 3.0.1 | 2023-06-22 | 27604 | 添加文件读取日志 |
| 3.0.0 | 2023-05-02 | 25127 | 删除 ab_additional 列;使用平台处理的模式演化 |
| 2.2.0 | 2023-05-10 | 25937 | 添加对 Parquet 数据集的支持 |
| 2.1.4 | 2023-05-01 | 25361 | 解析嵌套的 avro 模式 |
| 2.1.3 | 2023-05-01 | 25706 | 删除 CSV 检查的最小块大小 |
| 2.1.2 | 2023-04-18 | 25067 | 处理块大小相关的错误;修复配置验证器 |
| 2.1.1 | 2023-04-18 | 25010 | 重构过滤逻辑 |
| 2.1.0 | 2023-04-10 | 25010 | 添加 start_date 字段以根据 LastModified 选项过滤文件 |
| 2.0.4 | 2023-03-23 | 24429 | 使用较小的块大小调用 check 以节省时间和内存。 |
| 2.0.3 | 2023-03-17 | 24178 | 支持迁移期间的遗留日期时间格式,修复时区转换。 |
| 2.0.2 | 2023-03-16 | 24157 | 如果 discover 未找到文件,则返回空模式;如果应用了用户定义的模式,则不要推断额外的数据类型。 |
| 2.0.1 | 2023-03-06 | 23195 | 修复日期时间格式字符串 |
| 2.0.0 | 2023-03-14 | 23189 | 基于单个文件而不是所有文件推断模式 |
| 1.0.2 | 2023-03-02 | 23669 | 使 Advanced Reader Options 和 Advanced Options 对于 CSV 格式真正 可选 |
| 1.0.1 | 2023-02-27 | 23502 | 修复错误处理 |
| 1.0.0 | 2023-02-17 | 23198 | 修复 Avro 模式发现 |
| 0.1.32 | 2023-02-07 | 22500 | 加速发现 |
| 0.1.31 | 2023-02-08 | 22550 | 验证 CSV 读取选项并转换选项 |
| 0.1.30 | 2023-01-25 | 21587 | 确保 spec 在 UI 中按预期工作 |
| 0.1.29 | 2023-01-19 | 21604 | 处理 OSError:跳过无法访问的键并继续处理可访问的键。警告客户 |
| 0.1.28 | 2023-01-10 | 21210 | 更新 json 文件格式的块大小 |
| 0.1.27 | 2022-12-08 | 20262 | 检查 CSV 文件格式的配置设置 |
| 0.1.26 | 2022-11-08 | 19006 | 添加虚拟托管样式选项 |
| 0.1.24 | 2022-10-28 | 18602 | 将错误包装到指向问题文件的 AirbyteTracedException 中 |
| 0.1.23 | 2022-10-10 | 17800 | 删除了 use_ssl 和 verify_ssl_cert 标志并硬编码为 True |
| 0.1.23 | 2022-10-10 | 17991 | 修复 pyarrow 到 JSON 模式类型转换的数组 |
| 0.1.22 | 2022-09-28 | 17304 | 迁移到每个流的状态 |
| 0.1.21 | 2022-09-20 | 16921 | 升级 pyarrow |
| 0.1.20 | 2022-09-12 | 16607 | 修复读取包含嵌套结构的 jsonl 文件的错误 |
| 0.1.19 | 2022-09-13 | 16631 | 在合并两个或多个 json 模式时,将列类型调整为最宽的类型 |
| 0.1.18 | 2022-08-01 | 14213 | 添加对 jsonl 格式文件的支持。 |
| 0.1.17 | 2022-07-21 | 14911 | "decimal" 类型已添加到 parquet |
| 0.1.16 | 2022-07-13 | 14669 | 修复了当额外列似乎在主模式中不存在的错误 |
| 0.1.15 | 2022-05-31 | 12568 | 修复了增量同步期间可能错过文件的潜在情况 |
| 0.1.14 | 2022-05-23 | 11967 | 将单元测试覆盖率提高到 90% |
| 0.1.13 | 2022-05-11 | 12730 | 修复了空选项问题 |
| 0.1.12 | 2022-05-11 | 12602 | 添加了对 Avro 文件格式的支持 |
| 0.1.11 | 2022-04-30 | 12500 | 改进了输入配置复制 |
| 0.1.10 | 2022-01-28 | 8252 | 文件元数据的重构 |
| 0.1.9 | 2022-01-06 | 9163 | 针对 web-UI 的解决方法,backslash - t 转换为 tab 用于 format.delimiter 字段。 |
| 0.1.7 | 2021-11-08 | 7499 | 删除 base-python 依赖项 |
| 0.1.6 | 2021-10-15 | 6615 & 7058 | 内存和性能优化。CSV 解析的高级选项。 |
| 0.1.5 | 2021-09-24 | 6398 | 支持自定义非 Amazon S3 服务 |
| 0.1.4 | 2021-08-13 | 5305 | 支持 Parquet 格式 |
| 0.1.3 | 2021-08-04 | 5197 | 修复了模式推断时同步可能无限期挂起的问题 |
| 0.1.2 | 2021-08-02 | 5135 | 修复了 spec 中的错误,使其在 UI 中正确显示 |
| 0.1.1 | 2021-07-30 | 4990 | 修复了源定义中的文档 URL |
| 0.1.0 | 2021-07-30 | 4990 | 创建了 S3 源连接器 |