数仓技术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 | |
相关文章:
数仓技术hive与oracle对比(一)
准备 包括软硬件环境、数据、测试数据三方面的准备内容。 环境 虚拟机软件virtualbox7,同样的虚拟机配置:内存2G、cpu一核,物理主机同一台macbookpro(13-2020款),所以硬盘IO读写速度一致。 综上&#x…...
筑起厂区安全--叉车安全防护装置全解析
在繁忙的工业生产领域中,叉车作为搬运工,穿梭于仓储与生产线之间。然而,叉车的高效运作背后,也隐藏着诸多安全风险,尤其是在那些空间狭小、物流繁忙的环境中。为了降低这些潜在的危险,叉车安全防护装置便成…...
深入浅出云计算 ---笔记
这是博主工作闲时的一些日常学习记录,有些之前很熟悉的,但工作中不常用,慢慢就遗忘了,在这里记录,也是为了激励自己坚持复习,如果有能帮到你,那我将感到非常的荣幸~ 快速到达↓↓↓ IaaS篇>&…...
ARINC 标准全解析:航空电子领域多系列标准的核心内容、应用与重要意义
ARINC标准概述 ARINC标准是航空电子领域一系列重要的标准规范,由航空电子工程委员会(AEEC)编制,众多航空公司等参与支持。这些标准涵盖了从飞机设备安装、数据传输到航空电子设备功能等众多方面,确保航空电子系统的兼…...
SNMP 协议介绍
SNMP 协议详细介绍 SNMP(Simple Network Management Protocol,简单网络管理协议)是一个用于管理和监控计算机网络设备(如路由器、交换机、服务器等)的协议。它允许网络管理员通过网络查看和控制这些设备的状态、配置和性能。 SNMP 协议定义了网络设备如何与管理系统进行通…...
Python中的数据结构深入解析:从列表到字典的优化技巧
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! Python是一门以易用性和可读性著称的高级编程语言,其内置的数据结构为开发者提供了强大的工具,但了解其底层实现及性能优化策略却常被忽略。本文深入探讨Python中的核心数据结构,包括列表(list)、元组…...
如何利用Java爬虫获得商品类目
在当今数字化时代,数据已成为企业最宝贵的资产之一。获取和分析数据的能力对于任何希望在市场上保持竞争力的企业来说都是至关重要的。对于电子商务平台和市场研究公司而言,获取商品类目数据尤为重要,因为这些数据可以帮助他们更好地理解市场…...
力扣面试题 32 - 检查平衡性 C语言解法
题目: 实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7]3/ \9 20/ \15 7 返回 true 。 …...
【机器学习】机器学习的基本分类-监督学习-决策树-ID3 算法
ID3(Iterative Dichotomiser 3)是决策树的一种构造算法,由 Ross Quinlan 在 1986 年提出。它主要用于分类问题,通过信息增益选择特征来构建决策树。ID3 假设数据是离散型特征,且不支持连续型数据。 1. 核心思想 划分标…...
Implicit style-content separation using lora
1.Introduction 图像风格化,这个任务涉及根据某些风格参考改编图像的风格,这些参考可以是基于文本或基于图像的,同时保持其内容不变,内容指的是图像的语义信息和结构,而风格通常指的是视觉特征和模式,例如颜色和纹理。这是一个有挑战的任务,因为风格和内容之间的强关联…...
ROS[aruco_ros+easy_handeye]手眼标定(眼在手外+UR10e+realsense-d435i)
参考链接: https://zhuanlan.zhihu.com/p/576861119 https://blog.csdn.net/qq_32618327/article/details/120730198 本次在Docker中使用 打印Aruco码:https://chev.me/arucogen/ 选择Dictionary为 Original ArUco(aruco_ros默认这个,如果…...
第九篇:k8s 通过helm发布应用
什么是helm? Helm 是 Kubernetes 的包管理器。Helm 是查找、分享和使用软件构建 Kubernetes 的最优方式。 在红帽系的Linux中我们使用yum来管理RPM包,类似的,在K8s中我们可以使用helm来管理资源对象(Deployment、Service、Ingress…...
dataTable
在 C# 中,DataTable 是 .NET Framework 中用于处理数据表格的一个类,属于 System.Data 命名空间。它是一种内存中表示数据表的结构,通常用于临时存储和操作数据,类似于数据库中的表。DataTable 的主要特点是行列结构,其…...
json+Tomact项目报错怎么办?
在响应请求的时候,如果http响应没有指定响应数据的content-type,浏览器就不知道按照什么格式解析响应体的数据,因为浏览器只知道怎样解析http的行和头,再从头里获取响应体的字节长度和类型,按照你给的长度去截流&#…...
Flume——sink连接Hive的参数配置(属性参数)
目录 配置文件官网属性参数例子 配置文件官网 可以参考官网的说明 属性参数 属性名默认值说明type无(必须指定)组件类型名称,必须是"hive"hive.metastore无(必须指定)元数据仓库地址,例如&…...
Netty面试内容整理-Netty 的应用场景
Netty 是一个高性能、异步的事件驱动网络框架,广泛应用于各种需要高并发、高吞吐量的网络通信场景。以下是 Netty 的常见应用场景: RPC 框架 ● 应用描述: ○ 远程过程调用(RPC)框架用于跨网络调用远程服务,就像调用本地方法一样。 ○...
波特图方法
在电路设计中,波特图为最常用的稳定性余量判断方法,波特图的根源是如何来的,却鲜有人知。 本章节串联了奈奎斯特和波特图的渊源,给出了其对应关系和波特图相应的稳定性余量。 理论贯通,不在于精确绘…...
服务器数据恢复—硬盘掉线导致热备盘同步失败的RAID5阵列数据恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障&#…...
在Ubuntu中运行和管理AppImage
文章目录 什么是AppImage?如何在Ubuntu中运行AppImage?如何管理AppImage?安装AppImageLauncher如何添加AppImage到系统?如何从系统中移除AppImage? 总结 什么是AppImage? AppImage是一种将应用程序打包为单…...
如何查看电脑的屏幕刷新率?
1、按一下键盘的 win i 键,打开如下界面,选择【系统】: 2、选择【屏幕】-【高级显示设置】 如下位置,显示屏幕的刷新率:60Hz 如果可以更改,则选择更高的刷新率,有助于电脑使用起来界面更加流…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
