- 博客(37)
- 收藏
- 关注
原创 【Hbase】记一次磁盘空间写满后出现的事故及感想
持续稳定运行一年多的Hbase,就在前天晚上突然有RegionServer挂掉了,首先尝试了一下启动这个挂掉的RegionServer,执行指令:hbase-daemon.sh start regionserver这个RegionServer还真的启动成功了,于是乎进行了一次手动balance,进入hbase shell,执行“balance”指令,一直返回false,打开Hbase管理...
2019-03-06 19:56:25
1463
原创 基于CENTOS7安装Kubernates集群
一、节点规划 主机名 IP 角色 C7m1 10.137.213.240 k8s主节点 C7m2 10.137.213.241 k8s从节点 C7m3 10.137.213.2...
2018-12-30 11:19:54
822
原创 基于CentOS7安装Docker
一、CentOS的环境要求Docker要求CentOS的系统内核要高于3.10,通过uname -r指令查看自己的CentOS内核版本是否符合规定。[root@c7m1 ~]# uname -r 上面表示本机内核是符合要求的。 二、安装Docker1.移除旧版本较旧版本的Docker被称为docker或docker-engine。如果已安装这些,请卸载它们以及...
2018-12-30 10:30:25
939
原创 【Spark内核源码】Spark执行环境,SparkEnv
目录SparkEnv简述解析create方法0、解析之前1、建立安全管理器securityManager2、建立RpcEnv3、创建serializerManager和closureSerializer4、创建广播管理器broadcastManager5、创建map输出跟踪器mapOutputTracker6、构建存储体系7、创建地量系统metricsSys...
2018-12-18 08:36:41
832
原创 【Spark内核源码】SparkContext一些方法的解读
目录创建SchedulerBackend的TaskScheduler方法设置并启动事件总线发布环境更新的方法发布应用程序系统的方法在【Spark内核源码】SparkContext中的组件和初始化 已经介绍了Spark初始化时是如何执行的,都创建了哪些组件。这些组件具体技术细节后面会慢慢的说,而针对SparkContext,里面还有一些方法,值得大家品一品。创建Schedul...
2018-12-03 12:56:51
819
原创 【Spark内核源码】SparkContext中的组件和初始化
目录SparkContext概述SparkContext组件概述SparkContext初始化过程第一步:确保当前线程中没有SparkContext在运行第二步:版本反馈第三步:真正的初始化第四步:确认启动成功SparkContext概述在【Spark内核源码】Word Count程序的简单分析 当中使用Spark Shell编写了简单的Word Count程序...
2018-11-18 14:53:59
4066
1
原创 【Spark内核源码】事件总线ListenerBus
目录消息总线ListenerBus异步事件处理LiveListenerBus增加事件listenerThread处理事件消息总线ListenerBusorg.apache.spark.util.ListenerBus处理来自DAGScheduler、SparkContext、BlockManagerMasterEndpoint等组件的事件,是整个Spark框架体系内事件处理...
2018-11-02 16:36:48
492
原创 【Spark内核源码】内置的RPC框架,Spark的通信兵(二)
目录RPC管道处理TransportChannelHandlerRPC服务端处理RpcHandler引导程序BootstrapRPC客户端TransportClient总结接着【Spark内核源码】内置的RPC框架,Spark的通信兵(一) 接着分析RPC管道处理TransportChannelHandlerTransportContext最后一个作用就是使用org...
2018-11-01 17:44:15
664
原创 【Spark内核源码】内置的RPC框架,Spark的通信兵(一)
目录RPC上下文TransportContextRPC配置TransportConfRPC客户端工厂TransprotClientFactoryRPC服务端TransportServer作为一个分布式计算引擎,既然是分布式,那么网络通信是肯定少不了的,在Spark中很多地方都涉及到了网络通信,各个组件之间消息传输、用户文件和资源的上传、Shuffle过程、Block的数据复制与...
2018-11-01 14:23:05
721
原创 VMware下安装并配置CentOS6.5
目录1.安装空白虚拟机2.安装CentOS3.配置新的CentoOS3.1 配置网络3.2 关闭防火墙1.安装空白虚拟机进入VMware Workstation点击“创建新的虚拟机”,弹出新建虚拟机向导,默认选中“典型(推荐)”,点击“下一步。在安装来源的选项中,选择“稍后安装操作系统”,点击“下一步”。选择相应的客户机操作系统和对应版本,点击“下一步”...
2018-10-24 21:02:04
10726
4
原创 【Spark内核源码】SparkConf,Spark的配置管控
目录概述从系统中获取并设置配置信息使用SparkConf提供的方法设置配置信息通过克隆的方式设置配置信息 总结概述SparkConf,以KEY-VALUE对的形式设置Spark的配置参数。我们编写Spark应用程序时,也会先创建SparkConf,并配置一些参数,再传递给SparkContext。下面试对SparkConf的源码进行的分析。SparkConf位于Sp...
2018-10-15 20:02:55
1648
原创 【Spark内核源码】Spark基本概念及特点
目录Hadoop MapReduce的不足Spark的基本概念RDDDAGPartitionNarrowDependencyShuffleDependencyJobStageTaskShuffleSpark的基本组件Cluster ManagerWorkerExecutorDriverApplicationSpark的特点...
2018-10-12 13:46:46
307
原创 【Spark内核源码】解析“spark-shell”(二)
接着【初探Spark内核】解析“spark-shell”(一)来看根据main的执行日志来看,我们直接看一下org.apache.spark.repl.Main.main方法:main方法中创建了SparkILoop对象,作为参数传递给了doMain方法,并调用了doMain方法。在doMain方法中进行了jar包的加载和设置,便开始执行SparkILoop的precess方法...
2018-10-10 21:00:23
288
原创 【Spark内核源码】Spark源码环境搭建
目录准备条件下载spark源码,并解压打开spark源码下的pom.xml文件,修改对应的java和intellij里的maven版本打开intellij,Inport Project,将源码导入intellij中问题总结(十分重要)Maven编译打包前的准备Maven编译打包准备条件1、下载安装intellij2、下载安装jdk1.83、下载安装scala...
2018-10-09 23:34:43
2075
原创 Windows下安装sbt
0、版本sbt-1.2.31、解压将下载好的压缩包解压,我这里解压到了C盘。2、配置环境变量 增加STB_HOME变量配置Path3、第一次运行首次运行会有一个较长时间的等待,需要下载一些资源在cmd窗口中键入“sbt” 出现了“sbt:用户名”表示已经安装完成,并进入了sbt的指令窗口,键入“about”查看sbt相关信息:此时...
2018-10-09 18:41:45
1114
原创 【Spark内核源码】解析“spark-shell”(一)
目录脚本分析远程监控之前使用spark-shell,编写了一个word count程程序【初探Spark内核】Word Count程序的简单分析 ,spark-shell究竟都为我们做了些什么,下面就好好分析一下。脚本分析当我们输入指令“spark-shell”的时候,我们是调用了SPARK_HOME/bin/spark-shell脚本。这个脚本大致的调用过程是这样的:...
2018-09-27 23:05:35
319
原创 【Spark内核源码】Word Count程序的简单分析
目录启动Spark Shell日志级别的设置解析word count程序第0步:设置日志级别(“可选”)第1步:读取文件第2步:将每行的内容根据空格进行拆分成单词第3步:设置每一个单词的计数为1第4步:单词根据Key进行计数值累加聚合第5步:输出结果与分析刚接触Spark那会,还是Spark1.3版本,那时觉得Spark好厉害,但由于能力和工作的原因,没有沉...
2018-09-15 15:58:39
658
原创 scala隐式转换
目录隐式转换的概念隐式转换的使用隐式转换做参数类型转换隐式转换增强现有类型隐式参数利用隐式参数进行隐式转换再议Context Bounds隐式转换的概念隐式转换函数(implicit conversion function)是以implicit关键字声明的带有单个参数的函数,这样的函数将被自动应用,将值从一种类型转换为另一种类型。隐式转换函数叫什么名字是无所谓的...
2018-09-05 07:25:38
2196
原创 scala类型参数
目录泛型类泛型函数上下边界BoundsView BoundsContext BoundsManifest Context Bounds协变和逆变总结泛型类泛型类,顾名思义,其实就是在类的声明中,定义一些泛型类型,然后在类内部,比如field或者method,就可以使用这些泛型类型。使用泛型类,通常是需要对类中的某些成员,比如某些field和method中的参...
2018-09-02 14:07:36
406
原创 scala中的模式匹配和样例类
目录模式匹配模式匹配中的守卫和变量对象模式匹配数组模式匹配 列表模式匹配元组模式匹配样例类(cass class)匹配嵌套结构Option的使用偏函数模式匹配模式匹配是scala中的另一个特色,比java中的swich case语句强大的多,不仅能够对值进行匹配,还可以对类型、集合元素进行匹配。match case的语法如下:变量 match {...
2018-08-31 07:57:02
1028
原创 scala集合的一些高级操作
目录流懒视图流这个流(stream)操作是一个尾部懒计算的不可变列表,只有在需要它时,它才会计算。 上面展示了创建Stream,为Steam增加head,构造一个新的Stream,增加head使用“#::”符号,增加之后。调用Stream的尾部看看,究竟能得到什么 调用tail方法得到尾部Stream,相当于在原有Stream的基础上,使尾部的第一个元素作为he...
2018-08-28 20:11:20
899
原创 scala的函数式编程(二)
参数类型推导scala会尽可能地推导出函数的类型,使得scala代码非常简洁//参数类型推断Array(1,2,3,4).map((x : Int) => x * 3)//map方法会推断出要出入一个 Int => Int 类型的函数,因此可以省略函数参数的类型,写成:Array(1,2,3,4).map((x) => x * 3)//当只有一个参数时,可...
2018-08-24 12:53:59
587
原创 scala的函数式编程(一)
目录引言将函数作为值匿名函数函数的高级用法将函数作为参数将函数作为返回值(很重要)引言函数是scala中最重要的部分,有人愿意称“函数式scala中的一等公民”。也就是因为函数才使得scala更加简洁、优雅、又耐人寻味,总之,函数式编程在scala中是一等一的重要,使用scala开发的各类框架都存在这大量函数,如果想去了解、阅读Spark源码,函数式编程这一关必须要...
2018-08-22 20:43:57
5319
原创 scala特质
scala中提供了“trait(特质)”这个特殊概念,特质并非接口,它可以同时拥有抽象方法和具体方法,一个类可以拥有多个特质,这一特性解决了java接口的问题。类可以通过“extends”关键字继承trait,这里不是implement,二是extends,类继承了trait后必须实现trait中的抽象方法,实现时不需要使用“override”关键字。scala中不支持类的多继承,但支持tra...
2018-08-16 11:25:16
1140
原创 scala继承
继承继承是面向对象编程语言的重要概念,简单一句话就是“儿子继承爸爸,拥有爸爸的很多可以被继承的特征(method和field)”。scala中子类继承父类与java一样,使用“extends”关键字。重写父类方法时使用“override”关键字。使用父类的方法或变量时使用“super”关键字。对象匹配和转换classOf[T]看成Java里的T.class,可以精...
2018-08-14 21:35:38
1511
原创 scala对象
目录单例对象伴生对象apply方法枚举单例对象单例对象(Object)相当于class类的单例示例,通常放一些静态方法或静态变量。对象的无参构造器在第一次使用时被调用,且单例对象没有有残构造器。伴生对象如果有一个class,还有一个与class同名的object,那么就称这个object是class的伴生对象,class是object的伴生类。伴生类和伴生对象必...
2018-08-14 07:49:15
544
原创 scala类
package study.classstudyimport scala.beans.BeanPropertyclass Person { //必须初始化字段 //定义一个公有字段name, //生成面向JVM的类时候,会生成一个私有字段name和对应的公有getter、setter方法 //getter,setter方法分别叫做name,name_ var ...
2018-08-13 08:38:47
209
原创 scala映射和元组
目录映射(Map)定义获取映射的值修改、增加、删除映射映射的遍历元组(Tuple)拉链函数(zip)映射(Map)定义映射其实就是“键值对”,scala中分为:定长映射和变成映射。定长映射:scala.collection.immutable.Map,使用时不需要引用变成映射:scala.collection.mutable.Map,使用时需要引用,...
2018-08-08 20:21:29
312
原创 scala数组
目录定长数组变长数组Array和ArrayBuffer相互转换遍历数组数组的常见方法定长数组定长数组的定义有种:scala> val arr1 = Array[Int](1,2,3,4) //创建数组并设置具体内容arr1: Array[Int] = Array(1, 2, 3, 4)scala> var arr2 = new Array[Int...
2018-08-07 19:35:24
709
原创 scala异常处理
scala的异常机制和java的异常机制是一样的,抛出的异常必须是java.lang.Throwable的子类,但是scala中没有“受检”异常的机制。//这是java的“受检”异常的方式,在可能抛出异常的方法上做出声明//scala中没有这样的方式public void doSomething() throws IOException{ ....} throw表达式,th...
2018-08-06 19:20:17
1386
原创 scala方法和函数
目录方法的定义默认参数变长参数过程懒值(lazy)方法VS函数定义方式表达形式参数要求方法和函数的相互转换方法的定义有以下几点需要注意:所有参数必须制定类型; 递归方法,不能省略返回值类型,其他情况下可以忽略(方法可以通过=右侧的函数主体推断出返回值类型) 单行方法主体,可以与方法写在一行并忽略{}默认参数scala> de...
2018-08-05 12:40:14
4333
原创 scala条件控制和循环
条件控制 条件控制的语法结构和java是一样的。但与java很大的区别在于,scala里的if/else语句是有返回值的。例如: if(x > 0) x else 0可赋值给变量,例如: val a = if(x > 0) x else 0返回的值也可以是混合型数据,例如: val a = if(x > ...
2018-08-04 10:41:15
1682
原创 scala入门
目录用一句话概括Scala scala解释器 scala的编译变量声明scala类型运算符函数和方法的调用 用一句话概括Scala scala是一门运行在JVM上的高级编程语言,所有Scala代码都必须编译为字节码,由JVM进行运行,可以与Java无缝互操作。 scala解释器 解释器也成为Read(取值)-> Evaluation(求值)-...
2018-08-03 10:56:25
2144
原创 设计模式--观察者模式
当一个对象的某个状态改变时,随之而来的是改变其他对象的状态。比如商品降价时,要通知所有关注此商品的人,我们可能第一时间想到这样写:/** * @ClassName: Commodity * @Description: 商品类 */public class Commodity { //商品价格 private Double price; public void priceChang...
2018-03-31 21:53:43
262
原创 [MoonML]-决策树ID3分类器
正文决策树(decision tree),我觉得这同样是一个高效的,很好理解,很容易实现的分类器,这个分类器相对于其他分类器的一个显著优点就是输出结果易于理解,在对分类决策的时候可以给出中间的分析过程,这是其他大多数分类器不具备的功能,而且出现一些不相关特征的数据,决策树也能很好应对。决策树同样也有缺点,那就是由于个别特征占据主导地位,而导致过度匹配的问题。下面让我们来看一下决策树的基本思
2017-07-03 19:56:35
585
原创 [MoonML]-K邻近分类器
正文 K-邻近算法(K-NearestNeighbor)简称KNN,我觉得这个真的是分类器中最好理解、最好实现的分类器,它最实用于数值型特征数据,下面让我们看看它的基本思想。
2017-06-26 20:01:34
379
原创 [MoonML]-朴素贝叶斯分类器
前不久,公司有一项业务需要给出下一周的的预测(这是公司业务,这里不细说)。于是,我接触到了机器学习领域的知识,我觉得机器学习真是一个很奇妙的领域,它是一门交叉的学科,对各个业务领域冲击性很大。可以说,在任何领域都有运用机器学习的相关知识。 我并没有很完善的数学理论基础,但我会用我自己的理解来讲述所涉及到的算法,我想这样也是有好处的,那就是将复杂难懂的公式转换成了更接地气更让人明白的方式展现给大家。接下来的内容,如果有错,请大家多多指教。
2017-06-23 15:34:40
280
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人