apache-spark - 在选择语句期间,S3 上的火花读取镶木地板读取多少数据是正常的?
问题描述
我们有一个 130GB 和 4000 列的表。当我们选择其中 2 个列时,我们的 Spark UI 报告总共读取了 30GB。但是,如果我们选择这两列并将它们存储为单独的数据集,则数据集的总大小仅为 17MB。鉴于镶木地板是柱状存储,某些东西似乎无法正常工作。我发现了这个问题,但我不确定如何进一步诊断以及采取哪些措施来减少所需的 I/O 数量。
据我了解,列式存储的好处是每一列都可以或多或少地相互独立地读取。
我们在 Databricks 上运行 Hadoop 2.7.X。它出现在 6.X 和 7.X 版本的 databricks (spark 2.4/3.0)
解决方案
推荐阅读
- firebase-storage - 有没有办法让用户无法下载存储的文件并只是预览它
- java - 在 Java 8 下使用 Derby 10.15.1.3 “找不到合适的驱动程序...”
- c - 错误包 SpalshScreen.Fody
- wordpress - 如何使用函数将默认搜索设置为仅针对产品?
- android - 此片段中的 ArrayList 在第二次切换到横向模式后初始化为 null
- html - 移动菜单不可滚动
- ansible - 使用 Ansible Playbook 自动更改用户密码
- javascript - 根据选定的下拉项过滤数组 -redux-react
- billboard.js - 有没有办法在 Billboard.js 中以对数比例显示 Y 轴?
- macos - 如何将整个文件夹从本地计算机复制到 Amazon Sagemaker,反之亦然?