自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Liam's Blog (AI & BigData)

个人博客了解一下: liam8.github.io

原创 Spark Core解析 2:Scheduler 调度体系

Spark Core解析 2:Scheduler 调度体系 Overview 调度系统,是贯穿整个Spark应用的主心骨,从调度系统开始入手了解Spark Core,比较容易理清头绪。 Spark的资源调度采用的是常见的两层调度,底层资源的管理和分配是第一层调度,交给YARN、Mesos或者Sp...

2019-12-12 23:41:15

阅读数 109

评论数 0

原创 Scala并发编程实战 - 2:Lock 锁

synchronized作为内置锁,使用简单,不易出错,然鹅确有相当的局限性,例如,无法从等待获取锁的阻塞中中断,无法设置获取锁的超时。所以JUC提供了另一种更灵活的加锁方式,即Lock。 Lock Lock接口定义如下 public interface Lock { void lock(...

2019-11-16 14:29:14

阅读数 119

评论数 0

原创 Scala并发编程实战:Monitor与synchronized

Java并发编程最常用和易用的技术莫过于synchronized关键字,而Scala的并发编程之旅也可以从synchronized开始。而synchronized的背后其实是monitor技术。 什么是Monitor Monitor是解决并发编程问题的一种常用技术,可以有效解决互斥和同步两大常见问...

2019-11-11 17:05:53

阅读数 223

评论数 0

原创 Spark Core 解析:RDD

引言 Spark Core是Spark的核心部分,是Spark SQL,Spark Streaming,Spark MLlib等等其他模块的基础, Spark Core提供了开发分布式应用的脚手架,使得其他模块或应用的开发者不必关心复杂的分布式计算如何实现,只需使用Spark Core提供的分布式...

2019-10-28 21:04:53

阅读数 135

评论数 0

原创 Scala implicit 隐式转换安全驾驶指南

这篇短文将结合实例对隐式转换的各种场景进行解释和总结,希望看完的人能够安全驶过隐式转换这个大坑。 隐式转换函数 隐式转换函数有两种作用场景。 1 转换为期望类型:就是指一旦编译器看到X,但需要Y,就会检查从X到Y的隐式转换函数。 2 转换方法的调用者:简单来说,如obj.f(),如果obj对象没...

2019-09-29 23:01:53

阅读数 114

评论数 0

原创 Scala并发编程实战:Executor线程池

创建线程是一个重量级操作,因为需要调用操作系统内核的API,所以最好不要频繁的创建和销毁线程,为了能够复用创建的线程,常用的办法的就是创建线程池。 Executor java.util.concurren包中提供了若干接口和类来实现线程池,最常用的有Executor,ExecutorService...

2019-09-28 23:27:26

阅读数 338

评论数 0

原创 基于Spark实现推荐算法-4:基于物品的协同过滤(实现篇)

算法设计与实现 基于物品的协同过滤又称Item-Based CF. 基于Spark的Item-Based CF算法其实现原理和步骤与经典方法基本一致,不同的地方主要在于具体步骤内的并行化计算。 相似度算法 在Spark MLlib中提供了余弦相似度的分布式实现,org.apache.s...

2018-05-04 09:37:36

阅读数 5279

评论数 2

原创 基于Spark实现推荐算法-2:基于用户的协同过滤(理论篇)

基于用户的协同过滤 基于用户的协同过滤,即User-Based CF (User-Based Collaborative Filtering),是基于一个这样的假设“跟你爱好相同的人喜欢的物品,你很可能也喜欢”,所以User-Based CF主要的任务就是找出用户的最近邻居,从而根据最近邻居的喜...

2018-05-03 09:47:51

阅读数 1299

评论数 0

原创 基于Spark实现推荐算法-1:推荐算法简介

个性化推荐系统简介 个性化推荐系统的定义在 1997 年由 Resnick 和 Varian 提出:利用互联网向用户提供信 息和建议,帮助用户选择产品,或模拟售货员帮助用户完成购买行为的系统 。通常推荐 由三个要素组成:推荐算法、用户、候选推荐项目。简单来说,一次推荐过程就是推荐算 法从候选推荐...

2018-05-02 09:37:07

阅读数 5199

评论数 1

原创 用Spark Streaming实时计算海量用户UV

提出需求 实时统计业务系统(web,APP之类)的访问人数,即所谓UV,或者DAU指标. 这个需求怕是流计算最最最常见的需求了. 计算UV的关键点就在于去重,即同一个人访问两次是只计一个UV的.在离线计算中统计UV比较容易想到的方法就是用group或distinct机制来去重.但是在实时计算...

2018-05-01 11:21:19

阅读数 3155

评论数 0

原创 Spark RDD API全集

RDD是啥 Resilient Distributed Dataset (RDD),弹性分布式数据集,是对不可修改,分区的数据集合的抽象。 RDD is characterized by five main properties: A list of partitionsA fu...

2018-03-27 13:14:35

阅读数 359

评论数 0

原创 Spark SQL 函数全集

Summary org.apache.spark.sql.functions是一个Object,提供了约两百多个函数。 大部分函数与Hive的差不多。 除UDF函数,均可在spark-sql中直接使用。 经过import org.apache.spark.sql.functions._ ,...

2018-03-23 09:31:01

阅读数 16642

评论数 2

原创 Spark SQL Dataset API 全集

简介 org.apache.spark.sql.Dataset是Spark SQL中核心的类,定义如下: class Dataset[T] extends Serializable DataFrame是Dataset[Row]的别名。 本文基于spark2.3.0. 下面是类方法简介...

2018-03-22 23:39:50

阅读数 3623

评论数 0

原创 自定义开发Spark ML机器学习类 - 1

初窥门径 Spark的MLlib组件内置实现了很多常见的机器学习算法,包括数据抽取,分类,聚类,关联分析,协同过滤等等. 然鹅,内置的算法并不能满足我们所有的需求,所以我们还是经常需要自定义ML算法. MLlib提供的API分为两类: - 1.基于DataFrame的API,属于spark...

2018-01-27 23:22:41

阅读数 1416

评论数 1

原创 [SSH穿透]本地访问服务器内网简易教程

应用场景 通常为了安全,服务器需要通过跳板机访问,服务器对外网暴露的端口也严格限制。这种情况下若要在本地 访问服务器上的服务或系统就会比较蛋疼。 有一个简单的解决方案,就是在本地和跳板机之间建立SSH隧道。SSH隧道提供了一个网络代理服务, 通过该代理服务可以直接访问跳板机所在的局域网,即服务器上...

2018-01-27 10:00:56

阅读数 3578

评论数 0

转载 一个Spark SQL查询的一生

Spark是时下很火的计算框架,由UC Berkeley AMP Lab研发,并由原班人马创建的Databricks负责商业化相关事务。而SparkSQL则是Spark之上搭建的SQL解决方案,主打交互查询场景。 人人都说Spark/SparkSQL快,各种Benchmark满天飞,但是到底Spa...

2016-06-29 23:12:57

阅读数 561

评论数 0

原创 Hive添加自定义UDF函数

1 编写UDF类 以简单的处理单个字段的UDF函数为例,开发自定义UDF函数需要继承’org.apache.hadoop.hive.ql.exec.UDF’类. 可以通过Maven添加,pom文件中加入(版本号跟Hive版本一致即可): dependency> groupId&...

2016-05-04 06:36:30

阅读数 7533

评论数 1

原创 CentOS 配置SSH免密码登陆(公私钥登陆)

#环境说明 客户机:Mac OS X 服务器:CentOS 6.5 客户端:OpenSSH,OS X及大多数Linux都内置了OpenSSH.’ssh -v’命令可以查看版本. #大致流程 1.在客户机创建一对密钥文件,包括公钥文件(~/.ssh/id_rsa.pub),私钥...

2016-04-14 10:05:36

阅读数 4362

评论数 0

原创 Spark SQL thrift server 部署

Spark SQL 简易部署笔记

2016-04-14 09:25:34

阅读数 773

评论数 0

原创 Spark on YARN 部署

Spark on YARN 部署笔记

2016-04-14 07:30:51

阅读数 280

评论数 0

提示
确定要删除当前文章?
取消 删除