摘要:
fileStream是Spark Streaming Basic Source的一种,用于“近实时”地分析HDFS(或者与HDFS API兼容的文件系统)指定目录(假设:dataDirectory)中新近写入的文件,dataDirectory中的文件需要满足以下约束条件:(1)这些文件格式必须相同,... 阅读全文
2015年11月9日
2015年11月4日
摘要:
Spark相对于Hadoop MapReduce有一个很显著的特性就是“迭代计算”(作为一个MapReduce的忠实粉丝,能这样说,大家都懂了吧),这在我们的业务场景里真的是非常有用。假设我们有一个文本文件“datas”,每一行有三列数据,以“\t”分隔,模拟生成文件的代码如下:执行该代码之后,文本... 阅读全文
2015年11月3日
摘要:
使用Spark SQL的基础是“注册”(Register)若干表,表的一个重要组成部分就是模式,Spark SQL提供两种选项供用户选择:(1)applySchemaapplySchema的方式需要用户编码显示指定模式,优点:数据类型明确,缺点:多表时有一定的代码工作量。(2)inferSchema... 阅读全文
2015年11月2日
摘要:
相对于使用MapReduce或者Spark Application的方式进行数据分析,使用Hive SQL或Spark SQL能为我们省去不少的代码工作量,而Hive SQL或Spark SQL本身内置的各类UDF也为我们的数据处理提供了不少便利的工具,当这些内置的UDF不能满足于我们的需要时,Hi... 阅读全文
2015年10月30日
摘要:
Spark SQL使用时需要有若干“表”的存在,这些“表”可以来自于Hive,也可以来自“临时表”。如果“表”来自于Hive,它的模式(列名、列类型等)在创建时已经确定,一般情况下我们直接通过Spark SQL分析表中的数据即可;如果“表”来自“临时表”,我们就需要考虑两个问题:(1)“临时表”的数... 阅读全文
2015年10月21日
摘要:
需求假设我们有一张各个产品线URL的访问记录表,该表仅仅有两个字段:product、url,我们需要统计各个产品线下访问次数前10的URL是哪些?解决方案(1)模拟访问记录数据模拟数据记录共有1000条,其中包括10个产品线:product1、product2、…、product10,100个URL... 阅读全文
2015年10月20日
摘要:
需求SparkContext自定义扩展textFiles,支持从多个目录中输入文本文件扩展class SparkContext(pyspark.SparkContext): def __init__(self, master=None, appName=None, sparkHome=Non... 阅读全文
2015年10月19日
摘要:
示例Spark SQL注册“临时表”执行“Join”(Inner Join、Left Outer Join、Right Outer Join、Full Outer Join)代码from pyspark import SparkConf, SparkContextfrom pyspark.sql i... 阅读全文
摘要:
示例Spark多个RDD(数据格式相同)“组合”为一个RDD代码from pyspark import SparkConf, SparkContext conf = SparkConf().setAppName("spark_app_union") sc = SparkContext(conf=co... 阅读全文
2015年8月24日
摘要:
1. 安装pyhs2pyhs2依赖项如下:gcc-c++python-devel.x86_64cyrus-sasl-devel.x86_64因此pyhs2的安装命令如下:yuminstallgcc-c++python-devel.x86_64cyrus-sasl-devel.x86_64pipins... 阅读全文