1 itcats_cn

尚未进行身份认证

我是一名应届生,喜欢通过博客记录自己的学习历程,把自己学习的一些总结与心得分享给大家,也方便自己日后的复习与成长。我不是大神,但我有一颗成为大神的心,若博客有什么错误之处,欢迎各位大佬指正,谢谢!

等级
博文 180
排名 2w+

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

RDD的几种创建方式

一、RDD简介RDD是Spark的核心抽象,全称为ResillientDistributedDataset,即弹性分布式数据集 RDD在抽象上来说是一种元素集合,包含了数据。它是被分区的,分为多个分区,每个分区分布在集群中的不同节点上(分区即partition),从而让RDD中的数据可以被并行操作。(分布式的特性) RDD通常通过Hadoop上的文件,即HDFS文件,来进行创建;有时也...

2019-06-16 18:38:55

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

基于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

基于Scala的并发编程模型Akka

一、Akka概念Akka是JVM平台上构建高并发、分布式和容错应用的工具包和运行时环境。Akka用Scala语言编写,同时提供了Scala、JAVA的开发接口。二、Akka中Actor模型2.1Actor模型介绍Akka处理并发的方法基于Actor模型。在基于Actor的系统里,所有的事物都是Actor。...

2019-06-06 00:43:16

ElasticSearch-head安装配置教程

安装ElasticSearch图形管理界面ElasticSearch-head《elasticsearch-head》Github地址安装之前做一些准备工作,将itcats用户切换到root用户suecho"itcatsALL=(root)NOPASSWD:ALL"|tee/etc/sudoers.d/itcats返回:itcatsALL=(roo...

2019-04-27 19:41:49

ElasticSearch入门

全文搜索属于最常见的需求,开源的Elasticsearch是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、StackOverflow、Github都采用它。ElasticSearch的底层是开源库Lucene,Elasticsearch是Lucene的封装,它提供了RESTAPI的操作接口,开箱即用。本文从零开始,讲解如何使用Elas...

2019-04-27 16:55:54

ElasticSearch单机/集群搭建教程

本文将介绍ElasticSearch单机版与集群版的安装与配置,ElasticSearch依赖JRE,注意机器是否安装JDK8【最低版本要求就是JDK8】,且JDK环境变量是否已配置完成java-versionecho$JAVA_HOME一、下载《从官网下载ElasticSearch》二、上传安装包到虚拟机解压到/usr/local/下三...

2019-04-26 00:51:02

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

StringUtils中 isNotEmpty 和isNotBlank的区别【Java字符串判空】

StringUtils方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理。例如,如果输入为null则返回也是null等,具体可以查看源代码)。除了构造器,StringUtils中一共有130多个方法,并且都是static的,所以我们可以这样调用StringUtils.xxx()

2019-04-20 17:06:33

Flume快速入门

前言在一个完整的离线大数据处理系统中,除了HDFS+MapReduce+Hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在Hadoop生态体系中都有便捷的开源框架,如图所示:图:典型大规模离线数据处理平台一、Flume日志采集框架1.1概述Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输...

2019-04-20 13:39:33

HBase原理详解【Master、Region Server内部机制、Zookeeper、读写数据流程、hbase:meta表】

一、HBASE运行原理组件结构图二、各组件的职责2.1MASTER职责1、管理HRegionServer,实现其负载均衡。2、管理和分配HRegion,比如在HRegionsplit时分配新的HRegion;在HRegionServer退出时迁移其负责的HRegion到其他HRegionServer上。3、Admin职能:创建、删除、修改Table的定...

2019-04-18 21:25:31

HBase快速入门【集群安装配置、读写过程、表模型、命令行、API】

HBase官方文档地址:http://hbase.apache.org一、简单看看HBase与MySQL、Hive的区别二、什么是HBaseHBASE是一个数据库----可以提供数据的实时随机读写HBase与MySQL、Oralce、DB2、SQLServer等关系型数据库不同,它是一个NoSQL数据库(非关系型数据库)HBase的表模型与关系型数据库的表...

2019-04-18 00:42:44

用生活举例看Java多线程活跃性问题【死锁、饥饿、活锁】

死锁:吃饭问题,5个人每人只有一双筷子,只有让另外一个人分享他自己的筷子给自己,自己才能吃到饭。若存在这样的情况,若每个人都不把自己的筷子借给别人用餐,每个人都抓着自己手中的筷子不放,那么每个人都吃不上饭饿死了。也就是说A线程拥有B线程所需的资源,B线程也有A线程所需资源,但两者都不把资源分享出来,最后需求达不到,最后饿死。饥饿问题:学校饭堂排队打饭,但有些人无秩序插队,那么插队的人拥有...

2019-04-12 18:07:21

数据结构——哈希表

一、从一道Leetcode题目认识哈希表387.字符串中的第一个唯一字符因为该字符串只包含小写字母,即只存在a-z26个小写字母,我们将其a-z对应到数组0-25索引的位置,出现一次,index+1代码编写:classSolution{publicintfirstUniqChar(Strings){int[]freq=new...

2019-04-12 18:06:14

深入理解Hive【Hive架构介绍、安装配置、Hive语法介绍】

一、Hive的产生背景1、MapReduce编程十分繁琐2、传统RDBMS人员的需要Hive由Facebook开源项目:1、用于解决海量结构化日志的数据统计问题2、构建在Hadoop之上的数据仓库3、Hive提供SQL查询语言:HQL4、底层支持多种不同的执行引擎【MR/Tez/Spark】1.x默认为MR2.x默认为Spark当然也可以设置为Te...

2019-04-10 22:23:49

Hive文件格式之textfile,sequencefile和rcfile的使用与区别详解

hive在创建表时默认存储格式是textfile,或者显示自定义的storedastextfile。很多人知道hive常用的存储格式有三种,textfile,sequencefile,rcfile,但是却说不清楚这三种格式的干什么用的,本质有有什么区别?适合什么时候用?为什么hive会有多种存储格式?因为hive是文本批处理系统,所以就存在一个往hive中导入数据的问题,首先数据的存储...

2019-04-10 13:56:00

Linux安装和配置MySQL5.7【修改密码、修改字符集等配置】

安装配置MySQL,看这篇文章就够了。本文包括mysql安装,默认密码获取与修改,修改MySQL默认编码字符集,防火墙关闭CentOS6、CentOS7均可用一、下载和安装mysql源先下载mysql源安装包[root@localhost~]#wgethttps://dev.mysql.com/get/mysql57-community-release-el7...

2019-04-09 15:19:32

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

Yarn框架深入理解【Yarn集群配置】

一、Yarn框架产生的背景与原因我们都知道Hadoop诞生的目标是为了支持十几台机器的搜索服务,但是随着数据的增加,数据的可用性也是一个待解决的问题。但是Hadoop框架的自身问题限制了集群的发展。首先是,JobTracker和NameNode的单点问题,严重制约了集群的扩展和可靠性。MapReduce采用了基于slot的资源分配模型,slot是一种粗粒度的资源划分单位,通常一个...

2019-04-08 10:37:17
奖章
  • 领英
    领英
    绑定领英第三方账户获取
  • Github
    Github
    绑定github第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。