MapReduce

kylin -- 快速入门概述

心不动则不痛 提交于 2020-08-11 23:47:43
1.快速入门概述 1.1 Kylin 定义 Apache Kylin 是一个开源的分布式 分析引擎 ,提供 Hadoop/Spark 之上的 SQL 查询接口 及多维分析(OLAP )能力以支持超大规数据,最初由 eBay Inc 开发并贡献至开源社区。 它能在亚秒内查询巨大的 Hive 表。 1.2 Kylin 特点 Kylin 的主要特点包括支持 SQL 接口、支持超大规模数据集、亚秒级响应、可伸缩性、高吞吐率、BI 工具集成等。 1 ) 标准 SQL 接口: Kylin 是以标准的 SQL 作为对外服务的接口。 2 ) 支持超大数据集: Kylin 对于大数据的支撑能力可能是目前所有技术中最为领先的。 早在 2015 年 eBay 的生产环境中就能支百 亿记录的秒级查询,之后在移动的应用场景中又有了千亿记录秒级查询的案例。 3 ) 亚秒级响应: Kylin 拥有优异的查询相应速度,这点得益于 预计算 ,很多复杂的计算,比如连接、聚合,在离线的预计算过程中就已经完成,这大大降低了查询时刻所需的计算量, 提高了响应速度。 4 ) 可伸缩性和高吞吐率: 单节点 Kylin 可实现每秒 70 个查询,还可以搭建 Kylin 的集群。 5 ) BI 工具集成 Kylin 可以与现有的 BI 工具集成,具体包括如下内容。 ODBC :与 Tableau 、 Excel 、 PowerBI

Python自动化运维:技术与最佳实践 PDF高清完整版|网盘下载内附地址提取码|

