Filter、Project及Pushdowns实例分析
发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,今天就跟大家聊聊有关Filter、Project及Pushdowns实例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1. Filter(
千家信息网最后更新 2024年11月23日Filter、Project及Pushdowns实例分析1. Filter(过滤) 和 Project(映射)
在传统的 OLAP 系统中,在进行 Join 的时候使用过滤和映射会极大的提高性能。同样的,在 Hadoop 中使用 Filter 和 Projection 同样可以提高效率,由于减少了一个管道需要处理的数据量。在Hadoop中减少处理的数据量是至关重要的,尤其当需要通过网络和本地磁盘进行处理的时候。我们都知道,MapReduce 的shuffle 过程会将数据通过网络写入到磁盘中,所以拥有更少的数据就意味着Job 和 MapReduce 框架的工作量也就越少,这样Job的数据传输也会更快,CPU、磁盘、网络设备的压力也会减少。
使用 filters 和 projection 来减少数据大小
Filter 和 projections 最后靠近数据源进行执行;在MapReduce中,最好在mapper中执行。以下代码显示了一个排除30岁以下的用户,并且只映射他们的姓名和状态:
在 Join 中使用 filter 需要注意的是,并不是所有连接的数据集都包含你需要过滤的字段。对于这种情况,你需要使用Bloom filter 方法。 谓词下推(predicate pushdown)属于逻辑优化。优化器可以将谓词过滤下推到数据源,从而使物理执行跳过无关数据。在使用Parquet的情况下,更可能存在文件被整块跳过的情况,同时系统还通过字典编码把字符串对比转换为开销更小的整数对比。在关系型数据库中,谓词则被下推到外部数据库用以减少数据传输。 通过以下这张图,我们可以发现,谓词下推在逻辑层面可以理解为利用where 条件中的过滤条件将无用的数据进行筛选掉最终得到需要的行列。
投影和谓词下推通过对存储格式的映射和谓词的推送而进一步来进行过滤。针对 Parquet 这样的存储格式,我们可以直接跳过整个记录或者整个块,这样极大的提高了 Job 的性能并且减少了不必要的开销。
这里需要注意的是,Avro 是基于行列的存储格式。
需要知道的: 1. 对 Inner Join 来说,Hive 只支持等值连接,不支持不等值连接。因为不等值连接在 MapReduce Job 转换起来很麻烦。 2. 虽然 Hive 不支持等值连接,但是在 Cross Join 和 Where条件中仍然可以使用。下面是 Cross Join发生的条件:
今天就跟大家聊聊有关Filter、Project及Pushdowns实例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
public static class JoinMap extends Mapper {
@Override
protected void map(LongWritable offset, Text value, Context context)
throws IOException, InterruptedException {
User user = User.fromText(value);
if (user.getAge() >= 30) {
context.write(new Text(user.getName()),
new Text(user.getState()));
}
}
}
2. Pushdowns
使用 Cross Join 关键词
只有 Join 关键词,没有 On 条件
有 Join 关键词,On 后面跟着绝对为 Ture (例如 1=1) 的情况
看完上述内容,你们对Filter、Project及Pushdowns实例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
数据
谓词
条件
情况
支持
关键
关键词
内容
格式
磁盘
网络
处理
存储
实例
实例分析
分析
开销
性能
数据传输
数据库
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
金庆网络技术
成都网络技术选择
yun服务器 提示资源不够
设置pppoe服务器客户端
构建网络安全
深圳市维克拉网络技术
数据库管理财务
关于数据库安全的参考文献
蛋壳app.服务器错误
switch用代理服务器安全性
我的世界手机版服务器怎么加容量
怎么自己搭建云存储服务器
服务器连接存储设备磁盘初始化
北京码上办网络技术
佳明wifi出现无法连接服务器
计算机网络技术就业职业
惠普服务器山东代理商
浙江问问网络技术
黑龙江pdu服务器电源哪家可靠
远程访问服务器
西藏软件开发费用
互联网科技行业网站
网络安全专业有什么用
长沙久玩网络技术有限公司
科技部数据库
sql2005连接数据库
服务器连接存储设备磁盘初始化
上海上门软件开发系统
dell服务器进管理系统
广东商业软件开发要多少钱