- 浏览: 1068010 次
- 性别:
- 来自: 北京
最新评论
-
jchubby:
关于第一个reduceByKey对应的cache,shuffl ...
【Spark三十七】Spark Cache机制 -
bo_hai:
看了你的文章,updateStateByKey 这个方式的使用 ...
【Spark八十八】Spark Streaming累加器操作(updateStateByKey) -
bo_hai:
棒极啦,解决了我的问题。
【Spark七十二】Spark的日志配置 -
tivan:
你好,这个代码生成主要在,那个地方使用。
【Spark105】Spark SQL动态代码生成一 -
zxsz4085:
看楼主这么厉害的样子,请问楼主如何知道类库的版本呢?比如g++ ...
【Thrift一】Thrift编译安装
文章列表
【Hive十五】Hive IO相关
- 博客分类:
- Hive
1. Hadoop配置压缩算法(Hadoop的配置属性,Hive读取core-site.xml文件中的配置,可以再hive-site.xml中配置以覆盖Hadoop中的配置)key: io.compression.codecsvalue:org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.B ...
1. 杀死一个运行在Yarn上的application
yarn application -kill application_1428487296152_25597
2
日志:
2015-09-02 14:46:27,765-[TS] DEBUG Executor task launch worker-3 org.apache.spark.sql.execution.joins.SortMergeJoin - Creating Projection: List(classId#2), inputSchema: List(stuId#0, stuName#1, classId#2), codegen:true
2015-09-02 14:46:27,766-[TS] DEBUG Executor task launch worker-3 org. ...
代码
2015-09-02 14:46:27,226-[TS] DEBUG Executor task launch worker-1 org.apache.spark.sql.catalyst.expressions.codegen.GenerateSafeProjection - code for input[0, StringType],input[1, StringType],input[2, StringType],input[3, StringType],input[4, StringType]:
public Object generate(org.apache.s ...
代码
public SpecificOrdering generate(org.apache.spark.sql.catalyst.expressions.Expression[] expr) {
return new SpecificOrdering(expr);
}
class SpecificOrdering extends org.apache.spark.sql.catalyst.expressions.codegen.BaseOrdering {
private org.apache.spark.sql.catalyst.expressions. ...
2015-09-02 14:46:27,681-[TS] DEBUG Executor task launch worker-0 org.apache.spark.sql.catalyst.expressions.codegen.GenerateUnsafeProjection - code for input[0, StringType],input[1, StringType],input[2, StringType],input[3, StringType],input[4, StringType]:
日志中的如下信息是如何产生的,这是列及其类型么?
input[0, ...
【Hadoop十七】HDFS HA配置
- 博客分类:
- Hadoop
基于Zookeeper的HDFS HA配置主要涉及两个文件,core-site和hdfs-site.xml。
测试环境有三台
hadoop.master
hadoop.slave1
hadoop.slave2
hadoop.master包含的组件NameNode, JournalNode, Zookeeper,DFSZKFailoverController
hadoop.slave1 包含的组件Standby NameNode, DataNode, JournaleNode,DFSZKFailoverController
hadoop.slave2 包含的组件Dat ...
在Hadoop2.5.2中,默认的资源调度器默认使用的算法是计算能力调度器,配置文件位于/etc/hadoop/capacity-scheduler.xml,不做任何修改,它的配置文件内容如下,默认配置中显示了一些可用的配置参数以及这些配置参数的默认值,以及这些配置参数的含义
<configuration>
<property>
<name>yarn.scheduler.capacity.maximum-applications</name>
<value>10000</value> ...
【Scala十八】视图界定与上下文界定
- 博客分类:
- Scala
Context Bound,上下文界定,是Scala为隐式参数引入的一种语法糖,使得隐式转换的编码更加简洁。
隐式参数
首先引入一个泛型函数max,用于取a和b的最大值
def max[T](a: T, b: T) = {
if (a > b) a else b
}
因为T是未知类型,只有运行时才会代入真正的类型,因此调用a > b是不正确的,因为T不确定,也就不确定T是否有>这个函数定义。
引入类型隐式转换,
因为Comparator类型是可比较较的,因此定义一个类型的隐式转换,将T转换为Comparator[T],
...
【Spark104】Spark源代码构建打包
- 博客分类:
- Spark
1. 带有ganglia的二进制包,打包成tgz
指定参数--tgz
./make-distribution.sh --name 2.4.0 --tgz -Phadoop-2.4 -Dhadoop.version=2.4.0 -Pyarn -Phive -Phive-0.13.1 -Phive-thriftserver -Pspark-ganglia-lgpl -DskipTests
Task not serializable是Spark开发过程最令人头疼的问题之一,这里记录下出现这个问题的两个实例,一个是自己遇到的,另一个是stackoverflow上看到。等有时间了再仔细探究出现Task not serialiazable的各种原因以及出现问题后如何快速定位问题的所在,至少目前阶段碰到此类问题,没有什么章法
1.
package spark.examples.streaming
import org.apache.spark.SparkConf
import org.apache.spark.streaming._
import scala.co ...
下划线_在Scala中广泛应用,_的基本含义是作为占位符使用。_在使用时是出问题非常多的地方,本文将不断完善_的使用场景以及所表达的含义
1. 在高阶函数中使用
scala> val list = List(-3,8,7,9)
list: List[Int] = List(-3, 8, 7, 9)
scala> list.filter(_ > 7)
res8: List[Int] = List(8, 9)
_ > 7是一个函数字面量,_表示调用这个函数时提供的参数值,按理说,应该指定类型,但是这里没有指定,原因是可以通过filter操作推导 ...
【Scala十六】Scala核心十:柯里化函数
- 博客分类:
- Scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系
1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a curried function with two parameter
lists. A curried function is applied by passing several arguments ...
Spark围绕着BlockManager构建了存储模块,包括RDD,Shuffle,Broadcast的存储都使用了BlockManager。而BlockManager在实现上是一个针对每个应用的Master/Executor结构,即Driver上BlockManager充当了Master角色,而各个Slave上(具体到应用范围,就是Executor)的BlockManager充当了Slave角色。
因此,BlockManager在Driver和应用的各个Executor之间各有一份,Driver上的BlockManager不具备实际存储的能力,它记录了各个Executor的BlockMa ...
Promise和Future是Scala用于异步调用并实现结果汇集的并发原语,Scala的Future同JUC里面的Future接口含义相同,Promise理解起来就有些绕。等有时间了再仔细的研究下Promise和Future的语义以及应用场景,具体参见Scala在线文档:http://docs.scala-lang.org/sips/completed/futures-promises.html
如下代码来自于BlockTransferService的fetchBlockSync方法,因为只是拉取一个Block的数据,Spark在此处定义为同步获取,而不是异步获取。异步获取的实现是 ...