自动加载程序目录清单模式是什么?

自动加载器使用默认目录清单模式。在目录清单模式下,自动加载程序识别新文件清单输入目录。目录清单模式允许您快速启动自动加载程序流没有任何权限配置除了访问云存储你的数据。

最佳性能的目录清单模式下,使用砖运行时的9.1或以上。本文描述了默认的目录清单的功能模式以及优化的基础上词汇的顺序文件

目录清单模式是如何工作的呢?

砖已优化的目录清单模式自动加载程序发现文件云存储更有效地比其他Apache火花选项。

例如,如果你有文件上传每5分钟/一些/道路/ / MM / DD / YYYY HH /文件名找到这些目录中的所有文件,Apache火花源文件并行列出所有子目录。下面的算法估计总数的API列表目录调用对象存储:

1(基本目录)+ 365(每天)* 24(每小时)= 8761个电话

通过从存储接收一个扁平的响应,自动加载程序减少了API调用的数量文件存储的数量除以每个API调用返回的结果的数量,大大降低您的云成本。下面的表显示了每个API调用返回的文件数量为共同的对象存储:

每个电话返回结果

对象存储

1000年

S3

5000年

ADLS代

1024年

GCS

增量清单

请注意

可以在砖运行时9.1 LTS及以上。

增量清单可供Azure数据存储Gen2湖(abfss: / /),S3 (s3: / /)和GCS (g: / /)。

字母顺序生成的文件,自动加载器利用词法文件排序清单api来提高效率和优化最近摄入的目录清单,清单文件清单的内容,而不是整个目录。

默认情况下,自动加载程序自动检测是否有一个特定的目录清单通过检查和比较适用于增量文件路径的目录列表之前完成。为了确保最终的数据的完整性汽车模式时,自动加载程序完成后自动触发一个完整的目录列表7连续增量列表。你可以控制的频率通过设置完整的目录列表cloudFiles.backfillInterval在一个给定的时间间隔触发异步回填。

您可以显式地启用或禁用清单通过设置增量cloudFiles.useIncrementalListing“真正的”“假”(默认“汽车”)。显式地启用时,自动加载程序不触发完整的目录列表,除非回填间隔设置。AWS服务动作消防带,AWS DMS和Azure数据工厂服务,可以配置上传文件到存储系统中词法顺序。

词汇的顺序文件

词法命令文件,上传新文件需要按大于现有文件的前缀。词汇的一些示例命令目录如下所示。

版本文件

三角洲湖使提交事务日志词法顺序表。

< path-to-table > / _delta_log / 00000000000000000000。json < path-to-table > / _delta_log / 00000000000000000001。json < -保证之后写的版本0 < path-to-table > / _delta_log / 00000000000000000002。json < -保证之后写的版本1…

AWS DMSAWS S3上传疾控中心文件版本化的方式。

database_schema_name / table_name / LOAD00000001。csv database_schema_name / table_name / LOAD00000002。csv……

分区文件日期

文件可以上传日期分区格式,利用增量清单。这样的例子有:

/ / <基本路径> / / MM / dd / yyyy HH: MM: ss-randomString <基本路径> / 2021/12/01/10:11:23-b1662ecd-e05e-4bb7-a125-ad81f6e859b4。json <基本路径> / 2021/12/01/10:11:23-b9794cf3-3f60-4b8d-ae11-8ea320fad9d1。json……/ / <基本路径> /年= yyyy /月= MM /天= = HH /分钟= MM / dd /小时randomString <基本路径> /年= 2021 /月= 12 /天= 04 /小时= 08 /分钟= 22/442463e5 f6fe - 458 - 8 - f69 a06aa970fc69。csv <基本路径> /年= 2021 /月= 12 /天= 04 /小时= 08 /分钟= 22/8f00988b - 46 - 4112 - 808 - d - 6 a35aead0d44。csv < -这可能是之前上传的文件上面只要处理经常少于一分钟

在文件上传日期分区时,有些事情要记住的是:

  • 月、日、小时、分钟需要与零垫,确保词汇排序(应该上传小时= 03,而不是小时= 32021/05/03而不是2021/5/3)。

  • 文件没有必要在词法顺序最深的上传目录,只要处理的发生频率比父目录的时间粒度。

一些服务,可以上传文件日期分区词法顺序是:

改变源路径自动加载程序

在砖运行时11.3 LTS及以上的,你可以将目录更改输入路径自动加载器配置目录清单模式而不需要选择一个新的检查点目录。

请注意

这个功能不支持文件通知模式。

例如,如果您希望运行一个加载所有数据的日常摄入的工作从一个目录结构组织,如/名称/,您可以使用相同的检查点来追踪每天摄入状态信息在不同的源目录文件的同时保持状态信息摄入之前使用源目录。