7 dabokele

尚未进行身份认证

暂无相关描述

等级
博文 86
排名 1w+

Spark运行环境之SparkEnv和通信工具RpcEnv

Spark在运行时Driver端和Executor端需要互相通信,那么这种通信是如何进行的?在SparkEnv中有两个方法createDriverEnv,createExecutorEnv,分别用于创建Driver端和Executor端的SparkEnv对象。看一下SparkEnv对象的结构,从下面的代码中可以看到SparkEnv包含了Spark中很多重要组件,比如用于通信的RpcEnv,用于...

2019-01-03 17:14:15

【Hive】Hive Metrics体系

Hive常用的长服务主要有HiveServer2和MetaStore,这两者都可以配置一些监控数据。HiveServer2可以配置若干监控,有关HiveServer2的更多介绍可以查看文档SettingUpHiveser2。一、HiveServer2UI从Hive2.0.0版本以后,提供了一个Hiveser2的UI界面,默认通过10002端口访问。在该页面上可以看到当前活跃的HiveS...

2018-11-24 17:00:17

饿了么大数据离线计算引擎实践

  本文基于DBAPlus社群线上分享整理,原创首发于https://mp.weixin.qq.com/s/3KRNJhX5cfDseIMTlX4U9Q一、背景  饿了么BDI-大数据平台研发团队目前共有20人左右,主要负责离线&实时Infra和平台工具开发。其中6人的离线团队需要维护大数据集群规模如下,Hadoop集群规模1300+HDFS存量数据40+PB,Read...

2018-05-29 21:02:04

机器学习公式推导

  本篇笔记主要记录及推导AndrewNG的MachineLearning课程中出现的公式。  我们假设对于任意的分类、聚类、回归等问题在自然界中总是存在一个精确的模型与之相对应,接下来我们要做的就是根据获取的样本来反推并确定这个模型。由于我们毕竟无法遍历这个问题所有的情况,所以我们只能根据获取的样本去尽可能接近的确定这个模型。  公式化上面这段描述,问题对应的模型就藏在假设空间(Hy...

2018-03-28 15:06:31

Mathjax公式教程

  一般公式分为两种形式,可以理解为一种特殊的代码块,这是行内公式:$\Gamma(z)=\int_0^\inftyt^{z-1}e^{-t}dt\,.$这是行内公式:Γ(z)=∫∞0tz−1e−tdt.Γ(z)=∫0∞tz−1e−tdt.\Gamma(z)=\int_0^\inftyt^{z-1}e^{-t}dt\,.这是块公式$$\Gamma(z)=...

2018-03-16 09:36:30

Flink入门路线

整理一个Flink的入门路线流程及相关参考资料。一、运行example观察现象https://ci.apache.org/projects/flink/flink-docs-release-1.3/quickstart/setup_quickstart.html如果想要运行查看更多示例,可以参考https://ci.apache.org/projects/flink/flink-d

2018-02-01 12:34:07

Programming In Scala笔记-第二十八章、XML相关

本章介绍Scala对XML的支持,包括的主要内容参考本文一级标题。

2017-07-29 14:47:01

Spark MLlib数据类型

MLlib支持几种数据类型:本地向量(localvectors),和存储在本地或者基于RDD的分布式矩阵(matrices)。底层的线性代数转换操作是基于Breeze和jblas实现的。在MLlib中有监督学习算法使用的训练样本数据类型被称为“带标签的点(labeledpoint)”。一、本地向量(LocalVector)  一个本地向量是由从0开始的整型下标和double型数值组成的,存储

2017-04-19 21:15:10

Spark SQL中的broadcast join分析

本文分析Spark-1.6.2中大小表join时的broadcast机制。分析源码执行逻辑,并且对源码进行一定的调整。

2017-03-25 21:34:57

六、GC调优工具

在进行JVMGC性能调优之前,需要使用某些工具获取到当前应用的状态信息。  可以利用JVM运行时的一些原始数据来观察当时的GC性能。并且基于这些原始数据也衍生出一些经过分析统计后得到的指标。在原始数据中包含以下内容:当前内存池的使用情况当前内存池的容量每次GC暂停的耗时GC暂停的各阶段的耗时  基于这些内容分析统计得到的一些指标包括应用内存分配率,提升率等等。本章中主要讨论GC的原始数据,

2017-03-11 22:12:43

四、GC算法实现

在了解了上一章中GC算法的基本概念之后,本章将深入到各GC算法的具体实现中。对大多数JVM来说,一般需要选择两种GC算法,一种用于回收新生代内存区,另一种用于回收老年代内存区域。  新生代和老年代GC算法的可能组合如下表所示,如果不指定的话,将会在新生代和老年代中选择默认的GC算法。下表中的GC算法组合是基于Java8的,在其他Java版本中可能会有所不同。新生代GC算法老年代GC算法

2017-03-06 21:53:45

三、GC算法概念

在开始本章具体分析垃圾回收算法的实现之前,需要理解的是所有垃圾收集器(collector)都会关注的两个方面,找到所有存活的对象清除掉不可用对象  在所有收集器中,都是通过标记(Marking)的方法找到存活对象的。一、标记可访问对象  现在JVM中所有的GC算法都是从找出存活对象开始的。下图形象的展示了JVM中各对象之间的引用关系,      首先,GC定义了一些GCRoots对象

2017-03-04 19:01:45

二、Java中的垃圾回收

在垃圾回收中,标记清除(MarkandSweep)是最重要的一个思想。但是想要在实际场景中应用这一思想,还是需要进行一些调整的。本文接下来就通过简单的示例来分析JVM是如何保证安全持续的分配对象的。一、碎片内存区域整理  JVM进行垃圾回收的目的是想要重复使用内存中那些不再被使用的对象所占的存储空间。这些不可用对象在内存中一般都不会是连续分布的,所以它们使用的空间也是比较零散的,而这种零散将会导

2017-03-04 17:35:25

五、GC调优基本概念

一、核心概念  首先,我们来观察一条工厂的生产线,该生产线主要用于将自行车各个组件拼装成一辆完整的自行车。通过观察我们发现一辆自行车从车架上生产线开始装配,直到拼装成完整自行车后下线的整个耗时为4小时,如下图所示。        并且,我们还观察到这条生产线上每分钟就会有一辆组装好的自行车下线,该生产线每天24小时不间断运行。如果忽略掉例如生产线维护等时间成本,可以算出,该生产线在一

2017-03-03 00:37:03

激励函数-Activation Funciton

一、什么是激励函数  激励函数一般用于神经网络的层与层之间,上一层的输出通过激励函数的转换之后输入到下一层中。神经网络模型是非线性的,如果没有使用激励函数,那么每一层实际上都相当于矩阵相乘。经过非线性的激励函数作用,使得神经网络有了更多的表现力。  为了更具体的描述这个问题,请参考知乎上的回答。原文链接:https://www.zhihu.com/question/22334626/answe

2017-02-28 23:20:30

Kafka系列之-Kafka Protocol实例分析

本文基于AGuideToTheKafkaProtocol文档,以及SparkStreaming中实现的org.apache.spark.streaming.kafka.KafkaCluster类。整理出Kafka中有关MetadataAPIProduceAPIFetchAPIOffsetAPI(AkaListOffset)OffsetCommit/FetchAPI

2017-01-16 17:32:52

TensorFlow入门和示例分析

本文以TensorFlow源码中自带的手写数字识别Example为例,引出TensorFlow中的几个主要概念。并结合Example源码一步步分析该模型的实现过程。一、什么是TensorFlow  在这里,引入TensorFlow中文社区首页中的两段描述。关于TensorFlowTensorFlow™是一个采用数据流图(dataflowgraphs),用于数值计算的开源

2017-01-09 22:01:17

Linux Shell编程参考大全

本文记录LinuxShell编程中常用基本知识,方便快速入门以及查询使用。

2016-12-29 23:43:12

Spark Streaming应用启动过程分析

本文为SparkStreaming源码剖析的第三篇,主要分析SparkStreaming启动过程。  在调用StreamingContext.start方法后,进入JobScheduler.start方法中,各子元素start方法的调用顺序如下:privatevareventLoop:EventLoop[JobSchedulerEvent]=nullvallistenerBus

2016-12-20 23:44:25

Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter远程访问

本文主要讲解在Ubuntu系统中,如何在Anaconda下安装TensorFlow以及配置JupyterNotebook远程访问的过程。  在官方文档中提到,TensorFlow的安装主要有以下五种形式:Pip安装:这种安装形式类似于安装其他的Python安装包。会影响到机器上当前的Python环境,可能会与已安装的某些版本相冲突。Virtualenv安装:将TensorFlow安装在指定路径

2016-11-02 22:23:42
CSDN身份
  • 博客专家
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!