【发布时间】:2021-09-20 22:40:30
【问题描述】:
我们已经在外部阶段 s3 中暂存了日志文件。暂存的日志文件是 CEF 文件格式。如何从阶段解析 CEF 文件以将数据移动到雪花?
【问题讨论】:
标签: snowflake-cloud-data-platform snowflake-schema
我们已经在外部阶段 s3 中暂存了日志文件。暂存的日志文件是 CEF 文件格式。如何从阶段解析 CEF 文件以将数据移动到雪花?
【问题讨论】:
标签: snowflake-cloud-data-platform snowflake-schema
如果文件具有固定格式(即有记录和字段分隔符,并且每条记录的列数相同),那么您可以将其视为文本文件并创建适当的文件格式。
如果文件具有半结构化格式,那么您应该能够将其加载到变体列中 - 您是否可以为每个文件创建多行或仅创建一个行取决于文件结构。如果您只能为每个文件创建一条记录,那么您可能会遇到文件大小问题,因为变量列具有最大文件大小。
一旦数据位于变量列中,您应该能够对其进行处理以从中提取可用数据。如果有 Snowflake 可以处理的结构(例如 xml 或 json),那么您可以使用本机功能。如果没有可识别的结构,那么您必须在存储过程中编写自己的解析逻辑。
或者,您可以尝试找到另一个工具,将您的文件转换为 xml/json 格式,然后 Snowflake 可以轻松处理这些文件。
【讨论】: