数仓技术hive与oracle对比(一)

准备

包括软硬件环境、数据、测试数据三方面的准备内容。

环境

虚拟机软件virtualbox7,同样的虚拟机配置:内存2G、cpu一核,物理主机同一台macbookpro(13-2020款),所以硬盘IO读写速度一致。

综上:hive环境与oracle环境是同样的cpu、内存、硬盘、带宽配置。

数据

使用仓库、组织、物料、库存流水,进行响应测试,oracle使用dbeaver等将测试数据从外系统加载至测试环境,hive使用sqoop将测试数据从外系统加载至测试环境。

hive中,表名、列名是不区分大小写的,但库名区分大小写。oracle中,表名、列名、库名均不区分大小写。

测试数据的加载,按照oracle、hive的不同,分别采用不同的方式和工具进行处理。建表、导入数据并记录导入数据所消耗时间。

oracle加载数据统计表

|----|------------------|---------|--------|-------|
| 序号 | 表 | 方式 | 数据量 | 耗时 |
| 1 | T_OD_BD_STORDOC | dbeaver | 65 | 0.67s |
| 2 | T_OD_ORG_ORGS | dbeaver | 1042 | 15s |
| 3 | T_OD_BD_MATERIAL | sqlplus | 42388 | 5m39s |
| 4 | T_OD_IC_FLOW | 存储过程 | 193537 | 1m52s |

备注:1、数据量超达到4万条,dbeaver客户端加载数据明显慢很多,受限于客户端工具(客户端工具是java所开,需要将sql文件在工具中打开),改为使用服务端加载。

2、ic_flow 无法使用sqlplus这种方式,因为其导出的insert批量文件,文件中的insert语句超过sqlplus最大输入范围,改为使用存储过程。

hive加载数据统计表

|----|-------------------|-------|--------|-------|
| 序号 | 表 | 方式 | 数据量 | 耗时 |
| 1 | HT_OD_BD_STORDOC | sqoop | 65 | 0.54s |
| 2 | HT_OD_ORG_ORGS | sqoop | 1042 | 3.08s |
| 3 | HT_OD_BD_MATERIAL | sqoop | 42388 | 3.49s |
| 4 | HT_OD_IC_FLOW | sqoop | 193537 | 3.73s |

测试数据

hive使用hplsql循环导入T_OD_IC_FLOW_10百万行、T_OD_IC_FLOW_100千万行数据时,系统报错,java虚拟机崩溃。最后计划使用T_OD_IC_FLOW中数据向T_OD_IC_FLOW_10手动加载10次,完成T_OD_IC_FLOW_10的数据导入,也不成功,遂放弃。

最终测试数据表统计如下。

|------------------|-------------------|----------|-----|---------|---------|
| 表名 || 数据量 || 占用空间 ||
| oracle | hive | 行 | 列 | oracle | hive |
| T_OD_BD_STORDOC | HT_OD_BD_STORDOC | 65 | 45 | 0.0625M | 0.0183M |
| T_OD_ORG_ORGS | HT_OD_ORG_ORGS | 1042 | 130 | 0.6875M | 0.6168M |
| T_OD_BD_MATERIAL | HT_OD_BD_MATERIAL | 42388 | 86 | 20M | 19.62M |
| T_OD_IC_FLOW | HT_OD_IC_FLOW | 193537 | 166 | 232M | 208.77M |
| T_OD_IC_FLOW_10 | HT_OD_IC_FLOW_10 | 1935370 | 166 | 2304M | |
| T_OD_IC_FLOW_100 | HT_OD_IC_FLOW_100 | 19353700 | 166 | 22733M | |

相关推荐
麓殇⊙5 小时前
使用注解开发springMVC
数据仓库·hive·hadoop
北随琛烬入6 小时前
Spark(10)配置Hadoop集群-集群配置
java·hadoop·spark
蒋星熠9 小时前
在VMware下Hadoop分布式集群环境的配置--基于Yarn模式的一个Master节点、两个Slaver(Worker)节点的配置
大数据·linux·hadoop·分布式·ubuntu·docker
SelectDB技术团队10 小时前
Apache Doris 2.1.9 版本正式发布
大数据·数据仓库·数据分析·doris·数据湖·湖仓一体·日志数据
啊迷诺斯2 天前
hadoop的常用命令
hadoop
SelectDB技术团队2 天前
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座
大数据·数据库·数据仓库·人工智能·ai·数据分析·湖仓一体
Loving_enjoy2 天前
基于Hadoop的明星社交媒体影响力数据挖掘平台:设计与实现
大数据·hadoop·数据挖掘
weixin_307779132 天前
使用C#实现从Hive的CREATE TABLE语句中提取分区字段名和数据类型
开发语言·数据仓库·hive·c#
一个天蝎座 白勺 程序猿2 天前
大数据(4.6)Hive执行引擎选型终极指南:MapReduce/Tez/Spark性能实测×万亿级数据资源配置公式
大数据·hive·mapreduce
墨染丶eye2 天前
数据仓库项目启动与管理
大数据·数据仓库·spark