
大数据
文章平均质量分 92
CoderBoom
on the way
展开
-
推荐系统-经典协同过滤算法【基于记忆的协同过滤算法、基于模型的协同过滤算法】
推荐系统-经典协同过滤理论基础实践1.协同过滤推荐方法CF简介协同过滤CF基于记忆的协同过滤 ---- 用户和物品的相似度矩阵用户相似度的推荐物品相似度推荐UserCF用户协同过滤算法ItemCF物品的协同过滤推荐算法基于模型的协同过滤 ---- 隐因子LFM(latent fator machine)隐藏因子的分解模型-----矩阵分解(将一个矩阵分解成连个矩阵的乘...原创 2019-01-15 22:31:27 · 9336 阅读 · 0 评论 -
storm_入门02学习笔记----【storm原理、storm整个hdfs和mysql、storm定时器使用、日志监控告警项目的流程和业务处理逻辑】
storm_入门02学习笔记1、目标1、掌握storm任务提交和执行过程2、掌握storm整合hdfs和mysql3、掌握storm定时器使用4、掌握日志监控告警项目的流程和业务处理逻辑2、storm内部原理和任务提交(1)客户端提交topology到nimbus主节点(2)nimbus主节点接受到客户端的任务信息,然后保存到本地目录,后期把任务的分配信息写入到zk集群中...原创 2018-12-14 21:23:32 · 640 阅读 · 0 评论 -
storm_入门01学习笔记----【storm集群搭建、一键脚本启动关闭storm、storm与kafka整合】
storm_day01学习笔记1、目标1、熟悉storm的相关概念2、掌握搭建一个storm集群3、掌握编写简单的storm应用程序4、掌握storm的并行度设置5、掌握storm的数据分发策略6、掌握storm与kafka整合2、storm概述2.1 storm是什么storm是由twitter公司开源,捐献apache基金会,是一个实时处理框架。storm特点:来一条...原创 2018-12-12 22:02:26 · 1878 阅读 · 0 评论 -
Hbase入门----【hbase内部原理和架构(★★★★★)、掌握hbase的寻址机制(★★★★★)、hbase表中的rowkey设计(★★★★★★★)】
hbase入门学习笔记1、目标1、掌握hbase相关概念2、掌握搭建一个hbase集群3、掌握hbase shell 命令行操作4、掌握hbase内部原理和架构(★★★★★)5、掌握hbase的寻址机制(★★★★★)6、掌握hbase表中的rowkey设计(★★★★★★★)2、hbase概述2.1 hbase是什么 hbase是基于hdfs进行数据的分布式存储,具有高可...原创 2018-12-09 21:44:05 · 909 阅读 · 0 评论 -
大数据实时阶段----【Spark04之sparkStreaming整合flume、sparkStreaming整合kafka (★★★★★)】
typora-copy-images-to: img_spark04typora-root-url: img_spark04spark_入门04学习笔记1、目标1、掌握sparkStreaming原理和架构2、掌握DStream常用的操作3、掌握sparkStreaming整合flume4、掌握sparkStreaming整合kafka (★★★★★)2、sparkStrea...原创 2018-12-07 16:40:07 · 638 阅读 · 0 评论 -
kafka入门
kafka入门学习笔记1、目标1、掌握kafka相关概念2、掌握搭建一个kafka集群3、掌握kafka生产者和消费者代码开发4、掌握kafka的分区策略5、掌握kafka整合flume6、掌握kafka如何保证消息不丢失2、kafka概述2.1 kafka是什么kafka是由linkedin开源,捐献apache基金会,它是一个实时的分布式消息队列。它提供了一个对于实时...原创 2018-12-06 22:48:13 · 754 阅读 · 0 评论 -
kafka_Manager监控工具的安装与作用
kafka Manager监控工具的安装与使用第一步:上传kafkaManager的压缩包将我们kafkaManager的压缩包上传到我们kafka集群的任意一台机器即可第二步:修改kafkaManager的配置文件vim application.conf更改一配置文件 kafka-manager.zkhosts,修改为我们的zookeeper的地址即可kafka-manager....原创 2018-12-05 23:09:02 · 1327 阅读 · 0 评论 -
kafka的文件存储机制
kafka的文件存储机制1、概述同一个topic下有多个不同的partition,每个partition为一个目录,partition命名的规则是topic的名称加上一个序号,序号从0开始。每一个partition目录下的文件被平均切割成大小相等(默认一个文件是1G,可以手动去设置)的数据文件,每一个数据文件都被称为一个段(segment file),但每个段消息数量不一定相等,这种...原创 2018-12-05 23:02:42 · 1317 阅读 · 0 评论 -
kafka为什么那么快
Kafka为什么那么快Broker 不同于Redis和MemcacheQ等内存消息队列,Kafka的设计是把所有的Message都要写入速度低容量大的硬盘,以此来换取更强的存储能力。实际上,Kafka使用硬盘并没有带来过多的性能损失,“规规矩矩”的抄了一条“近道”。 首先,说“规规矩矩”是因为Kafka在磁盘上只做Sequence I/O,由于消息系统读写的特殊性,这并不存在什么问题。关...原创 2018-12-05 22:58:22 · 333 阅读 · 0 评论 -
Spark----【spark on yarn】
Spark on Yarn1. 官方文档http://spark.apache.org/docs/latest/running-on-yarn.html2. 配置安装1.安装hadoop:需要安装HDFS模块和YARN模块,HDFS必须安装,spark运行时要把jar包存放到HDFS上。2.安装Spark:解压Spark安装程序到一台服务器上,修改spark-env.sh配置文件,spa...原创 2018-12-04 23:15:40 · 280 阅读 · 0 评论 -
大数据实时阶段----【Spark03之dataFrame、dataSet、schema】
spark_入门03学习笔记1、目标1、掌握sparksql底层原理2、掌握DataFrame和DataSet数据结构和使用方式3、掌握通过sparksql来进行代码开发2、sparksql概述2.1 sparksql前世今生shark它是专门为spark设计的大规模数据仓库系统shark依赖于hive的代码,同时也依赖spark版本后期发现hive的mapre...原创 2018-12-04 17:46:24 · 1414 阅读 · 0 评论 -
大数据实时阶段----【Spark02之ip地址查询、topN、PV、UV实战】
spark02_学习笔记1、目标1、掌握RDD的底层原理2、掌握RDD的常用的算子操作3、掌握RDD的宽窄依赖4、掌握RDD的缓存机制5、掌握划分stage6、掌握spark任务运行架构和调度流程2、RDD概述2.1 什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区...原创 2018-12-03 21:39:53 · 1213 阅读 · 0 评论 -
sparkRDD函数详解
1. RDD操作详解启动spark-shellspark-shell --master spark://node-1:70771.1 基本转换1) map map是对RDD中的每个元素都执行一个指定的函数来产生一个新的RDD。 任何原RDD中的元素在新RDD中都有且只有一个元素与之对应。举例:scala> val a = sc.parallelize(1 to 9, 3)...原创 2018-12-02 22:56:17 · 850 阅读 · 0 评论 -
大数据实时阶段----【Spark01】
spark_01学习笔记1、目标1、掌握spark相关概念2、掌握搭建一个spark集群3、掌握编写简单的spark应用程序2、spark概述2.1 什么是sparkApache Spark™ is a unified analytics engine for large-scale data processing.apache的spark是一个针对于大规模...原创 2018-12-01 16:50:32 · 637 阅读 · 0 评论 -
scala编程实战----【使用Akka实现两个进行间的通信、简易版spark框架】
目标 : 使用 Akka 实现一个简易版的 spark 通信框架项目概述1. 需求 目前大多数的分布式架构底层通信都是通过 RPC 实现的,RPC 框架非常多,比如前我们学过的 Hadoop 项目的 RPC 通信框架,但是 Hadoop 在设计之初就是为了运行长达数小时的批量而设计的,在某些极端的情况下,任务提交的延迟很高,所以 Hadoop 的 RPC 显得有些笨重。 Spark ...原创 2018-11-29 22:44:35 · 734 阅读 · 2 评论 -
Scala高级特性
Scala高级特性1. 高阶函数Scala 混合了面向对象和函数式的特性,我们通常将可以作为参数传递到方法中的表达式叫做函数。高阶函数包含:作为值的函数、匿名函数、闭包、柯里化等等。1.1 作为值的函数 可以像任何其他数据类型一样被传递和操作的函数,每当你想要给算法传入具体动作时这个特性就会变得非常有用。即函数作为值传递到方法中定义函数式格式 : val 变量名=(输入参数类型和个数...原创 2018-11-29 22:38:41 · 433 阅读 · 0 评论 -
Scala实战案例---单词计数
Scala Actor并发编程[注] :Scala Actor是scala 2.10.x版本及以前版本的Actor。Scala在2.11.x版本中将Akka加入其中,作为其默认的Actor,老版本的Actor已经废弃。1 . 什么是Scala ActorScala中的Actor能够实现并行编程的强大功能,它是基于事件模型的并发机制,Scala是运用消息的发送、接收来实现高并发的。2. Ja...原创 2018-11-28 19:06:14 · 2069 阅读 · 0 评论 -
Scala入门(下)----【类、对象、继承、特质(trait)、模式匹配、样式类、Option类型、偏函数、协变、逆变、非变、上下界】
1. 类、对象、继承、特质1.1 类类的定义/*** 在Scala中,类并不用声明为public类型的。* Scala源文件中可以包含多个类,所有这些类都具有共有可见性。*/class Person { //用val修饰的变量是可读属性,有getter但没有setter(相当与Java中用final修饰的变量) val id="9527" //用var修饰的变量都既...原创 2018-11-28 14:55:41 · 464 阅读 · 0 评论 -
大数据----【Scala入门(上)】
Scala1. Scala概述1.1 什么是scala Scala是一种多范式的编程语言 , 其设计的初衷是要集成面向对象编程和函数式编程的各种特性 . Scala运行于Java平台(Java虚拟机) , 并兼容现有的Java程序 . 详情查看官网http://www.scala-lang.org1.2 为什么要学Scala优雅速度快 : 表达能力强 ,一行代码抵得上Java多行...原创 2018-11-27 21:13:10 · 908 阅读 · 0 评论 -
MapReduce&Yarn增强
1. MapReduce并行度机制详解maptask并行度机制 : 逻辑规划 (逻辑切片)时间 : 客户端提交mr程序之前 main(客户端) , job.submit()地点 : 客户端参与者 : 待处理数据目录 FileInputFormat.getSplits()规则 : 对待处理目录下逐个遍历文件 , 以切片大小对文件进行逻辑规划 split size == bl...原创 2018-11-25 22:49:55 · 270 阅读 · 0 评论 -
网站日志流量系统----【结果输出模块】
模块开发----结果导出1. Apache SqoopSqoop 是Hadoop 和关系数据库服务器之间传送数据的一种工具 .Sqoop:“SQL 到 Hadoop 和 Hadoop 到 SQL导入导出是站在Apache的角度来说的Sqoop工作机制是将导入或导出命令翻译成mapreduce程序来实现。在翻译出的 mapreduce 中主要是对 inputformat 和 outpu...原创 2018-11-25 17:52:06 · 463 阅读 · 0 评论 -
网站日志流量系统----【统计分析模块】
模块开发----统计分析每一种统计指标都可以跟各维度表进行钻取。分组条件判别技巧如果需求中出现 每xxx 各xxx 按xxx , 很大可能就是分组的字段条件设置智能本地模式 : set hive.exec.mode.local.auto=true;1. 流量分析1.1 多维度统计pv总量需求 : 计算该处理批次(一天)中各小时pvs处理数据所在的表 : ods_we...原创 2018-11-24 21:45:24 · 2287 阅读 · 0 评论 -
网站流量日志系统----【ETL模块 、数据表创建、数据导入、宽表等模块】
1. 模块开发----数据仓库设计1.1 维度建模基本概念维度建模是专门用于分析型数据库、数据仓库、数据集市建模的方法 .专门适用于OLAP的设计模式存在着两种类型的表:事实表 维度表维度表(dimension) : 看问题分析问题的角度 信息精但是不全 可跟事实表关系事实表:主题的客观度量 能够以记录主题为准 信息多不精准事实表的设计是以能够正确记录历史信息为准则,维...原创 2018-11-22 18:04:15 · 1753 阅读 · 0 评论 -
网站日志流量系统----【数据采集模块、数据预处理模块】
1. 模块开发----数据采集1.1 需求在网站 web 流量日志分析这种场景中,对数据采集部分的可靠性、容错能力要求通常不会非常严苛,因此使用通用的 flume 日志采集框架完全可以满足需求。1. 2 Flume 日志采集系统1.2.1 Flume 采集Flume 采集系统的搭建相对简单:1、在服务器上部署 agent 节点,修改配置文件2、启动 agent 节点,将采集到的数据汇...原创 2018-11-22 17:59:27 · 2763 阅读 · 1 评论 -
SQL增强
SQL增强需求 : 统计今天每个小时分别有多个pv分组字段 : 天 小时 天恰好就是分区字段 通过分区字段即可过滤出 真正的分子字段就一个 hour编写sql的思路 :首先明确开始关键字 , 如select其次我们先跳过需要查询的东西 , 去关注查询的来源 , 即from , 若后面接的是一个真实存在的表 , 则直接写 , 若不是真实存在的 , 也是通过另外方式...原创 2018-11-22 17:53:22 · 1062 阅读 · 0 评论 -
大数据----【azkaban的部署及实战测试】
工作流程调度器1. 工作流程调度系统产生背景一个完整的数据分析系统通常都是由大量任务单元组成 : shell脚本程序 , java程序 , MapReduce程序 , hive脚本等各个任务单元之间存在时间先后依赖关系为了更好地组织起这样的复杂执行计划 , 需要一个工作流程调度系统来调度执行2. 工作流程调度实现方式简单的任务调度 : 直接使用linux的crontab来定义 ...原创 2018-11-22 17:51:49 · 1082 阅读 · 0 评论 -
网站流量日志系统知识详解----【点击流事件详解】
网站流量日志数据分析系统知识详解1. 点击流数据模型1.1 点击流概念点击流(Click Stream)是指用户在网站上持续访问的轨迹。可以通过对网站日志的分析可以获得用户的点击流数据。1.2 点击流模型生成点击流数据在具体操作上是由散点状的点击日志数据梳理所得。点击数据在数据建模时存在两张模型表 Pageviews和 visits,例如:原始访问日志表时间戳IPURL...原创 2018-11-21 23:18:28 · 3162 阅读 · 1 评论 -
Hive----【DML操作 、对数据表的查操作】
Hive–DML操作1. Load加载操作时间数据文件移动到与Hive表对应的位置的出复制/移动操作.语法结构 :load data [local] inpath 'filepath' [overwrite] into table tablename [partition (partcol1=val1, partcol2=val2 ...)]**说明 : **filepath :...原创 2018-11-20 23:24:06 · 649 阅读 · 0 评论 -
Hive----【DDL操作、对数据表的操作】
Hive–DDL基本操作Hive中错误分类 :Error while compiling statement hive编译器错误 sql语法问题Error while processing statement hive执行期错误 应用逻辑上的问题1. DDL操作1.1 创建表建表语法create [external] table [if not exists(判断有无表)] ...原创 2018-11-20 23:22:12 · 761 阅读 · 0 评论 -
大数据----【Flume、常用组件、load-balance、failover、日志采集汇总、Flume中小文件频繁滚动注意事项】
Flume1 概述Flume 是 Cloudera 提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的软件。Flume核心 :数据源(source)目的地(sink)数据传输通道(channel)Flume版本 :FlumeOG(0.9X版本的统称) , 老版本FlumeNG(1.X版本的统称) , 该版本常用2 . 运行机制Flume 系统中核心的角色...原创 2018-11-19 21:14:52 · 1021 阅读 · 0 评论 -
大数据----【Hadoop集群搭建及Hadoop基础知识及测试】
1. Hadoop基础1.1 Hadoop介绍 Hadoop是 Apache 旗下的一个用 java 语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。狭义上 : Hadoop是处理大数据的软件平台HDFS(分布式文件系统) : 解决海量数据存储YARN(作业调度和集群资源管理的框架) : 解决资源任...原创 2018-11-19 00:00:28 · 444 阅读 · 0 评论 -
Hive安装
Hive 安装部署首先需要先安装好JDK和Hadoop , 配置好环境变量 , 由于我们是在实际工作中使用Hive , 因此我们需要配置mysql版本 .安装Mysqlyum安装mysqlyum install mysql mysql-server mysql-devel完成后 , 用/etc/init.d/mysqld start 启动mysql启动mysql控制台:(首次登陆是没...原创 2018-11-18 23:54:25 · 585 阅读 · 0 评论 -
大数据----【Hive入门】
Hive入门1. 多彩缤纷的数据源由上图可以看出数据的来源有很多.业务系统数据 : 获取方式容易 , 成本低通过接口调用获取数据库dump获取爬虫数据 :爬虫 : 是按照一定的规则 , 自动的抓取万维网信息的脚本或者程序…2 . 数据的管理2.1 数据文件管理由于数据种类的越来越多 , 数据量的越来越大 , 企业中数据跨部门的存储和调用都推动了数据文件管理的...原创 2018-11-18 23:52:49 · 357 阅读 · 0 评论 -
MapReduce(深入)---案例之用户上行流量 下行流量 总流量倒序 按省份分区
1. MapReduce的输入和输出MapReduce执行流程图详细图解如下maptask通过自带的TextInputFormat将数据按照一行一行的读取 , 用每一行的起始偏移量作为k , 每行的内容作为value构成<k1,v1>键值对 , 在map中经过业务逻辑 , 对数据进行的"分" , 形成新的键值对<k2,v2>传递给reduce ; reduce...原创 2018-11-17 22:49:00 · 1343 阅读 · 0 评论 -
大数据----【Hadoop基础知识、Shell定时采集数据】
1. NameNode概述NameNode是HDFS的核心NameNode也称为MasterNameNode仅存储HDFS的元数据 : 文件系统中所有文件的目录树 , 并跟踪整个集群的文件NameNode不存储实际数据或数据集 , 数据本身实际存储在DataNode中NameNode知道任何文件的快列表及其位置NameNode并不持久化存储每个文件中各个块所在的datanode的位置...原创 2018-11-15 23:19:18 · 825 阅读 · 0 评论 -
HDFS----【文件的上传即下载流程详解】
HDFS上传文件流程文件上传流程图如下 :首先 , HDFS选用的是每启动一个线程 , 就传递一个块 , 然后接收到第一个块后的机器复制给其他机器 .首先我们知道namenode的职责 :管理整个文件系统的元数据 ( 目录树 文件和块对应信息 , dn信息)响应整个客户端的所有请求 hdfs://node-1:9000上传文件的流程首先hdfs客户端通过RPC调用向nn发...原创 2018-11-15 23:14:25 · 3679 阅读 · 0 评论 -
大数据----【HDFS】
HDFS入门1. HDFS基本概念1.1 HDFS介绍HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统。分布式文件系统解决的问题就是大数据存储。1.2 HDFS设计目标硬件故障是常态 , 因此故障的检测和自动快速恢复是HDFS的黑心架构目标数据访问的高吞吐量支持大文件对文件的要求是 write-one-read...原创 2018-11-15 23:10:57 · 258 阅读 · 0 评论 -
大数据----【MapReduce】
MapReduce入门1. MapReduce计算模型介绍1.1 MapReduce思想MapReduce的思想核心是分而治之 , 适用于大量复杂的任务处理场景(大规模数据处理场景) .没有依赖关系 可以拆分的复杂任务适用之。分 局部处理阶段合 全局汇总阶段Map负责"分" , 将没有依赖关系的数据进行适当的拆分 , 并行计算Reduce负责"合" , 即对map阶段的结果...原创 2018-11-15 23:01:06 · 303 阅读 · 0 评论 -
Hadoop----【基础知识、集群安装、常用Shell命令】
1. Hadoop基础1.1 Hadoop介绍 Hadoop是 Apache 旗下的一个用 java 语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。狭义上 : Hadoop是处理大数据的软件平台HDFS(分布式文件系统) : 解决海量数据存储YARN(作业调度和集群资源管理的框架) : 解决资源任...原创 2018-11-14 22:48:44 · 325 阅读 · 0 评论 -
大数据离线----【网站流量日志数据--自定义】
1. 原理分析分析 :在采集数据的网页上进行埋点(在网页中预先加入小段 javascript 代码) , 编写采集数据的js(该js一般再用一个服务器去存储 , 为的就是解耦合 , 便于修改)通过img标签的src属性解决跨域问题&lt;img src="http://collection.itcast.cn/log.gif?name=allen&amp;item=001"&gt...原创 2018-11-12 22:47:46 · 1520 阅读 · 0 评论