大数据
文章平均质量分 79
itcats_cn
学习技术,分享技术
展开
-
HDFS核心源码解析(三)——DataNode的心跳机制
DataNode在启动之后会周期性地向NameNode发送心跳,那么内部是如何实现的呢?原创 2021-09-01 17:44:23 · 1743 阅读 · 2 评论 -
HDFS核心源码解析(二)——DataNode的启动及注册流程
本文介绍DataNode启动流程,主要包括1. 创建一个DataNode对象2. 启动DataNode执行DataNode的初始化3. 初始化DataStorage4. 初始化DataXceiverServer5. 启动HttpServer服务并注册sevlet6. 初始化RPC7. 创建一个BlockPoolManager,遍历BPOfferService中的BPServiceActor对象的start方法,实际向集群里面的每个NameNode进行注册和心跳8. 获取NameNode代理原创 2021-08-31 16:06:18 · 862 阅读 · 0 评论 -
HDFS核心源码解析(一)——NameNode的启动流程
本文通过源码的方式详解了NameNode的启动流程1. 通过createNameNode 创建new NameNode对象2. NameNode在创建后立刻执行initialize方法3. 创建并启动HttpServer4. 加载元数据FSNamesystem5. 创建并启动NameNodeRpcServer对象6. 公共服务的检查,磁盘空间、安全模式7. 最后提供了一张大图,对NameNode启动流程做了总结原创 2021-08-29 15:51:38 · 1103 阅读 · 0 评论 -
Hive个人笔记总结
Hive是一个数据仓库软件Hive主要使用HQL(类sql)来分析已经存储在分布式设备(HDFS)上的数据Hive的本质是将用户编写的HQL,转换为MR/spark程序,对数据进行分析Hive分析的数据必须是结构化的数据,在分析之前,用户需要对数据创建表结构Hive的表结构(shema)存储在关系型数据库中,数据是存储在HDFS上,二者通过表进行映射Hive基于OLAP设计,基于OLAP设计的软件,一般重分析,延时高!原创 2020-12-15 20:02:09 · 966 阅读 · 0 评论 -
ZooKeeper学习笔记【转】
Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。转载 2020-09-25 11:32:44 · 539 阅读 · 0 评论 -
HBase原理详解【Master、Region Server内部机制、Zookeeper、读写数据流程、hbase:meta表】
一、HBASE运行原理组件结构图二、各组件的职责2.1 MASTER职责1、管理HRegionServer,实现其负载均衡。2、管理和分配HRegion,比如在HRegion split时分配新的HRegion;在HRegion Server退出时迁移其负责的HRegion到其他HRegionServer上。3、Admin职能:创建、删除、修改Table的定...原创 2019-04-18 21:25:31 · 3757 阅读 · 4 评论 -
Flume快速入门
前言在一个完整的离线大数据处理系统中,除了HDFS+MapReduce+Hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在Hadoop生态体系中都有便捷的开源框架,如图所示:图:典型大规模离线数据处理平台一、Flume日志采集框架1.1 概述Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输...原创 2019-04-20 13:39:33 · 908 阅读 · 0 评论 -
基于Akka模拟Spark中Master和Worker的通信过程
一、Spark中Master与Worker之间的通信过程1、在启动时,Worker会向Master注册自己的信息(内存、核数等),以便2、Master收到各Worker的注册信息后,会回复Worker已注册成功的信息3、worker收到master的注册成功信息后,会定期向Master发送心跳包,回报自己的状态信息4、Master定期收到Worker的心跳信息后,会更新各个Wo...原创 2019-06-08 01:15:19 · 945 阅读 · 0 评论 -
RDD的几种创建方式
一、RDD简介RDD是Spark的核心抽象,全称为Resillient Distributed Dataset,即弹性分布式数据集 RDD在抽象上来说是一种元素集合,包含了数据。它是被分区的,分为多个分区,每个分区分布在集群中的不同节点上(分区即partition),从而让RDD中的数据可以被并行操作。(分布式的特性) RDD通常通过Hadoop上的文件,即HDFS文件,来进行创建;有时也...转载 2019-06-16 18:38:55 · 1046 阅读 · 0 评论 -
Spark Core入门2【RDD的实质与RDD编程API】
一、对RDD操作的本质RDD的本质是一个函数,而RDD的变换不过是函数的嵌套.RDD有两类:输入的RDD: 典型如KafkaRDD、JDBCRDD 转换的RDD: 如MapPartitionsRDDRDD的处理流程:以如下代码为例:sc.textFile("abc.log").map().saveAsTextFile("")1. textFile 会构建出一个NewHad...原创 2019-06-17 12:02:06 · 442 阅读 · 0 评论 -
ElasticSearch基于version进行乐观锁并发控制实战解析
一、ES解决并发问题的实质ES在多线程异步修改数据时,是根据_version(版本号)来进行乐观锁控制的。1.1 了解_version是什么1、在第一次创建document的时候,该document的_version版本号为1,每次对document进行修改、删除操作,document的_version版本号加1PUT /test_index/test_type/6{...原创 2019-08-06 11:14:46 · 1661 阅读 · 0 评论 -
ElasticSearch-head安装配置教程
安装ElasticSearch图形管理界面ElasticSearch-head《elasticsearch-head》Github地址安装之前做一些准备工作,将itcats用户切换到root用户suecho "itcats ALL = (root) NOPASSWD:ALL" | tee /etc/sudoers.d/itcats返回: itcats ALL = (roo...原创 2019-04-27 19:41:49 · 504 阅读 · 0 评论 -
Sqoop快速入门【导入数据到HDFS与导出数据到数据库】
1、Sqoop概述Sqoop - “SQL到Hadoop和Hadoop到SQL”sqoop是apache旗下一款"Hadoop和关系数据库服务器之间传送数据"的工具。导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;导出数据:从Hadoop的文件系统中导出数据到关系数据库mysql等。2、工作机制将导入或导出命...原创 2019-04-23 17:15:50 · 5162 阅读 · 0 评论 -
HDFS 原理详解【读写数据流程、NameNode与DataNode工作机制、checkpoint】
目录HDFS的工作机制 概述 HDFS 写数据流程 HDFS 读数据流程 NameNode的工作机制 NameNode的职责 元数据的管理 元数据的checkpoint DataNode的工作机制 观察验证DataNode功能HDFS的工作机制工作机制的学习主要是为加深对分布式系统的理解,以及增强遇到各种问题时的分析解决能力,形成一定的集群运维能力。很多不是真...原创 2019-04-04 20:07:20 · 2079 阅读 · 0 评论 -
Hive文件格式之textfile,sequencefile和rcfile的使用与区别详解
hive在创建表时默认存储格式是textfile,或者显示自定义的stored as textfile。很多人知道hive常用的存储格式有三种,textfile,sequencefile,rcfile,但是却说不清楚这三种格式的干什么用的,本质有有什么区别?适合什么时候用?为什么hive会有多种存储格式?因为hive是文本批处理系统,所以就存在一个往hive中导入数据的问题,首先数据的存储...转载 2019-04-10 13:56:00 · 2736 阅读 · 0 评论 -
Hadoop核心组件之HDFS详解【运行机制、安装、操作与实战、NameNode高可用】
一、Hadoop的3个核心组件:分布式文件系统:HDFS——实现将文件分布式存储在很多的服务器上分布式运算编程框架:MapReduce——实现在很多机器上分布式并行运算分布式资源调度平台:YARN——帮用户调度大量的MapReduce程序,并合理分配运算资源二、HDFS整体运行机制HDFS:分布式文件系统2.1HDFS有着文件系统共同的特征有目录结构,顶层...原创 2019-04-03 17:29:55 · 887 阅读 · 0 评论 -
MapReduce词频统计【自定义复杂类型、自定义Partitioner、NullWritable使用介绍】
一、MapReduce1.0运行模型二、MapReduce编程模型之执行步骤1、准备map处理的输入数据2、交给Mapper进行处理3、Shuffle【规则可以自己控制】4、Reduce处理[合并、归并]5、输出MapReduce处理流程InputFormat读数据,通过Split将数据切片成InputSplit,通过RecordReader读取记...原创 2019-04-08 16:42:05 · 1571 阅读 · 0 评论 -
MapReduce工作流程超详细解释
MapReduce是我们再进行离线大数据处理的时候经常要使用的计算模型,MapReduce的计算过程被封装的很好,我们只用使用Map和Reduce函数,所以对其整体的计算过程不是太清楚,同时MapReduce1.0和MapReduce2.0在网上有很多人混淆。MapReduce1.0运行模型InputInput但是输入文件的存储位置,但是注意这里并一定是一些博客说的当然是...原创 2019-04-08 00:51:00 · 3032 阅读 · 0 评论 -
Yarn框架深入理解【Yarn集群配置】
一、Yarn框架产生的背景与原因我们都知道Hadoop诞生的目标是为了支持十几台机器的搜索服务,但是随着数据的增加,数据的可用性也是一个待解决的问题。但是Hadoop框架的自身问题限制了集群的发展。首先是,JobTracker和NameNode的单点问题,严重制约了集群的扩展和可靠性。MapReduce采用了基于slot的资源分配模型,slot是一种粗粒度的资源 划分单位,通常一个...原创 2019-04-08 10:37:17 · 1920 阅读 · 0 评论 -
深入理解Hive【Hive架构介绍、安装配置、Hive语法介绍】
一、Hive的产生背景1、MapReduce编程十分繁琐2、传统RDBMS人员的需要Hive由Facebook开源项目:1、用于解决海量结构化日志的数据统计问题2、构建在Hadoop之上的数据仓库3、Hive提供SQL查询语言:HQL4、底层支持多种不同的执行引擎【MR/Tez/Spark】1.x默认为MR 2.x默认为Spark 当然也可以设置为Te...原创 2019-04-10 22:23:49 · 943 阅读 · 0 评论 -
HBase快速入门【集群安装配置、读写过程、表模型、命令行、API】
HBase官方文档地址:http://hbase.apache.org一、简单看看HBase与MySQL、Hive的区别二、什么是HBaseHBASE是一个数据库----可以提供数据的实时随机读写HBase与MySQL、Oralce、DB2、SQLServer等关系型数据库不同,它是一个NoSQL数据库(非关系型数据库)HBase的表模型与关系型数据库的表...原创 2019-04-18 00:42:44 · 396 阅读 · 0 评论 -
Spark Core入门1【Spark集群安装、高可用、任务执行流程、使用Scala/Java/Lambda编写Spark WordCount】
一、Spark介绍Spark是一种快速、通用、可扩展的大数据分析引擎,包含SparkSQL、SparkStreaming、GraphX、MLlib等子项目。Spark是基于内存计算的大数据并行计算框架。Spark基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量廉价硬件之上,形成集群。Spark的优点:1、快:与Ha...原创 2019-06-11 00:44:03 · 499 阅读 · 0 评论 -
ElasticSearch单机/集群搭建教程
本文将介绍ElasticSearch单机版与集群版的安装与配置,ElasticSearch依赖JRE,注意机器是否安装JDK8【最低版本要求就是JDK8】,且JDK环境变量是否已配置完成java -versionecho $JAVA_HOME一、下载《从官网下载ElasticSearch》二、上传安装包到虚拟机解压到/usr/local/下三...原创 2019-04-26 00:51:02 · 793 阅读 · 0 评论 -
ElasticSearch入门
全文搜索属于最常见的需求,开源的 Elasticsearch是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。ElasticSearch 的底层是开源库 Lucene,Elasticsearch 是 Lucene 的封装,它提供了 REST API 的操作接口,开箱即用。本文从零开始,讲解如何使用 Elas...原创 2019-04-27 16:55:54 · 401 阅读 · 0 评论 -
什么是大数据?常用的大数据框架
1、什么是大数据?在互联网技术发展到现今阶段,大量日常、工作等事务产生的数据都已经信息化,人类产生的数据量相比以前有了爆炸式的增长,以前的传统的数据处理技术已经无法胜任,需求催生技术,一套用来处理海量数据的软件工具应运而生,这就是大数据!2、数据的处理技术处理海量数据的核心技术:海量数据存储:分布式海量数据运算:分布式3、常用的大数据框架这些核心...原创 2019-03-26 13:05:05 · 4880 阅读 · 1 评论