摘要: elasticsearch 自定义ID: 启动本地es,然后写入数据,data2.json: 通过批量插入上述数据: 可以看到新生成的文档_id为uuid的数值! 阅读全文
posted @ 2016-11-11 20:18 bonelee 阅读(12005) 评论(0) 推荐(0) 编辑
摘要: 有时自己的业务需要自己实现spark的分区函数 以下代码是实现一个自定义spark分区的demo 实现的功能是根据key值的最后一位数字,写到不同的文件 例如: 10写入到part-00000 11写入到part-00001 . . . 19写入到part-00009 自定义分区: 阅读全文
posted @ 2016-11-11 19:54 bonelee 阅读(3790) 评论(0) 推荐(0) 编辑
摘要: 路由文档到分片 当你索引一个文档,它被存储在单独一个主分片上。Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 进程不能是随机的,因为我们将来要检索文档。事实上,它根据一个简单的算法决定: routing值是一个任意字符串 阅读全文
posted @ 2016-11-11 19:02 bonelee 阅读(4645) 评论(1) 推荐(0) 编辑
摘要: spark streaming 入门例子: spark shell 然后运行bash脚本,在tmp里写入数据,文件名随机: 结果为: 阅读全文
posted @ 2016-11-11 16:26 bonelee 阅读(1064) 评论(0) 推荐(0) 编辑
摘要: ElasticSearch-hadoop saveToEs源码分析: 类的调用路径关系为: 他们的作用: EsSpark,读取ES和存储ES的入口 EsRDDWriter,调用RestService创建PartitionWriter,对ES进行数据写入 RestService,负责创建 RestRe 阅读全文
posted @ 2016-11-11 14:36 bonelee 阅读(4626) 评论(0) 推荐(0) 编辑
摘要: 资源参数调优 了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理解了。所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各个使用资源的地方,通过调节各种参数,来优化资源使用的效率,从而提升Spark作业的执行性能。以下参数就是Spark中主要的资源参数,每个参数都对应着 阅读全文
posted @ 2016-11-08 11:18 bonelee 阅读(4844) 评论(0) 推荐(1) 编辑
摘要: 调优概述 在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利 阅读全文
posted @ 2016-11-08 11:17 bonelee 阅读(10934) 评论(0) 推荐(2) 编辑
摘要: RDD底层实现原理 RDD是一个分布式数据集,顾名思义,其数据应该分部存储于多台机器上。事实上,每个RDD的数据都以Block的形式存储于多台机器上,下图是Spark的RDD存储架构图,其中每个Executor会启动一个BlockManagerSlave,并管理一部分Block;而Block的元数据 阅读全文
posted @ 2016-11-07 17:24 bonelee 阅读(6750) 评论(1) 推荐(0) 编辑
摘要: 注意:此文的stage划分有错,stage的划分是以shuffle操作作为边界的,可以参考《spark大数据处理技术》第四章page rank例子! 参考:http://litaotao.github.io/deep-into-spark-exection-model 我们用一个例子来说明,结合例子 阅读全文
posted @ 2016-11-07 16:37 bonelee 阅读(18260) 评论(1) 推荐(0) 编辑
摘要: Driver的任务提交过程 1、Driver程序的代码运行到action操作,触发了SparkContext的runJob方法。2、SparkContext调用DAGScheduler的runJob函数。3、DAGScheduler把Job划分stage,然后把stage转化为相应的Tasks,把T 阅读全文
posted @ 2016-11-07 16:23 bonelee 阅读(8744) 评论(0) 推荐(1) 编辑