随着近十年互联网的迅猛发展,越来越多的人融入了互联网——利用搜索引擎查询词条或问题:社交圈子从现实搬到了Facebook.Twitter.微信等社交平台上:女孩子们现在少了逛街,多了在各大电商平台上的购买:喜欢棋牌的人能够在对战平台上找到世界各地的玩家对弈.在国内随着网民数量的持续增加,造成互联网公司的数据在体量.产生速度.多样性等方面呈现出巨大的变化. 互联网产生的数据相较于传统软件产生的数据,有着数据挖掘的巨大潜力.通过对数据的挖掘,可以统计出PV.UV,计算出不同设备与注册率.促销与下单率…
阅读提示:读者如果对Spark的背景知识不是很了解的话,建议首先阅读<SPARK2.1.0模型设计与基本架构(上)>一文. Spark模型设计 1. Spark编程模型 正如Hadoop在介绍MapReduce编程模型时选择word count的例子,并且使用图形来说明一样,笔者对于Spark编程模型也选择用图形展现. Spark 应用程序从编写到提交.执行.输出的整个过程如图5所示. 图5   代码执行过程 图5中描述了Spark编程模型的关键环节的步骤如下. 1)用户使用SparkCont…
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序运行的状态.本文主要介绍了调试工具WinDbg和抓包工具ProcDump的使用,并分享一个真实的案例.N年前不知谁写的代码,导致每一两个月偶尔出现CPU飙高的现象.我们先使用ProcDump在生产环境中抓取异常进程的Dump文件,然后在不了解代码的…
目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Spark? 2.环境准备 2.1.网络配置 2.2.更改 HOSTNAME 2.3.配置 SSH 免密码登录登录 2.4.关闭防火墙 2.7.安装 NTP 3. 下载应用程序及配置环境变量 3.1.创建安装目录 3.2.下载本文中用到的程序 3.3.设置环境变量 4. 安装 Oracle JDK 1.…
Spark2.1.0——内置Web框架详解 任何系统都需要提供监控功能,否则在运行期间发生一些异常时,我们将会束手无策.也许有人说,可以增加日志来解决这个问题.日志只能解决你的程序逻辑在运行期的监控,进而发现Bug,以及提供对业务有帮助的调试信息.当你的JVM进程奔溃或者程序响应速度很慢时,这些日志将毫无用处.好在JVM提供了jstat.jstack.jinfo.jmap.jhat等工具帮助我们分析,更有VisualVM的可视化界面以更加直观的方式对JVM运行期的状况进行监控.此外,像Tomca…
Spark2.1.0——深入理解事件总线 概览 Spark程序在运行的过程中,Driver端的很多功能都依赖于事件的传递和处理,而事件总线在这中间发挥着至关重要的纽带作用.事件总线通过异步线程,提高了Driver执行的效率. Spark定义了一个特质[1]ListenerBus,可以接收事件并且将事件提交到对应事件的监听器.为了对ListenerBus有个直观的理解,我们先来看看它的代码实现,见代码清单1. 代码清单1        ListenerBus的定义 private[spark] t…
Spark2.1.0——内置RPC框架详解 在Spark中很多地方都涉及网络通信,比如Spark各个组件间的消息互通.用户文件与Jar包的上传.节点间的Shuffle过程.Block数据的复制与备份等.在Spark 0.x.x与Spark 1.x.x版本中,组件间的消息通信主要借助于Akka[1],使用Akka可以轻松的构建强有力的高并发与分布式应用.但是Akka在Spark 2.0.0版本中被移除了,Spark官网文档对此的描述为:“Akka的依赖被移除了,因此用户可以使用任何版本的Akka来…
在<Spark2.1.0——运行环境准备>一文介绍了如何准备基本的Spark运行环境,并在<Spark2.1.0——Spark初体验>一文通过在spark-shell中执行word count的过程,让读者了解到可以使用spark-shell提交Spark作业.现在读者应该很想知道spark-shell究竟做了什么呢? 脚本分析 在Spark安装目录的bin文件夹下可以找到spark-shell,其中有代码清单1-1所示的一段脚本. 代码清单1-1       spark-shel…
1.选取三台服务器(CentOS系统64位) 114.55.246.88 主节点 114.55.246.77 从节点 114.55.246.93 从节点 之后的操作如果是用普通用户操作的话也必须知道root用户的密码,因为有些操作是得用root用户操作.如果是用root用户操作的话就不存在以上问题. 我是用root用户操作的. 2.修改hosts文件 修改三台服务器的hosts文件. vi /etc/hosts 在原文件的基础最后面加上: 114.55.246.88 Master 114.55.…
一.依赖文件安装 1.1 JDK 参见博文:http://www.cnblogs.com/liugh/p/6623530.html 1.2 Hadoop 参见博文:http://www.cnblogs.com/liugh/p/6624872.html 1.3 Scala 参见博文:http://www.cnblogs.com/liugh/p/6624491.html 二.文件准备 2.1 文件名称 spark-2.1.0-bin-hadoop2.7.tgz 2.2 下载地址 http://spa…