使用 dbt 将 JSON 个文件加载到暂存中
Use dbt to load JSON files into staging
是否可以使用 dbt 将数据从文件复制到数据库中?
我有一些文件作为数据源,我想在开始处理它们之前将它们加载到暂存层中。
在 postgresql 中类似这样的命令:
COPY staging.test (json_content) from 'C:\tmp002.json'
但据我在文档中看到的那样,模型需要 SELECT 语句并且当 运行 dbt run
时 COPY 语句失败
来自原始本地文件?编号
您的两个 dbt 直接数据选项是:
- 通过 dbt seeds 加载一些大小受限的数据集,目前仅支持 csv。
- 通过 external-tables 从云托管存储(如 s3 存储桶)加载数据。
这是解释为什么此应用程序不尝试支持 ELT(提取-加载-转换)过程的 EL 部分的最佳资源:
在不进行工具推荐的情况下,您将需要一个额外的数据堆栈组件来为您处理提取过程。 dbt 假定数据已加载到仓库的“预处理”或“原始”区域,通常遵循 Lewis Gavin 的出色架构:
How to architect the perfect Data Warehouse - Lewis Gavin
编辑:关于种子数据的附加说明 - 目前逗号分隔是唯一受支持的格式。 this issue 中关于将其扩展到其他定界符和转义格式的一些讨论。
目前不支持播种 json 文件。还有 under discussion.
是否可以使用 dbt 将数据从文件复制到数据库中?
我有一些文件作为数据源,我想在开始处理它们之前将它们加载到暂存层中。
在 postgresql 中类似这样的命令:
COPY staging.test (json_content) from 'C:\tmp002.json'
但据我在文档中看到的那样,模型需要 SELECT 语句并且当 运行 dbt run
来自原始本地文件?编号
您的两个 dbt 直接数据选项是:
- 通过 dbt seeds 加载一些大小受限的数据集,目前仅支持 csv。
- 通过 external-tables 从云托管存储(如 s3 存储桶)加载数据。
这是解释为什么此应用程序不尝试支持 ELT(提取-加载-转换)过程的 EL 部分的最佳资源:
在不进行工具推荐的情况下,您将需要一个额外的数据堆栈组件来为您处理提取过程。 dbt 假定数据已加载到仓库的“预处理”或“原始”区域,通常遵循 Lewis Gavin 的出色架构:
How to architect the perfect Data Warehouse - Lewis Gavin
编辑:关于种子数据的附加说明 - 目前逗号分隔是唯一受支持的格式。 this issue 中关于将其扩展到其他定界符和转义格式的一些讨论。
目前不支持播种 json 文件。还有 under discussion.