首页 > 其他分享 >hadoop案例(一)--hive--2T数据动态创建分区

hadoop案例(一)--hive--2T数据动态创建分区

时间:2023-08-08 11:32:43浏览次数:42  
标签:2T set string exec -- dynamic hadoop hive 查询


我们在使用hadoop集群过程中,发现网上很少有具体的数据使用分析案例,也就是说 我们不知道多少个节点处理多少大小的数据量耗费多少时间是合理的哪些是需要优化的。

为了增加这方面的相关经验,我们会记录一下实际的使用案例。以供大家参考。

配置如图:

hadoop案例(一)--hive--2T数据动态创建分区_hvie

耗费时间如图:

hadoop案例(一)--hive--2T数据动态创建分区_hvie_02


hadoop案例(一)--hive--2T数据动态创建分区_TB级_03

执行语句

set hive.exec.dynamic.partition=true;

set hive.exec.dynamic.partition.mode=nonstrict;

set hive.exec.max.dynamic.partitions.pernode=100000;

set hive.exec.max.dynamic.partitions.pernode.Maximum=100000;

set hive.exec.max.dynamic.partitions=100000;

set hive.exec.max.created.files=100000;

set mapred.max.split.size=1024000000;

set mapred.min.split.size.per.node=1024000000;

set mapred.min.split.size.per.rack=1024000000;

set mapred.reduce.tasks=100; 

set hive.map.aggr=true;

set hive.groupby.skewindata=true;

set hive.enforce.bucketing = true;


create table table_p(id  string, chromosome  string,position  string,type  string,createdate  string) partitioned by (type  string) CLUSTERED BY (id) SORTED BY (id ASC) INTO 6 BUCKETS;

insert overwrite table table_p

partition(type)

select  id,chromosome,position,createdate,type  from genotype;

相关参数

未分区前

select count(1)得到数量37362145755,370多亿条数据,耗时5237秒,1个小时45分钟。

hadoop案例(一)--hive--2T数据动态创建分区_TB级_04

使用presto查询耗费273秒,5分钟

hadoop案例(一)--hive--2T数据动态创建分区_动态分区_05

查询单条记录带where精确查询耗时6800秒

hadoop案例(一)--hive--2T数据动态创建分区_TB级_06

使用presto查询单条记录带where精确查询耗时272秒,5分钟

hadoop案例(一)--hive--2T数据动态创建分区_耗时_07

分区后

查询单条记录带where精确查询耗时18秒

hadoop案例(一)--hive--2T数据动态创建分区_TB级_08

使用单台presto查询单条记录带where精确查询耗时0.01秒

hadoop案例(一)--hive--2T数据动态创建分区_hive_09

总结
2T的数据进行分区分桶一共耗费了14个小时。这个时间有点长,后期我们会进行尝试优化。


标签:2T,set,string,exec,--,dynamic,hadoop,hive,查询
From: https://blog.51cto.com/u_16218512/7006331

相关文章

  • 遇到的情况---hadoop集群-- NodeManager启动不起来--java.io.FileNotFoundException
    情况hadoop集群nodemanager启动不起来,查看输出的日志报错java.io.FileNotFoundException:/hadoop/dfs1/log/hadoop-yarn/hadoop-cmf-yarn-NODEMANAGER-host251.log.out(Read-onlyfilesystem)管理后台点击查看NodeManager的日志文件,角色日志文件时报错访问不到。原因目录损......
  • 数据仓库(十一)---hive使用小技巧积累(持续更新)
    我们在本章节会持续更新关于hive使用过程中的一些实用的小技巧HIVE查询显示列名及行转列显示hiveshell;sethive.cli.print.header=true;//打印列名sethive.cli.print.row.to.vertical=true;//开启行转列功能,前提必须开启打印列名功能sethive.cli.print.row.to.ve......
  • 数据仓库(十二)---分布式SQL查询引擎---teradata版本的presto安装和使用
    我们在使用presto过程中,发现facebook原版和京东原版都是解压可用,teradata版本的安装要麻烦一些。下面对teradata版本的安装过程进行记录。首要条件1、需要python2.6或者python2.7环境之所以需要python环境是因为teradata版本的presto把安装封装成了集群式安装。根据配置在安装过......
  • 实时入库不用愁,HStore帮分忧
    海量数据时代,如何实现数据实时入库与实时查询?GaussDB(DWS)HStore表为数据高效存储与查询提供了哪些助力?本期《数仓实时入库利器—HStore表原理与应用实践详解》的主题直播中,我们邀请到华为云EIDTSE技术布道师马俊松,针对GaussDB(DWS)HStore表与开发者和伙伴朋友们展开交流互动。......
  • ubuntu安装docker和docker-compose
      ubuntu系统docker和安装,并安装docker-compose安装dockeraptinstalldocker.io设置docker为开机自启systemctlenabledocker安装docker-composeaptinstalldocker-compose修改配置,设置国内镜像仓库和本地镜像仓库vi/etc/docker/daemon.json{"registry-......
  • 构建虚拟与现实的桥梁:数字孪生技术在建筑领域的应用
    在数字化时代,科技的飞速发展正在深刻影响着建筑行业。数字孪生技术作为数字化转型的重要组成部分,正在为建筑环境带来革命性的变革。数字孪生技术通过将现实世界与虚拟模型实时同步,为建筑规划、施工、运营和维护等各个环节提供了更智能、高效的解决方案。 数字孪生技术在建筑设......
  • 2023-8-8新版本数据录入指南
    人工费对应明细列入材料费对应明细列入机械费对应明细列入专业分包费用对应明细列入措施费对应明细列入间接费对应明细列入(注意其他费用不用录入这里)其他费用录入规费税金录入税金(不用录取税率)将税额填入基本信息如果含税金额差异不大(小数点后的区别)就完成了......
  • Java 09 函数式接口
     消费者consumerimportorg.junit.Test;importjava.util.function.Consumer;publicclassconsumer{publicvoidtest02(Consumer<String>consumer){consumer.accept("abc");}@Testpublicvoidf1(){test02(s......
  • k8s 准入控制器介绍
    准入控制概述准入控制器是一段代码,它在对象持久化之前、请求经过身份验证和授权之后拦截对KubernetesAPI服务器的请求。准入控制器可以执行验证(Validating)、变异(Mutating)或两者兼而有之。变更(mutating)控制器可以根据被其接受的请求更改相关对象;验证(validating)控制器则不行。......
  • nuxt3如何配置语言包切换
    记录nuxt-i18n 配置:安装#npmnpminstall@nuxtjs/i18n#yarnyarnadd@nuxtjs/i18n#pnpmpnpmadd@nuxtjs/i18n 设置//nuxt.config.js根据后端接口返回的字段值 新建语言包文件  用common.lang作为测试,继续配置   页面切换 到此配置......