spark
文章平均质量分 70
weixin_40988315
这个作者很懒,什么都没留下…
展开
-
Hadoop/spark 购物篮分析
Hadoop Mapreduce 形式化映射器//key 交易ID 忽略//value 交易商品(i1,i2,...in)map(key,value){ (s1,s2,...sn)=sort(i1,i2,...in); List<Tuple2<si,sj>> listofpairs=Combinations...原创 2018-08-14 11:19:20 · 659 阅读 · 0 评论 -
spark 朴素贝叶斯
P(c/x)=P(X/C)P(C)/P(X)argmax(P(C/X))=argmax(P(X/C)P(C))=argmax(IIP(Xi/c)P(C))Mapreduce 解决方案 第一阶段 用训练数据建立分类器//key 忽略 value 一个样本,包含了各属性值以及分类map(key,value){ String [] tokens =value.split(",...原创 2018-08-17 13:49:21 · 467 阅读 · 0 评论 -
spark 基础(一)RDD
RDD resilient distributed dataset 弹性分布式数据集在spark 中对数据的所有操作均可归类为:创建RDD,转化已有RDD,调用RDD操作求值。每个RDD可以被分为多个分区,这些分区运行在集群的不同节点上,RDD可以包含python,scala,java等任意类型的对象。创建RDD方法;1 读取外部数据集 SparkContext.textFile...原创 2018-08-27 17:12:16 · 234 阅读 · 0 评论 -
spark 基础七 spark streaming
spark streaming 使用离散化流DStream作为抽象表示。DStream是随时间退役而受到的数据的序列,在内部,每个时间区间收到的数据都作为RDD存在,DStream时由这些RDD所组成的序列。DStream支持两种操作:转化操作生成新的DStream,输出操作将数据写入外部系统。除了提供RDD类似的操作外,还增加了与时间相关的新操作。与批处理程序不同,streaming需要进行...原创 2018-08-31 09:40:35 · 183 阅读 · 0 评论 -
aws EMR 调试
通过CLI工具创建、交互shell调用aws cli 首先在终端中输入aws configure 按照要求输入credentials.csv中的ID,key创建EMR clusteraws emr create-cluster --name "Spark cluster" --release-label emr-5.16.0 --applications Name=Spark \...原创 2018-08-28 14:54:08 · 1023 阅读 · 0 评论 -
spark 基础八 MLlib
MLlib是spark中提供机器学习函数的库。它是专为在集群上并行运行的情况而设计的,设计理念非常简单:把数据以RDD形式表示,然后在分布式数据集上调用各种算法。可以将其看作RDD上一系列可供调用的函数的集合。MLlib中只包含能够在集群上运行良好的并行算法。MLlib的算法适用于大规模数据集,如果要在许多小规模数据集上训练各机器学习模型,最好还是在各节点上使用单节点的机器学习算法库实现,比如sp...原创 2018-08-31 13:46:49 · 190 阅读 · 0 评论 -
spark 基础 二 数据读取与保存
spark 本身基于Hadoop生态圈构建,可以通过hadoop mapreduce框架的InputFormat 和OutputFormat 接口访问数据,大部分的文件格式与存储系统如S3、HDFS、Cassandra、HBase等都支持这种接口spark会根据文件扩展名选择对应处理方式 1读取/保存文本文件textFIle()读取一个文本文件,生成RDD,输入的每一行成为RDD中...原创 2018-08-29 11:03:19 · 517 阅读 · 0 评论 -
spark基础四 累加器 广播变量 pipe
1累加器使用map等函数时,可以使用驱动器程序中定义的变量,但集群中运行的每个任务都会得到这些变量的一个新的副本,更新这些副本的值也不会影响驱动器中的对应变量。spark中有两个共享变量,累加器和广播变量,可以实现集群中的共享。累加器提供了将工作节点中的值聚合到驱动器程序中的简单语法blacnklines= sc.accumulator(0)final Accumulator<...原创 2018-08-29 15:12:46 · 173 阅读 · 0 评论 -
spark 基础 五 集群模式
1spark 运行时的架构:spark集群采用主从结构,中央协调节点称为驱动器节点 driver node,与之对应工作节点称为执行器节点 executor。驱动节点和大量的执行器节点进行通信。spark通过集群管理器cluster manager的外部服务在集群中的及其上启动分配调度 spark驱动器是执行程序中main方法,执行用户编写的用来创建sparkcontext,创建RDD...原创 2018-08-29 17:21:53 · 200 阅读 · 0 评论 -
Spark KNN实现
R:查询数据集 S:训练数据集需要对R中每一个元素计算与S中每一个元素的距离可以首先计算得到两个数据集的笛卡尔积用map找到distancegroupBykey同一个r的distance 找出其中的KNN public class KNN{ public static void main(String[] args) throws Exception{ ...原创 2018-08-16 17:04:13 · 1990 阅读 · 0 评论 -
hadoop/spark k均值聚类
// k 期望的簇数//delta 可接受的收敛误差//data 输入数据kmeans(k,delta,data){//初始化簇质心initial_centroids=pick(k,data);//利用这个方法向映射器广播中心writeToHDFS(initial_centroids);//必要时迭代current_centroids=initial_centr...原创 2018-08-16 14:26:02 · 246 阅读 · 0 评论 -
Hadoop/spark 马尔科夫 邮件营销
一阶马尔科夫:系统在t+1时刻的状态仅由t时刻状态决定 时序交易 Mapreduce 输入 customerID, transactionID, pusechasedate amount输出 customerID, (Date1, amount1)(Date2,amount2)(Date3,amount3)...(DateN,AmountN) 用其表示马尔科夫链,最终求转移矩阵...原创 2018-08-16 11:12:10 · 369 阅读 · 0 评论 -
hadoop/saprk 共同好友
Mapreduce算法输入key value key是用户 value是用户的好友列表 ,构造新的key 是用户和其中一个好友,value是 用户的其余的好友列表,在归约器中求相同key 的value的交集map(key, value){ reducevalue=(<friend1><friend2>...<friendn>); ...原创 2018-08-14 14:38:35 · 131 阅读 · 0 评论 -
spark streaming 应用
build.sdt name := "scala-spark-streaming-app" version :="1.0"scalaVersion :="2.10.4"libarayDependencies += "org.apache.spark" %% "spark-mllib" %"1.1.0"libraryDependencies +="org.a原创 2018-08-07 15:05:21 · 88 阅读 · 0 评论 -
spark streaming 在线学习
// 创建流数据生成器// 随机线性回归数据的生成器 object StreamingModelProducer { import breeze.linalg._ def main (args:Array[String]){ val MaxEvents = 100 val NumFeatures = 100 v...原创 2018-08-07 16:07:07 · 484 阅读 · 0 评论 -
spark 初探
scalaobject ScalaApp{ def main(args: Array[String]) { val sc = new SparkContext("local[2]","first spark app") val data = sc.textFile("data/UserPurchaseHistory.csv")...原创 2018-08-07 16:49:49 · 87 阅读 · 0 评论 -
Mapreduce 推荐引擎
购买过该商品的顾客还购买过哪些商品 给一个商品,推荐购买过这个商品的用户经常购买的五件产品输出是键值对,键是商品,值是5个商品的列表map1//key=userid value=useriD购买过的产品map (userID,item){ emit(userID,item);}reduce1reduce(userID,item[i1,i2,...in])...原创 2018-08-15 08:17:33 · 351 阅读 · 0 评论 -
基于用户评分的电影推荐 Hadoop/spark实现
Mapreduce框架输入 user1 movie1 ratingmapreduce 1阶段map(<user>,<movie>,<rating>){ k2=movie; v2=Tuple2(user, rating); emit(ke,v2) }//key =movie// valu...原创 2018-08-15 09:09:40 · 1657 阅读 · 0 评论 -
hadoop/saprk Top 10列表
Java Top Nstatic SortedMap<Integer,T> topN(List<Tuple2<T,Integer>>,L,int N){ if ((L==null)||(L.isEmpty())){ return null;} SortedMap<Int...原创 2018-08-13 14:58:04 · 213 阅读 · 0 评论 -
Hadoop/Spark 左外连接
左外连接SELECT filed_1,filed_2..FROM T1 LEFT OUTER JOIN T2ON T1.k=T2.kgroup by filed_1 MapReduce 两个阶段 第一个阶段 找出所有售出的商品及关联的地址 第二个阶段统计售出的商品的地址个数public class LeftOuterJoin{ //读取输入参数 ...原创 2018-08-13 17:41:32 · 640 阅读 · 0 评论 -
spark基础 六 spark SQL
可以从各种结构化数据源中读取数据 JSON Hive等不仅支持在spark内使用SQL语句进行数据查询,也支持从类似商业软件中通过标准数据库连接器连接spark SQL进行查询在spark内部使用spark SQL时,支持SQL与常规的python java scala代码整合spark SQL 提供一种特殊的RDD, schemaRDD,存放Row对象,每个Row对象代表一行记录,在...原创 2018-08-30 11:00:12 · 184 阅读 · 0 评论