snowflake-schema - 雪花:复制命令在卸载时不会为多个文件生成恒定大小
问题描述
复制到@elasticsearch/product/s3file from (select object_construct(*)from mytable) file_format = (type = json, COMPRESSION=NONE), overwrite=TRUE, single = False, max_file_size=5368709120;
该表有 2GB 的数据。我想将它们拆分为 100mb 的文件以存储在 S3 中,但 s3 将它们拆分为不均匀的文件大小。预计会有多个文件有 100MB
我需要对弹性搜索中的索引进行性能改进,我正在使用 smart_open 进行多处理。所以处理文件会很方便。谢谢
解决方案
它不是 S3 拆分文件,它的雪花 wharehosue 大小拆分文件,就像您在复制命令中使用 SINGLE=False 一样。随着 WH 大小的增加,文件数量将增加
示例 sppouse 您使用 XS 大小 wh 运行查询,它会在 s3 上生成 8 个文件,如果您使用 M 大小 WH,那么它将在 s3 上创建 16 个文件。并且它的拆分发生在并行模式下,因此每个文件的大小可能会有所不同。它不像它创建具有您在复制命令中给出的最大限制的文件,然后启动另一个文件。
推荐阅读
- python - (覆盖)将字典中的值写入现有 excel 中的特定列
- ms-word - 如何在 Mac 版本上添加自定义设置属性作为字段?
- python - 在大熊猫数据集上应用词嵌入函数
- git - 管理多个 git commit 电子邮件地址
- swift - 使用 Swift Combine 的异步迭代
- reactjs - 如何调用 useEffect 在特定状态更改时重新渲染
- android - 任务应用程序执行失败 validateSigningDebug pangu.keystore not found
- angular - 在 app.routing.module Angular 中使用服务
- java - 尝试将 JavaFX 与 Hibernate 集成时出错
- r - ggplot色带颜色变化取决于具有可变y轴的值