- 博客(4)
- 收藏
- 关注
原创 hive内部表和外部表的区别
2、删除数据时,内部表会同时删除hive表的元数据和原始数据,外部表仅删除hive表元数据,原始数据依然存储在hdfs上。1、内部表数据由hive管理,外部表数据由hdfs管理。建表语句中通过external关键词区分。使用上,外部表数据更安全。
2024-04-02 11:37:03
413
1
原创 hive join原理
小表复制多份到每个map task/executor的内存中,以hashmap等形式存在,然后扫描大表中的key,如果能在小表的hashmap中查询到相同的key,则连接后输出;a、map阶段对数据进行分片并对来自不同表的数据打标签,然后用连接字段作为key,其余部分和标签作为value,最后进行输出。c、reduce阶段对同一个key的数据调用一次reduce方法,对来自不同表的数据进行连接输出。可以避免shuffle,减轻reduce端压力,避免可能的数据倾斜等情况。
2024-04-02 11:33:59
127
原创 hive中小文件过多的危害,如何解决
4、开启uber模式,实现jvm重用,让多个task共用一个jvm,这样就不必伟每个task开启单独的jvm。3、计算的时候,采用combineinputformat的切片方式,可将多个小文件放到一个切片中计算。1、小文件过多会占用namenode过多内存在存储元数据,给namenode内存带来压力。2、采用har归档的方式对小文件进行存储,可将多个小文件打包成一个har文件。2、计算时,每个小文件需要一个map task进行处理,浪费资源。1、上传HDFS之前,对小文件进行合并后再上传;
2024-04-02 11:21:03
194
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人