Hadoop生态
文章平均质量分 88
分享一些大数据工作上的一些框架使用心得
Impl_Sunny
这个作者很懒,什么都没留下…
展开
-
详解HiveSQL执行计划
Hive SQL的执行计划描述SQL实际执行的整体轮廓,通过执行计划能了解SQL程序在转换成相应计算引擎的执行逻辑,掌握了执行逻辑也就能更好地把握程序出现的瓶颈点,从而能够实现更有针对性的优化。此外还能帮助开发者识别看似等价的SQL其实是不等价的,看似不等价的SQL其实是等价的SQL。。explain,在查询语句的SQL前面加上关键字explain是查看执行计划的基本方法。学会explain,能够给我们工作中使用hive带来极大的便利!原创 2024-06-29 17:56:16 · 761 阅读 · 0 评论 -
大数据权限管理框架:Apache Sentry和Ranger
一、简介Apache Sentry:Sentry是由Cloudera公司内部开发而来的,初衷是为了让用户能够细粒度的控制Hadoop系统中的数据(这里主要指HDFS,Hive的数据)。所以Sentry对HDFS,Hive以及同样由Cloudera开发的Impala有着很好的支持性。Apache Ranger:Ranger则是由于另一家公司Hortonworks所主导。它同样是做细粒度的权限控制。但相比较于Sentry而言,它能支持更丰富的组件,包括于 HDFS, Hive, HBase, Yar原创 2022-04-11 09:58:54 · 827 阅读 · 0 评论 -
【HBase】HBase海量数据高效入仓解决方案
0、背景现阶段部分业务数据存储在HBase中,这部分数据体量较大,达到数十亿。大数据需要增量同步这部分业务数据到数据仓库中,进行离线分析,目前主要的同步方式是通过HBase的hive映射表来实现的。该种方式具有以下痛点: 需要对HBase表进行全表扫描,对HBase库有一定压力,同步数据同步速度慢。 业务方对HBase表字段变更之后,需要重建hive映射表,给权限维护带来一定的困难。 业务方对HBase表字段的变更无法得到有效监控,无法及时感知字段的新增,对数仓的维护带来一定的原创 2022-03-16 11:18:04 · 375 阅读 · 0 评论 -
【Hive】如何对Hive表小文件进行合并
0、前言HDFS不适合大量小文件的存储,因namenode将文件系统的元数据存放在内存中,因此存储的文件数目受限于 namenode的内存大小。HDFS中每个文件、目录、数据块占用150Bytes。如果存放的文件数目过多的话会占用很大的内存甚至撑爆内存。HDFS适用于高吞吐量,而不适合低时间延迟的访问。如果同时存入大量的小文件会花费很长的时间。本篇文章主要介绍在CDP7.1.6集群中如何对Hive表小文件进行合并。测试环境:1.操作系统Redhat7.62.CDP7.1.63.使用ro.原创 2021-10-26 14:39:23 · 6855 阅读 · 0 评论 -
ClickHouse、Kudu和HBase对比
0、前言Hadoop生态圈的技术繁多,HDFS一直用来保存底层数据,地位牢固。Hbase作为一款Nosql也是Hadoop生态圈的核心组件,它海量的存储能力,优秀的随机读写能力,能够处理一些HDFS不足的地方。Apache Kudu是Cloudera Manager公司16年发布的新型分布式存储系统,结合CDH和Impala使用可以同时解决随机读写和sql化数据分析的问题。分别弥补HDFS静态存储和Hbase Nosql的不足。Clickhouse是一个用于联机分析(OLAP)的列式数据库管原创 2021-10-21 09:46:19 · 3836 阅读 · 0 评论 -
【优化】HDFS、MapReduce、Yarn实战参数调优
一、Hadoop小文件优化方法1.1 Hadoop小文件弊端HDFS上每个文件都要在NameNode上创建对应的元数据,这个元数据的大小约为150byte,这样当小文件比较多的时候,就会产生很多的元数据文件,一方面会大量占用NameNode的内存空间,另一方面就是元数据文件过多,使得寻址索引速度变慢。小文件过多,在进行MR计算时,会生成过多切片,需要启动过多的MapTask。每个MapTask处理的数据量小,导致MapTask的处理时间比启动时间还小,白白消耗资源。1.2Hadoop小文件.原创 2021-09-29 09:08:13 · 263 阅读 · 0 评论 -
大数据框架(分区,分桶,分片)
0.前言在大数据分布式中,分区,分桶,分片是设计框架的重点一、Hive分区与分桶1.1Hive分区是按照数据表的某列或者某些列分为多区,在hive存储上是hdfs文件,也就是文件夹形式。现在最常用的跑T+1数据,按当天时间分区的较多。把每天通过sqoop或者datax拉取的一天的数据存储一个区,也就是所谓的文件夹与文件。在查询时只要指定分区字段的值就可以直接从该分区查找即可。创建分区表的时候,要通过关键字 partitioned by (column name string)声明该表是.原创 2021-09-24 09:47:07 · 1086 阅读 · 1 评论 -
【ZooKeeper】大数据之分布式协调神器:ZooKeeper选举
0.前言分布式系统设计成主从节点主要是为了保障数据一致性,主从设计是一种最直观的数据一致性保障机制。比如主从复制,主节点负责写,从节点负责读,提高读的性能。从节点定期通过心跳与主节点沟通,一旦主节点挂掉了,从节点马上接手主节点的任务。但是主节点暂时失去响应,如瞬时负载过高,网络拥塞或者其他原因导致主节点暂时失去响应,超过响应超时时间,这个时候从节点启动,承担起leader的职责,但是原先的主节点又恢复了服务。这个时候,如果没有选举机制(不能仅仅自己宣告自己是leader,还要广而告之,让.原创 2021-09-23 09:29:12 · 288 阅读 · 0 评论 -
即席查询引擎怎么选
一、怎么理解即席查询即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。1.1 即席查询与批处理后查询的区别1.1.1 批处理后的查询在数据仓库系统中,根据应用程序的需求,需要对源数据进行加工,这些加工过程往往是固定的处理原则,这种情况下,可以把数据的增删改查SQL语句写成一个批处理脚本,由调度程序定时执行。特点:由于批处理脚本中...原创 2021-09-22 09:32:29 · 706 阅读 · 0 评论 -
Java实现Mysql的 substring_index函数功能(优化版)
前言: 由于hive中没有这个 substring_index函数,所以就自定义一个udf函数来调用使用。(不通过hive使用时可以直接使用下方的代码,如果需要被hive使用 记得继承 UDF类)参考连接:https://blog.csdn.net/weixin_30335353/article/details/97480779主要方法:indexOf(str, position); // str 查找的字符串,position 匹配字符串的开始位置优化地方:当需要反向匹配的时候匹配不成..原创 2021-02-19 17:47:38 · 682 阅读 · 0 评论