Hadoop
文章平均质量分 63
Data & safety
这个作者很懒,什么都没留下…
展开
-
寻找数据统治力:比较Spark和Flink
本文首先介绍了Spark和Flink的发展背景、基本架构及其设计特点,然后从数据模型、状态处理和编程模型3个角度进行比较优势和限制,最后介绍Spark和Flink的最新发展。本篇文章属于阿里巴巴Flink系列文章之一。当提及大数据时,我们无法忽视流式计算的重要性,它能够完成强大的实时分析。而说起流式计算,我们也无法忽视最强大的数据处理引擎:Spark和Flink。Apache Spark自2014年以来迅速普及。它提供了一个适用常见数据处理场景的统一引擎,如批处理、流处理转载 2022-05-03 12:43:12 · 772 阅读 · 0 评论 -
Spark学习之路 (一)Spark初识
目录一、官网介绍 1、什么是Spark 二、Spark的四大特性 1、高效性 2、易用性 3、通用性 4、兼容性 三、Spark的组成 四、应用场景正文回到顶部一、官网介绍1、什么是Spark官网地址:Apache Spark™ - Unified Engine for large-scale data analyticsApache Spark™是用于大规模数据处理的统一分析引擎。从右侧最后一条新闻看,Spark也用于AI人工智能转载 2021-10-31 10:41:15 · 338 阅读 · 0 评论 -
HBase:MultiWAL支持
每个RegionServer都有一个WAL,RegionServer必须以串行方式写入WAL,因为HDFS文件必须是连续的。这导致WAL成为性能瓶颈。HBase 1.0在HBASE-5699中引入了支持MultiWal 。MultiWAL允许RegionServer通过在底层HDFS实例中使用多个管道来并行写入多个WAL流,从而在写入过程中增加总吞吐量。这种并行化是通过将区域传入的编辑分区来完成的。因此,当前的实现将无助于提高单个区域的吞吐量。使用原始WAL实现的RegionServers和使用..转载 2021-10-24 16:23:25 · 415 阅读 · 0 评论 -
access control error while attempting to set up short-circuit
due to InvalidToken exception.org.apache.hadoop.security.token.SecretManager$InvalidToken: access control error while attempting to set up short-circuit access to /apps/hbase/data/data/inspur_15/GSD_PERSON_PHOTO_NEW/3aa84f6c9e1d6dd279514911edf18a36/info/转载 2021-10-19 11:34:57 · 868 阅读 · 0 评论 -
HBase查询优化之Short-Circuit Local Reads
1.概述在《HBase查询优化》一文中,介绍了基于HBase层面的读取优化。由于HBase的实际数据是以HFile的形式,存储在HDFS上。那么,HDFS层面也有它自己的优化点,即:Short-Circuit Local Reads。本篇博客笔者将从HDFS层面来进行优化,从而间接的提升HBase的查询性能。2.内容Hadoop系统在设计之初,遵循一个原则,那就是移动计算的代价比移动数据要小。故Hadoop在做计算的时候,通常是在本地节点上的数据中进行计算。即计算和数据本地化。流程如下图所示:转载 2021-10-19 11:29:52 · 488 阅读 · 0 评论 -
查看HDFS的元数据文件fsimage和编辑日志edits
本文接着介绍查看edits文件的方法。HDFS查看edits命令hdfs oev用于查看edits文件。该命令需要以下参数:必须参数:-i,–inputFile <arg> 输入edits文件,如果是xml后缀,表示XML格式,其他表示二进制。-o,–outputFile <arg>输出文件,如果存在,则会覆盖。可选参数:-p,–processor <arg> 指定转换类型: binary (二进制格式), xml (默认...转载 2021-09-18 16:43:45 · 585 阅读 · 0 评论 -
Hbase高级功能过滤(Filter)
1.创建一个Rumenz表// 创建了两个列族user和depart> ./bin/hbase shell> create 'Rumenz','user','depart'2.插入数据> put 'Rumenz','user|id1','user:name','张三'> put 'Rumenz','user|id1','depart:name','开发部'> put 'Rumenz','user|id2','user:name','王五'> pu转载 2021-09-18 15:21:59 · 736 阅读 · 0 评论 -
HBase Filter 过滤器之RowFilter详解
前言:本文详细介绍了HBase RowFilter过滤器Java&Shell API的使用,并贴出了相关示例代码以供参考。RowFilter 基于行键进行过滤,在工作中涉及到需要通过HBase Rowkey进行数据过滤时可以考虑使用它。比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习一。Java Api头部代码public class RowFilterDemo { private static boolean转载 2021-09-18 14:53:27 · 1031 阅读 · 1 评论 -
hadoop fs -getmerge命令的使用
假设在你的hdfs集群上有一个/user/hadoop/output目录里面有作业执行的结果(多个文件组成)part-000000,part-000001,part-000002然后你想把所有的文件合拢来一起看 可以使用命令:hadoop fs -getmerge /user/hadoop/output local_file然后就可以在本地使用vi local_file查看内容了hadoop fs -getmerge :用户合并一个文件夹下面的所有文件至一个文件中。好像是合并转载 2021-09-17 11:44:52 · 2087 阅读 · 0 评论 -
HBase的replication原理及部署
一、hbase replication原理hbase 的复制方式是 master-push 方式,即主集群推的方式,主要是因为每个rs都有自己的WAL。 一个master集群可以复制给多个从集群,复制是异步的,运行集群分布在不同的地方,这也意味着从集群和主集群的数据不是完全一致的,它的目标就是最终一致性。Replication 总体结构我们直接引用社区的架构图如下,主集群的hlog中记录了所有针对table的变更(目前的ddl不同步),通过实时读取hlog中的entry来解析变更的数据然后发送到从集转载 2021-09-13 17:29:07 · 1054 阅读 · 0 评论 -
Hive视图如何创建、特点及应用场景
Hive视图特点View是逻辑存在,Hive暂不支持物化视图(1.0.3) View只读,不支持LOAD/INSERT/ALTER。需要改变View定义,可以是用Alter View View内可能包含ORDER BY/LIMIT语句,假如一个针对view的查询也包含这些语句, 则view中的语句优先级高。例如,定义view数据为limit 10, 针对view的查询limit 20,则最多返回10条数据。 Hive支持迭代视图。5.Hive中视图的查询和普通查询类似,查询时把表名更换为视图名即转载 2021-09-10 09:37:24 · 2173 阅读 · 0 评论 -
大数据常用端口
常见端口汇总:Hadoop: 50070:HDFS WEB UI端口 8020 : 高可用的HDFS RPC端口 9000 : 非高可用的HDFS RPC端口 8088 : Yarn 的WEB UI 接口 8485 : JournalNode 的RPC端口 8019 : ZKFC端口 19888:jobhistory WEB UI端口Zookeeper: 2181 : 客户端连接zookeeper的端口 ...原创 2021-09-01 15:03:28 · 388 阅读 · 0 评论 -
Spark与Hadoop有哪些用途?
Hadoop和Spark是复杂的框架,每个框架都实现了可以单独或一起工作的不同技术。因此,尝试使彼此平行可能会丢失更广泛的画面。但是现实是,很多公司都在使用这两者,Hadoop用于维护和实施大数据分析,而.Spark用于ETL和SQL批处理操作,涉及的是大型数据集,物联网和ML分配。Hadoop组件:HDFS, 一种用于将大数据跨入分类体系结构中的各个节点的系统。 NameNode, 一个控制和运行DataNode的系统,读取集群中所有记录的元数据和完成的每一步。 DataNodes是在每台转载 2021-09-01 14:42:03 · 825 阅读 · 0 评论 -
HBase 学习一: 客户端写缓冲区 autoFlush
更多内容,请访问 bbhhhh.github.ioHBase的表操作,默认情况下客户端写缓冲区是关闭的,即table.isAutoFlush() = true, 这种情况下,对表的单行操作会实时发送到服务端完成。因此,对于海量数据插入,修改,RPC通信频繁,效率比较低。这种场景下,可以通过激活客户端缓冲区,批量提交操作请求,提高操作效率。下面是一个简单的关于autoFlush的测试代码: public static void autoFlushTest(){ ...转载 2021-08-28 18:09:24 · 687 阅读 · 0 评论 -
HBase 增删改查Java API
1. 创建NameSpaceAndTablepackage com.HbaseTest.hdfs;import java.io.IOException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HColumnDescriptor;import org.apache.hadoop.hbase.HTableDescriptor;import org.apache.hadoop.hb转载 2021-08-28 18:01:00 · 430 阅读 · 0 评论 -
Hbase 098.4中使用新API通过Get列表获取多行的列值
在Hbase0.98.4中通过Get列表的方式获取Hbase中多行的列值,本来想使用KeyValue类来处理的,结果发现该类的getRow()和getValue()的两个方法已经废弃了,最终使用新API中的Cell接口来实现,如下:Hbase中测试表中数据如下:hbase(main):005:0> scan 'testtable'ROW COLUMN+CELL ...转载 2021-08-28 16:54:19 · 821 阅读 · 0 评论 -
hbase中scan和get查看版本数据的区别
一:查看当前所用表二:scan扫描全表数据说明:scan全表扫描出来的数据都是目前时间戳最新的数据。三:利用scan查看同一个cell之前已经put的数据(scan时可以设置是否开启RAW模式,开启RAW模式会返回已添加删除标记但是未实际进行删除的数据)说明:虽然已经put覆盖了之前同一个cell的数据,但是实际上数据并没有进行删除,只是标记删除了,利用RAW模式可以看到。红线的是添加删除标记,但是实际上没有删除的。四:get获取某个cell...转载 2021-08-28 16:49:18 · 1903 阅读 · 0 评论 -
hbase shell&java 获取多版本的值
在HBase中 一个row对应的相同的列只会有一行。使用scan 或get 得到都是最新的数据,如果我们对这某一row所对应的列进行了更改操作后,并不会多生成一条数据,不会像数据库一样,插入时多生成一条记录,在HBase中对同一条数据的修改或插入都只是put操作,最终看到的都是最新的数据,其它的数据在不同的version中保存,默认是隐藏的,通过时间戳区分,Hbase默认保存最近的三个版本,如何才能看到这些旧版本的数据了?插入测试数据:hbase(main):026:0> put '...转载 2021-08-28 16:39:27 · 440 阅读 · 0 评论 -
HBase表的基本结构和常用命令行操作
一、HBase表的基本结构1.概述: 平时常见的MySQL、Oracle数据库都是传统型关系数据库,它们都是按行查询、按行存储;而HBase为非关系型数据库,它是按列存储的的。 在HBase插入数据时,先输入数据的格式为rowkey => info => column => valuerowkey:行键,唯一且不重复info:列族(数量一般不超过3个)column:列(在列族下,一个列族下可有许多个列)value:值timestamp:时间戳..转载 2021-08-28 16:38:17 · 569 阅读 · 0 评论 -
深入理解 HBase Compaction 机制
HBase有很多话题可以聊,包括读写路径上涉及到的一些数据结构,性能优化以及优化读写做的一些设计等。今天要探讨的Compaction机制就是HBase架构上做的一个重要优化,其实关于HBase的架构设计、Flush&Compaction等文章已经多不胜数了,本文也是主要参考HBase官网、社区的一些文章总结,从各个关键点进行总结,旨在为了帮助我们更加牢固的掌握Compaction机制。为什么要执行 Compaction熟悉HBase的同学应该知道,HBase是基于一种LSM-Tree(Log-转载 2021-08-27 22:30:24 · 1159 阅读 · 0 评论 -
Region/Store/StoreFile/Hfile之间的关系
1. Regiontable在行的方向上分隔为多个Region。Region是HBase中分布式存储和负载均衡的最小单元,即不同的region可以分别在不同的Region Server上,但同一个Region是不会拆分到多个server上。Region按大小分隔,表中每一行只能属于一个region。随着数据不断插入表,region不断增大,当region的某个列族达到一个阈值(默认256M)时就会分成两个新的region。2. Store每一个region有一个或多个store组成...原创 2021-08-27 16:38:21 · 1533 阅读 · 0 评论 -
2021-08-15
时序数据库:提供高效存取时序数据和统计分析功能的数据管理系统,广泛应用于物联网(IoT)设备监控系统、企业能源管理系统(EMS)、生产安全监控系统和电力检测系统等行业场景。TSDB特点高吞吐量写入数据分级存储高压缩率减少存储空间多维度查询能力高效聚合能力OpenTSDBOpentime series database是基于Hbase的分布式的,可扩展的时间数据库它是建立在Hbase上的一层数据读写服务How does OpenTSDB work?OpenT.转载 2021-08-15 11:43:07 · 212 阅读 · 0 评论 -
MR、Tez和Spark执行引擎对比
MapReduceMapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)“和"Reduce(归约)”。TezTez是Apache开源的支持DAG作业的计算框架,它直接源于MapReduce框架,核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output, Reduce被拆分成Input、Shuffle、Sort、Merge、Processor和Output等,这样,这些分解后的元操作转载 2021-08-15 10:26:16 · 1163 阅读 · 0 评论 -
sqoop将Mysql数据导入Hive中
本实验Sqoop版本:Sqoop 1.4.6.2.6.0.3-81 mysql创建表DROP TABLE IF EXISTS `testsqoop`;CREATE TABLE `testsqoop` (`XH` varchar(255) CHARACTER SET utf8 NOT NULL COMMENT '序号',`SSQ` varchar(255) CHARACTER SET utf8 DEFAULT NULL COMMENT '所属区') ENGINE=InnoDB...原创 2021-07-24 11:18:25 · 1419 阅读 · 0 评论 -
hive执行更新和删除操作
Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置。要想支持行级insert、update、delete,需要配置Hive支持事务。一、Hive具有ACID语义事务的使用场景1. 流式接收数据。许多用户使用诸如Apache Flume、Apache Storm或Apache Kafka这样的工具将流数据灌入Hadoop集群。当这些工具以每秒数百行的频率写入时,Hive也许只能每15分钟到1小时添加一个分区,因为过于频繁地添加分区很快就会使一个表中的分区数量难以维护。而转载 2021-07-20 20:34:26 · 1318 阅读 · 0 评论 -
HDFS集群数据不均衡处理
一、概述公司使用是自己搭建的hadoop集群,版本2.7.3,最近发现出现了hdfs数据存储不均衡的现象,其中有一个datanode使用了65%,而有一个只使用了20%。hadoop集群使用的时间长了会出现这种数据不均衡的问题,当然hadoop提供了解决方案,就是使用balancer,默认进行的是datanode级别的数据均衡,但是2.X版本还不支持datanode内的磁盘之间数据均衡,hadoop在3.0以后的版本里面提供了相关的支持,参考https://hadoop.apache.org/docs/转载 2021-07-14 12:40:15 · 1061 阅读 · 0 评论 -
dfs.balance.bandwidthPerSec 参数
hdfs-site.xml 文件中的配置参数,用来balancer时,hdfs移动数据的速度,默认值为1M/S的速度。一般情况下设置为10M;设置的过大会影响当前job的运行。修改dfs.balance.bandwidthPerSec参数,需要在namenode上重启hdfs生效。stop-dfs.shstart-dfs.sh...转载 2021-07-14 09:22:54 · 739 阅读 · 0 评论 -
Hadoop:hadoop fs、hadoop dfs与hdfs dfs命令的区别
http://blog.csdn.net/pipisorry/article/details/51340838'Hadoop DFS'和'Hadoop FS'的区别While exploring HDFS, I came across these two syntaxes for querying HDFS:> hadoop dfs> hadoop fswhy we have two different syntaxes for a common purpose为什么会对同...原创 2021-07-07 09:10:03 · 479 阅读 · 0 评论 -
hadoop fs,hadoop dfs以及hdfs dfs区别
该文由本人于网上查阅资料所得,如有错误希望帮忙评论指正谢谢。hadoop fs:FS relates to a generic file system which can point to any file systems like local, HDFS etc. So this can be used when you are dealing with different file systems such as Local FS, HFTP FS, S3 FS, and others意思是..原创 2021-06-07 21:50:29 · 414 阅读 · 2 评论 -
ZooKeeper在HBase中的应用
ZooKeeper是一个开源的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。分布式应用程序可以基于ZooKeeper实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master选举、分布式锁和分布式队列等功能。既然ZooKeeper的作用这么大,那我们就来详细说说ZooKeeper在HBase中的应用叭!一个分布式HBase系统安装依赖于一个运行着的ZooKeeper集群,所有参与的节点和客户端必须能够正常访问运行着的ZooKeeper集群。HBa.转载 2021-01-17 19:05:49 · 667 阅读 · 0 评论 -
Phoenix(SQL On HBase)
1.简介Phoenix是一个HBase框架,可以通过SQL的方式来操作HBase。Phoenix是构建在HBase上的一个SQL层,是内嵌在HBase中的JDBC驱动,能够让用户使用标准的JDBC来操作HBase。Phoenix使用JAVA语言进行编写,其查询引擎会将SQL查询语句转换成一个或多个HBase Scanner,且并行执行生成标准的JDBC结果集。*如果需要对HBase进行复杂的操作,那么应该使用Phoenix,其会将SQL语句转换成HBase相应的A...转载 2020-12-31 16:29:34 · 361 阅读 · 0 评论 -
zookeeper在hbase集群中的作用
1,hbase regionserver 向zookeeper注册,提供hbase regionserver状态信息(是否在线)2,hmaster启动时候会将hbase 系统表-ROOT- 加载到 zookeeper cluster,通过zookeeper cluster可以获取当前系统表.META.的存储所对应的regionserver信息。HMaster主要作用在于,通过HMaster维护系统表-ROOT-,.META.,记录regionserver所对应region变化信息。此外还负责监控处理当前原创 2020-07-08 15:33:29 · 1197 阅读 · 0 评论 -
Hive对表建立索引
1.首先创建表create table user( id int, name string, address string)ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','STORED AS TEXTFILE;2.创建索引create index user_index on table user(id)as'org.apache.hadoop.hive.ql.index.compact.CompactIndexHan.原创 2020-07-04 19:11:41 · 783 阅读 · 0 评论 -
hive中如何建立索引
索引的作用Hive支持索引,但是Hive的索引与关系型数据库中的索引并不相同,比如,Hive不支持主键或者外键。Hive索引可以建立在表中的某些列上,以提升一些操作的效率,例如减少MapReduce任务中需要读取的数据块的数量。在可以预见到分区数据非常庞大的情况下,索引常常是优于分区的。虽然Hive并不像事物数据库那样针对个别的行来执行查询、更新、删除等操作。它更多的用在多任务节点的场景下,快速地全表扫描大规模数据。但是在某些场景下,建立索引还是可以提高Hive表指定列的查询速度。(虽然效果差原创 2020-07-04 19:06:15 · 3961 阅读 · 0 评论 -
简析OpenTSDB的用途是什么
OpenTSDB 是一种基于 HBase 编写的分布式、可扩展的时间序列数据库。官方文档这样描述:OpenTSDB is a distributed, scalable Time Series Database (TSDB) written on top of HBase;翻译过来就是,基于Hbase的分布式的,可伸缩的时间序列数据库,和上面的意思基本相同。主要用途,就是做监控系统;譬如收...原创 2020-02-28 17:20:11 · 620 阅读 · 0 评论 -
mongodb,redis,hbase区别和定位
Redis定位在"快",HBase定位于"大",mongodb定位在"灵活"。在一般使用情况下,mongodb可以当作简单场景下的但是性能高数倍的MySQL, Redis基本只会用来做缓存,HBase用来做离线计算。mongodb:我觉得定位是取代关系型数据库,想当一个主流数据库。因为他有非结构化、方便扩充字段、写性能优于mysql。万事万物有利有弊,mongodb的内存型缓存内容,让其速...原创 2020-02-22 19:37:42 · 485 阅读 · 1 评论 -
深入理解mongodb和hbase区别
最近公司想要做数据分析,之前我们公司用的是免费的growing IO。他们分析仅限于界面跳转的转化率,不能详细地分析业务数据。我研究了一个需要埋点的产品,搞明白他们是在每个接口的调用埋点,将用户对接口的调用行为记录下来,进行分析。由于接口众多,每个接口的数据都不同。可以充分利用hbase宽表的特性,在一行中定义一个通用的字段来标示当前行的数据类型,操作人,然后定义不同的字段来记录每一种数据。在插...原创 2020-02-22 19:31:06 · 548 阅读 · 0 评论 -
HDFS,MongoDB,HBase的区别和使用场景
HBase:作为数据存储,捕获来自于各种数据源的增量数据。例如,这种数据源可能是网页爬虫,可能是记录用户看了什么广告和多长时间的广告效果数据,也可能是记录各种参数的时间序列数据FaceBook使用HBase的计数器来计量人们Like特定网页的次数。内容原创人和网页主人可以得到近乎实时的、多少用户Like他们网页的数据信息。他们可以因此更敏捷地判断应该提供什么内容。Facebook 为此创建了一个...原创 2020-02-22 18:31:09 · 898 阅读 · 0 评论 -
HBase和MongoDB的区别
Mongodb用于存储非结构化数据,尤其擅长存储json格式的数据。存储的量大概在10亿级别,再往上性能就下降了,除非另外分库。Hbase是架构在hdfs上的列式存储,擅长rowkey的快速查询,但模糊匹配查询(其实是前模糊或全模糊)不擅长,但存储的量可以达到百亿甚至以上,比mongodb的存储量大多了。总结:MongoDB更像传统的关系型数据库,更善于做查询。Hbase更偏向非关系型数据库...原创 2020-02-22 18:25:28 · 469 阅读 · 0 评论 -
为何HBase速度很快
HBase能提供实时计算服务主要原因是由其架构和底层的数据结构决定的,即由LSM-Tree(Log-Structured Merge-Tree) + HTable(region分区) + Cache决定——客户端可以直接定位到要查数据所在的HRegion server服务器,然后直接在服务器的一个region上查找要匹配的数据,并且这些数据部分是经过cache缓存的。前面说过HBase会将数据...原创 2019-10-09 15:53:53 · 265 阅读 · 0 评论