夙愿已清 提交于 2020-08-11 21:00:38
内容简介: 《Python自动化运维:技术与最佳实践》一书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵、深和实践角度探讨Python在运维领域应用的著作;一方面本书的作者是中国运维领域的“偶像级”人物,本书是他在天涯社区和腾讯近10年工作经验的结晶。因为作者实战经验丰富,所以能高屋建瓴、直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息、服务监控、数据报表、系统安全等基础模块,而且深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能。最重要的是,完整重现了4个来自实际生产环境的不同功能运维平台的综合案例,展示了完整的平台架构及开发流程。 全书一共16章:基础篇(1-4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;高级篇(5-12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;案例篇(13-16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造一个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C/S自动化运维平台,这4个案例均来自实际生产环境。

java大数据最全课程学习笔记(2)--Hadoop完全分布式运行模式

牧云@^-^@ 提交于 2020-08-11 00:38:48
目前 CSDN , 博客园 , 简书 同步发表中,更多精彩欢迎访问我的 gitee pages 目录 Hadoop完全分布式运行模式 步骤分析: 编写集群分发脚本xsync 集群配置 集群部署规划 配置集群 集群单点启动 SSH无密登陆配置 登录状态的环境变量 群起集群 集群启动/停止方式总结 集群时间同步 其他注意事项 Hadoop完全分布式运行模式 步骤分析: 准备3台客户机(关闭防火墙、静态ip、主机名称) vim /etc/sysconfig/network 三台机器各自的配置分别为HOSTNAME=hadoop101;HOSTNAME=hadoop102;HOSTNAME=hadoop103 vim /etc/hosts 三台机器都加入下面的映射关系 192.168.1.101 hadoop101 192.168.1.102 hadoop102 192.168.1.103 hadoop103 安装JDK 配置环境变量 安装Hadoop 配置环境变量 配置集群 单点启动 配置ssh 群起并测试集群 由于在 上一章节 已经配置好环境并测试了hadoop伪分布式开发模式,所以在此不再赘述. 编写集群分发脚本xsync scp(secure copy) 安全拷贝(全量复制) scp定义 scp可以实现服务器与服务器之间的数据拷贝.(from server1 to server2)

最小推荐系统:基于图拓扑的相似性描述SimRank

我怕爱的太早我们不能终老 提交于 2020-08-10 23:46:29
推荐系统的问题/任务描述有两种方式,一是 预测 ,也就是对于 用户-条目对 预测出用户的(喜好)评分值(比如上一篇提到的 隐语义模型 )。对于这种问题描述,通常假设训练数据是可得的,对于 个用户和 个条目的数据,也就是存在一个不完整的 矩阵,其已知部分(已有观测)用作训练,以预测未知部分(空白观测)。这样就把推荐问题转化为Matrix Completion Problem(矩阵补全问题). 第二个是 排序 ,在实际推荐系统中,我们做推荐没有必要得到用户对所推荐条目的准确喜好值,而只是需要推荐特定用户最可能喜好的top-k条目。而且对用户的top-k条目问题比对条目的top-k用户问题更常见,虽然这两个子问题是完全等价的。 做排序的方法中,可解释性最好的通常是基于 前篇 提到的邻域方法。因为它们都基于一个共同的强假设:在观测到用户消费过条目A之后,我们有很高的可能性观测到用户会喜欢与A相似的条目B以及相似的用户可能喜欢同一个条目。既然是描述相似性,我们可以认为物品A与物品B的相似性等价于物品B与物品A的相似性,也就是说,由包含物品A和B等组成的节点之间的相似性,构成无向图。按照定义 [1] , , 其中 是介于0到1之间的常量, 和 分别表示 和 的直接相连节点(in-link nodes)组成的集合, , . 当 时, ,否则 . 这个定义是递归定义,其对应的计算过程也是递归的

hadoop:伪分布模式参数配置指南!

此生再无相见时 提交于 2020-08-10 22:47:47
Hadoop通过改变其配置文件来更改运行模式,我们通过修改如下四个配置文件core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml即可让Hadoop以伪分布模式运行。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value的方式来实现。接下来让我们开始进行hadoop的配置吧,配置之前首先启动Ubuntu虚拟机,然后打开Xshell软件并连接登录虚拟机。 1、设置hadoop-env.sh配置文件 首先,我们需要修改hadoop运行相关的sh文件,以保证hadoop运行过程中能够正常使用其他软件或组件的功能,此处一般而言只需将JAVA功能添加在内既可。 cd ~/hadoop/etc/hadoop # 进入hadoop配置文件夹 vim hadoop-env.sh 在弹出的框体中输入i进入输入模式,此时可以编辑hadoop-env.sh了。 将JAVA路径写入到文件,只需修改 为如下代码 export JAVA_HOME=/usr/local/lib/jdk1.8 然后按Esc进入命令模式再输入:wq保存文件并退出。 注:后面编辑文件的操作有将不再反复赘述编辑器打开关闭过程,只对需要更改、编辑的内容进行说明。 2、配置core-site.xml文件 首先是core-site

hadoop:伪分布模式环境变量的配置 !

限于喜欢 提交于 2020-08-10 20:57:57
单节点集群模式(a Single Node Cluster)又称伪分布模式,只需一个节点即可运行。这种模式一般只是用来学习或者开发、测试使用。实际使用中还是使用多节点的分布式。 1、环境变量配置 为了方便的执行Hadoop程序,需要配置很多系统环境变量。主要有以下几个变量 设置HADOOP_HOME为Hadoop的安装路径 export HADOOP_HOME=/home/hduser/hadoop 设置将hadoop添加到PATH,上文中已经介绍过hadoop的运行文件在bin和sbin目录下,通过设置PATH后,我们可以在任何位置执行hadoop命令。 export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin 设置hadoop其他环境变量 export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME 链接库的相关设置 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME export HADOOP_OPTS=”-Djava.library.path=$HADOOP_HOME

Hadoop优化

人盡茶涼 提交于 2020-08-10 18:02:24
Hadoop优化 主要内容: ① MapReduce跑得慢的原因 ② MapReduce/Hadoop优化方法 MapReduce 优化方法主要从 六个方面考虑 : 数据输入、 Map 阶段、 Reduce 阶段、 IO 传输、数据倾斜问题和常用的调优参数。 ( 6 条 -10 条) 1)数据输入 合并小文件:在执行MR任务前将小文件进行合并,大量的小文件会产生大量的Map任务,增大Map任务装载次数,而任务的装载比较费时,导致MR变慢; 采用 ConbinFileInputFormat 来作为输入,解决输入端大量小文件场景; 2)map阶段 增大环形缓冲区大小。由 100m 扩大到 200m ; 增大环形缓冲区溢写的比例。由 80%扩大到 90% ; 减少对溢写文件的 merge 次数 ; 不影响实际业务的前提下,采用 combiner 提前合并,减少 I/O ; 3) reduce阶段 合理设置 map 和 reduce 数:两个都不能设置太少,也不能设置太多。太少,会 导致 task 等待,延长处理时间;太多,会导致 map、reduce 任务间竞争资源,造成 处理超时等错误 ; 设置 map、reduce 共存:调整 slowstart.completedmaps 参数,使 map 运行到一定程度后,reduce 也开始运行,减少 reduce 的等待时间; 规避使用

