摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of
阅读全文
摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of
阅读全文
摘要:一、Spark GraphX计算:寻找相同的用户,合并信息 ### 寻找相同的用户,合并信息 ~~~ 假设有五个不同信息可以作为用户标识,分别为:1X、2X、3X、4X、5X; ~~~ 每次可以选择使用若干为字段作为标识 ~~~ 部分标识可能发生变化,如:12 => 13 或 24 => 25 ##
阅读全文
摘要:一、Spark GraphX计算 ### Spark GraphX计算 ~~~ 图的定义 ~~~ 属性操作 ~~~ 转换操作 ~~~ 结构操作 ~~~ 关联操作 ~~~ 聚合操作 ~~~ Pregel API 二、图的基本操作 三、编程实现:SparkGraphX计算 ### 在pom.xml下添加
阅读全文
摘要:一、Spark GraphX计算:连通图算法 ### 编程代码实现:给定数据文件,找到存在的连通体 package cn.yanqi.graphx import org.apache.spark.graphx.{Graph, GraphLoader} import org.apache.spark.
阅读全文
摘要:一、Spark GraphX 基础 ### SparkGraphX基础 ~~~ 架构 ~~~ 存储模式 ~~~ 核心数据结构 ~~~ GraphX 与 Spark 其他组件相比相对独立,拥有自己的核心数据结构与算子。 二、GraphX 架构 ### GraphX的整体架构可以分为三个部分: ~~~
阅读全文
摘要:一、Spark GraphX ### Spark GraphX概述 ~~~ GraphX 是 Spark 一个组件,专门用来表示图以及进行图的并行计算。 ~~~ GraphX 通过重新定义了图的抽象概念来拓展了 RDD: 定向多图,其属性附加到每个顶点和边。 ~~~ 为了支持图计算, ~~~ Gra
阅读全文
摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of
阅读全文
摘要:一、Redis管理的Offset ### 要想将Offset保存到外部存储中,关键要实现以下几个功能: ~~~ Streaming程序启动时,从外部存储获取保存的Offsets(执行一次) ~~~ 在foreachRDD中,每个批次数据处理之后,更新外部存储的offsets(多次执行) ### 在p
阅读全文
摘要:一、Offset 管理 ### Offset管理 ~~~ Spark Streaming集成Kafka,允许从Kafka中读取一个或者多个 topic 的数据。 ~~~ 一个Kafka Topic包含一个或多个分区,每个分区中的消息顺序存储,并使用 offset 来标记消息的位置。 ~~~ 开发者可
阅读全文
摘要:一、Kafka-010 接口 ### kafka-010接口 ~~~ Spark Streaming与kafka 0.10的整合,和0.8版本的 Direct 方式很像。 ~~~ Kafka的分区和Spark的RDD分区是一一对应的,可以获取 offsets 和元数据, ~~~ API 使用起来没有
阅读全文
摘要:一、与Kafka整合 ### 与kafka整合 ~~~ 官网:http://spark.apache.org/docs/2.4.5/streaming-kafka-integration.html ### Streaming与kafka整合版本对照 ~~~ 针对不同的spark、kafka版本,集成
阅读全文
摘要:一、Kafka-08 接口 ### Receiver based Approach ~~~ 基于 Receiver 的方式使用 Kafka 旧版消费者高阶API实现。 ~~~ 对于所有的 Receiver,通过 Kafka 接收的数据被存储于 Spark 的 Executors上, ~~~ 底层是写
阅读全文
摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of
阅读全文
摘要:一、有状态转换 ### 有状态转换 ~~~ 有状态的转换主要有两种:窗口操作、状态跟踪操作 ### 窗口操作 ~~~ Window Operations可以设置窗口大小和滑动窗口间隔来动态的获取当前Streaming的状态。 ~~~ 基于窗口的操作会在一个比 StreamingContext 的 b
阅读全文
摘要:一、DStream输出操作 ### DStream输出操作 ~~~ 输出操作定义 DStream 的输出操作。 ~~~ 与 RDD 中的惰性求值类似,如果一个 DStream 及其派生出的 DStream 都没有被执行输出操作, ~~~ 那么这些 DStream 就都不会被求值。 ~~~ 如果 St
阅读全文
摘要:一、DStream转换操作 ### DStream转换操作 ~~~ DStream上的操作与RDD的类似, ~~~ 分为 Transformations(转换)和 OutputOperations(输出)两种, ~~~ 此外转换操作中还有一些比较特殊的方法,如: ~~~ updateStateByK
阅读全文
摘要:一、无状态转换 ### 无状态转换 ~~~ 无状态转化操作就是把简单的 RDD 转化操作应用到每个批次上, ~~~ 也就是转化DStream 中的每一个 RDD。 ~~~ 常见的无状态转换包括:map、flatMap、filter、repartition、reduceByKey、groupByKey
阅读全文
摘要:一、RDD队列流 ### RDD队列流 ~~~ 调试Spark Streaming应用程序的时候, ~~~ 可使用streamingContext.queueStream(queueOfRDD) 创建基于RDD队列的DStream; ### 源码提取说明 ~~~ # 源码提取说明:Streaming
阅读全文
摘要:一、socket数据流 ### Socket数据流 ~~~ Spark Streaming可以通过Socket端口监听并接收数据,然后进行相应处理; ~~~ 新开一个命令窗口,启动 nc 程序: nc -lk 9999 # yum install nc ~~~ # 随后可以在nc窗口中随意输入一些单
阅读全文