Spark2.0入门:Structured Streaming操作网络流

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]

在Spark1.6版本,DStream是Spark Streaming的编程模型,而Spark2.0将流计算也统一到DataFrame里去了,提出了Structured Streaming编程模型;将数据源映射为类似于关系数据库中的表,然后将经过计算得到的结果映射为另一张表,完全以结构化的方式去操作流式数据,这种编程模型非常有利于处理分析结构化的数据;

继续阅读

Spark2.0入门从RDD转换得到DataFrame

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]
Spark官网提供了两种方法来实现从RDD转换得到DataFrame,第一种方法是,利用反射来推断包含特定类型对象的RDD的schema,适用对已知数据结构的RDD转换;第二种方法是,使用编程接口,构造一个schema并将其应用在已知的RDD上。
继续阅读

Spark2.0安装

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]
Spark可以独立安装使用,也可以和Hadoop一起安装使用。本教程中,我们采用和Hadoop一起安装使用,这样,就可以让Spark使用HDFS存取数据。需要说明的是,当安装好Spark以后,里面就自带了scala环境,不需要额外安装scala,因此,“Spark安装”这个部分的教程,假设读者的计算机上,没有安装Scala,也没有安装Java(当然了,如果已经安装Java和Scala,也没有关系,依然可以继续按照本教程进行安装),也就是说,你的计算机目前只有Linux系统,其他的软件和环境都没有安装(没有Java,没有Scala,没有Hadoop,没有Spark),需要从零开始安装所有大数据相关软件。下面,需要你在自己的Linux系统上(笔者采用的Linux系统是Ubuntu14.04),首先安装Java和Hadoop,然后再安装Spark(Spark安装好以后,里面就默认包含了Scala解释器)。本教程的具体运行环境如下:

  • Ubuntu14.04以上
  • Hadoop 2.6.0以上
  • Java JDK 1.7以上
  • Spark 2.0.0

继续阅读

Spark2.0入门:Structured Streaming简介

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]

Structured Streaming是Spark2.0新增的可扩展和高容错性的实时计算框架,它构建于Spark SQL引擎,当实时数据持续到达时,Spark SQL引擎会不断的计算和更新处理结果。类似于静态结构化数据的批处理,Structured Streaming可以用同样的方式进行流计算。因此,Structured Streaming非常适合处理结构化的实时数据。
之前在学习Spark Streaming章节的内容时,我们知道,Spark Streaming采用的数据抽象是DStream,而本质上就是RDD,对数据流的操作就是针对RDD的操作。而在Spark 2.0以后,Spark设计了新的组件Structured Streaming,它把流式计算也统一到DataFrame里去了。如果Structured Streaming 仅仅是换个API,或者能够支持DataFrame操作,那么它并没有突出之处,因为在Spark2.0之前通过某些封装也能够很好地支持DataFrame的操作。那么 Structured Streaming 的意义在哪里呢?第一,重新抽象了流式计算;第二,易于实现数据的exactly-once。2.0之前的Spark Streaming只能做到at-least once,框架层次很难帮你做到exactly-once。 现在通过重新设计流式计算框架,使得实现exactly-once 变得容易了。

继续阅读

大数据案例-步骤零:实验环境准备

返回大数据案例首页
《大数据课程实验案例:网站用户行为分析—-步骤零:实验环境准备》
开发团队:厦门大学数据库实验室 联系人:林子雨老师 ziyulin@xmu.edu.cn
版权声明:版权归厦门大学数据库实验室所有,请勿用于商业用途;未经授权,其他网站请勿转载

本教程介绍大数据课程实验案例“网站用户行为分析”的实验环境准备工作。

需要注意的是,本网页介绍的所有软件安装,实际上,到了后面各个实验步骤中,还会再次提示并介绍如何安装这些软件。所以,本网页相当于是案例所需软件安装的一个汇总,读者可以根据本网页说明,先完成全部系统和软件的安装,再进入实验步骤一、二、三、四(这样,在后面步骤中就不需要重复安装这些软件),或者也可以忽略本网页内容,直接进入到后面的实验步骤一、二、三、四(但是,就需要到时候动手安装这些软件)。
继续阅读

大数据案例-步骤四:利用R进行数据可视化分析

返回大数据案例首页
《大数据课程实验案例:网站用户行为分析—-步骤四:利用R进行数据可视化分析》
开发团队:厦门大学数据库实验室 联系人:林子雨老师 ziyulin@xmu.edu.cn
版权声明:版权归厦门大学数据库实验室所有,请勿用于商业用途;未经授权,其他网站请勿转载

本教程介绍大数据课程实验案例“网站用户行为分析”的第四个步骤,利用R进行数据可视化分析。在实践本步骤之前,请先完成该实验案例的第一个步骤——本地数据集上传到数据仓库Hive,第二个步骤——Hive数据分析,和第三个步骤:Hive、MySQL、HBase数据互导。这里假设你已经完成了前面的这三个步骤。
R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。在实际的案例中,更多的是跟其他数据分析工具结合起来,如:MySQL,Hive等。这里使用R的ggplot2绘图工具和recharts的绘图工具来进行可视化分析消费者行为的实例。
继续阅读

在Linux系统中安装sbt

sbt是一款Spark用来对scala编写程序进行打包的工具,这里简单介绍sbt的安装过程,感兴趣的读者可以参考[官网资料](http://www.scala-sbt.org/0.13/docs/zh-cn/Manual-Installation.html)了解更多关于sbt的内容。

继续阅读

Scala入门:fold操作

【版权声明】博客内容由厦门大学数据库实验室拥有版权,未经允许,请勿转载!
[返回Spark教程首页]

折叠(fold)操作和reduce(归约)操作比较类似。fold操作需要从一个初始的“种子”值开始,并以该值作为上下文,处理集合中的每个元素。
继续阅读