Spark之Shuffle总结

此生再无相见时 提交于 2020-08-10 15:55:39
Shuffle概念 shuffle,是一种多对多的依赖关系,即每个Reduce Task从每个Map Task产生数的据中读取一片数据,极限情况下可能触发M*R个数据拷贝通道(M是Map Task数目,R是Reduce Task数目)。 Shuffle描述着数据从map task输出到reduce task输入的这段过程。shuffle是连接Map和Reduce之间的桥梁,Map的输出要到Reduce中必须经过shuffle这个环节,shuffle的性能高低直接影响了整个程序的性能和吞吐量。 因为在分布式情况下,reduce task需要跨节点去拉取其它节点上的map task结果。这一过程将会产生网络资源消耗和内存,磁盘IO的消耗。 通常shuffle分为两部分: Map阶段的数据准备和Reduce阶段的数据拷贝处理。 一般将在map端的Shuffle称之为 Shuffle Write ; 在Reduce端的Shuffle称之为 Shuffle Read 。 Spark 的 Shuffle 过程与 MapReduce 的 Shuffle 过程有着诸多类似,一些概念可直接套用,例如,Shuffle 过程中, 提供数据的一端,被称作 Map 端,Map 端每个生成数据的任务称为 Mapper;对应的, 接收数据的一端,被称作 Reduce 端,Reduce 端每个拉取数据的任务称为

通过腾讯云 Serverless Regsitry 快速开发与部署一个 WordCount 实例

北战南征 提交于 2020-08-10 14:02:24
在学习 MapReduce 的过程中,不少人接触的第一个项目就是单词计数。单词计数通过两个函数 Map 和 Reduce,可以快速地统计出文本文件中每个单词出现的个数,它虽然简单,但也是最能体现 MapReduce 思想的程序之一。而 Serverless 的出现,为 MapReduce 进行大数据处理又提供了一个新的部署方案,Serverless 与 MapReduce 究竟如何结合呢? 本文将通过一个简单的教程,指导大家快速开发一个基于 MapReduce 的 WordCount 应用模版,并在 Serverless 应用中心 Registry 里实现复用。 前提条件 已安装 Serverless Framework ,并保证您的 Serverless Framework 不低于以下版本: $ serverless –v Framework Core: 1.74.1 (standalone) Plugin: 3.6.14 SDK: 2.3.1 Components: 2.31.6 实现概要 下面是该实例的实现流程: 创建函数与 COS Bucket。 用户将对象上传到 COS 中的源存储桶(对象创建事件)。 COS Bucket检测到对象创建事件。 COS 调用函数并将事件数据作为参数传递给函数,由此将 cos:ObjectCreated:* 事件发布给函数。 SCF

想了解大数据的鼻祖Hadoop技术栈,这里有一份优质书单推荐!

╄→гoц情女王★ 提交于 2020-08-10 12:52:37
​ 如何用形象的比喻描述大数据的技术生态?Hadoop、Hive、Spark 之间是什么关系?对于大部分人来说都是傻傻分不清楚。 今年来大数据、人工智能获得了IT界大量的关注。如果一个企业不玩大数据,都不好意思说自己是在IT圈混的。我敢打赌,你在中关村西二旗地铁站溜一圈,保准你会听到如下名词:Hadoop、Spark、MapReduce、NoSQL、离线计算、实时计算、实时推送等等一大串名称。 程序猿们就是有这么实在,坐在地铁上还能那么投入的讨论技术问题。那么,这些听起来高大上的技术,究竟都是干什么用的呢?他们之间的有什么区别和联系? 通常,一个技术的兴起,都是由现实需求驱动的。了解了我们面临的问题,就能更好的理解各个大数据技术的使用场景,各类大数据技术的区别也就显而易见了。 今天这一份书单,我们就将从Hadoop生态圈开始入手,推荐几本关于Hadoop生态圈的优质书籍! Hadoop技术栈系列书单 ​ Hadoop权威指南:大数据的存储与分析(第4版) 本书结合理论和实践,由浅入深,全方位介绍了Hadoop这一高性能的海量数据处理和分析平台。 全书5部分24章,第Ⅰ部分介绍Hadoop基础知识,主题涉及Hadoop、MapReduce、Hadoop分布式文件系统、YARN、Hadoop的I/O操作。第Ⅱ部分介绍MapReduce,主题包括MapReduce应用开发