大数据
文章平均质量分 78
xipenfei
这个作者很懒,什么都没留下…
展开
-
Spark打包插件解析
今天在做Spark代码打包的时候,遇到了个异常。内容是使用build打包,可以正常执行scala目录下的对应文件,但是导入了maven的pom打包插件,打包后的文件一直报找不到主类。原来是没有导入scala打包插件,为了更加了解插件文件,打包插件解析<build> <plugins> <!--指定maven打包使用的jdk版本,...原创 2020-04-16 09:36:11 · 951 阅读 · 0 评论 -
Spark学习(九)---Spark streaming常用演示
这次我们演示使用使用SparkStreaming对不同数据流读取的简单操作,以单词统计为例接受socket数据,实现单词计数和实现累加使用开窗函数统计时间段内的热词语1. 实现单词计数WordCount1. 1架构1.2 实现流程(1)安装并启动生产者首先在linux服务器上用YUM安装nc工具,nc命令是netcat命令的简称,它是用来设置路由器。我们可以利用它向某个端口发...原创 2018-10-22 23:47:17 · 240 阅读 · 0 评论 -
Scala入门第十篇--隐式转换和隐式参数
这次我们介绍隐式转换和隐式参数,会做简单的代码示例对于概念看不懂的童鞋,可以先去看看代码的示例隐式转换概念引入在讲述之前我们先引入一个例子scala> 1 to 10res9: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)scala> 1.to(10)...原创 2018-10-17 12:45:25 · 275 阅读 · 2 评论 -
Scala入门第九篇--高阶函数
这次我们介绍Scala的高阶函数高阶函数的概念Scala混合了面向对象和函数式的特性,我们通常将可以作为参数传递到方法中的表达式叫做函数。在函数式编程语言中,函数是“头等公民”,高阶函数我们主要介绍:作为值的函数匿名函数柯里化闭包作为值的函数可以像任何其他数据类型一样被传递和操作的函数,每当你想要给算法传入具体动作时这个特性就会变得非常有用。//给一个数组scala>...原创 2018-10-17 12:32:35 · 167 阅读 · 0 评论 -
Spark学习(三)---RDD原理和API
本次我们介绍RDD的原理和基本的APRDD原理RDD的API1. RDD原理1.1 什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集。是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。RDD具有数据流模型的特点:自动容错、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显式地将数据缓...原创 2018-10-20 00:06:08 · 292 阅读 · 0 评论 -
Scala入门第八篇--Scala Actor并发编程
本次主要介绍Scala Actor并发编程的基本概念和入门下案例基本概念Scala中的Actor能够实现并行编程的强大功能,它是基于事件模型的并发机制,Scala是运用消息的发送、接收来实现高并发的。Actor可以看作是一个个独立的实体,他们之间是毫无关联的。但是,他们可以通过消息来通信。一个Actor收到其他Actor的信息后,它可以根据需要作出各种相应。消息的类型可以是任意的,消息的内...原创 2018-10-16 23:46:53 · 480 阅读 · 0 评论 -
Scala入门第七篇--变化和上下界
本次主要介绍Scala中的协变,逆变,非变和上下界Scala中的协变、逆变、非变协变和逆变主要是用来解决参数化类型的泛化问题。Scala的协变与逆变是非常有特色的,完全解决了Java中泛型的一大缺憾;举例来说,Java中,如果有 A是 B的子类,但 Card[A] 却不是 Card[B] 的子类;而 Scala 中,只要灵活使用协变与逆变,就可以解决此类 Java 泛型问题;由于参数化类型...原创 2018-10-16 22:42:03 · 311 阅读 · 0 评论 -
Scala入门第六篇--匹配模式和样例类
这次我们介绍Scala中的:匹配模式样例类匹配模式Scala有一个十分强大的模式匹配机制,可以应用到很多场合:如switch语句、类型检查等。并且Scala还提供了样例类,对模式匹配进行了优化,可以快速进行匹配。匹配字符串import scala.util.Randomobject CaseDemo01 extends App{ val arr = Array(&quot;had...原创 2018-10-16 21:38:34 · 177 阅读 · 0 评论 -
大数据存储---HBase架构原理介绍(下)
这次我们主要介绍HBase的架构和原理组件介绍读写流程介绍路由查询组件介绍HBase的架构介绍图Client①使用HBase RPC机制与HMaster和HRegionServer进行通信;②Client与HMaster进行通信进行管理类操作;③Client与HRegionServer进行数据读写类操作。Zookeeper①保证任何时候,集群中只有一个runni...原创 2018-10-09 23:49:28 · 629 阅读 · 0 评论 -
Scala入门第五篇--接口(trait)
这次我们介绍trait接口概念Scala中的trait是一种特殊的概念;首先先将trait作为接口使用,此时的trait就与Java中的接口 (interface)非常类似;在trait中可以定义抽象方法,就像抽象类中的抽象方法一样,只要不给出方法的方法体即可;类可以使用extends关键字继承trait,注意,这里不是 implement,而是extends ,在Scala中没有 ...原创 2018-10-16 15:58:58 · 1118 阅读 · 0 评论 -
Scala入门第四篇--继承
本次介绍Scala中面向对象的继承继承的概念Scala 中,让子类继承父类,与 Java 一样,也是使用 extends 关键字;继承就代表,子类可继承父类的 field 和 method ,然后子类还可以在自己的内部实现父类没有的,子类特有的 field 和method,使用继承可以有效复用代码;子类可以覆盖父类的 field 和 method,但是如果父类用 final 修饰,或者...原创 2018-10-16 15:19:40 · 184 阅读 · 0 评论 -
大数据存储---HBase常用介绍(中)
我们这里主要介绍HBase的API基础API封装工具类基础API创建表添加数据查询数据的三种方式扫描查询get方式执行查询过滤查询PS:删除表请通过shell命令进入客户端删除。package com.hbase;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hb...原创 2018-10-09 21:05:32 · 270 阅读 · 0 评论 -
Scala入门第三篇-类和对象
本次介绍Scala编程的类和对象类的定义构造器Object伴生对象apply方法main方法Scala中的类类的定义/*** 在Scala中,类并不用声明为public类型的。* Scala源文件中可以包含多个类,所有这些类都具有共有可见性。*/class Person { //用val修饰的变量是可读属性,有getter但没有setter(相当与Java中用f...原创 2018-10-16 11:05:20 · 173 阅读 · 0 评论 -
Spark学习(八)---Spark streaming原理
这次我们介绍spark streaming,今天主要是原理和相关的操作Spark Streaming概念介绍Spark Streaming的相关操作1. Spark Streaming概念1.1什么是Spark StreamingSpark Streaming类似于Apache Storm,用于流式数据的处理。根据其官方文档介绍,Spark Streaming有高吞吐量和容错能力强...原创 2018-10-22 12:24:14 · 603 阅读 · 0 评论 -
Scala入门第十一篇--Akka实现简易版的spark通信框架
本次我们介绍使用Akka实现简易的Spark通信框架,主要分为:Akka简介提出需求需求分析代码示例Akka简介Akka基于Actor模型,提供了一个用于构建可扩展的(Scalable)、弹性的(Resilient)、快速响应的(Responsive)应用程序的平台。Actor模型在计算机科学领域,Actor模型是一个并行计算(Concurrent Computation)...原创 2018-10-17 19:39:39 · 660 阅读 · 0 评论 -
百度坐标转换火星坐标UDF
今天介绍一个坐标转换的udf,包括java代码的编写的udf函数的创建1. 编写Java代码打开IDEA,创建项目,导入pom文件,见下面,在Java目录下创建udf的包,编写GPSConverter类 <properties> <hadoop.version>2.6.0-cdh5.13.1</hadoop.version> ...原创 2019-07-22 11:49:51 · 431 阅读 · 0 评论 -
读书笔记——阿里数据中台(第二篇:OneData体系2)
今天介绍OneData体系的第二部分,这部分主要的内容是从成本中心向资源中心转变的一个过程。这个过程的主要内容是有元数据做底层构建的。核心思想是将存储和计算成本与数据的价值挂钩,形成数据资产的概念。简单的理解可以使价值/成本。本章的介绍方式还是先讲问题,再讲方法。本人公司也是在业务发展速度较快期,数据成本问题非常突出。那么开始本次介绍1. 数据成本的深渊首先介绍的是因为数据公共层建设不完善导致...原创 2019-07-25 21:47:15 · 3641 阅读 · 2 评论 -
Hive的UDF编程之GenericUDF编程
Hive编程指南的GenericUDF,GenericUD可以接受负责数据类型的数据参数输入,这里我们使用的是输入数组,判断数组中是否包含某个值原创 2019-07-24 17:36:46 · 1614 阅读 · 1 评论 -
读书笔记——阿里数据中台(第二篇:OneData体系1)
今天来介绍数据中台的第二篇,第二篇共分为三个大部分分别对应的是阿里的数据中台三大体系(阿里的数据中台体系架构见上一篇),OneData体系,OneEntity体系,OneService体系,三大体系相辅相成、相互依赖,OneData体系为基础。这次我们把OneData体系分为两部分介绍,因为OneData体系包括数据模型设计和数据资产管理两部分,今天我们介绍OneData的数据模型篇章。1. 烟...原创 2019-07-19 20:21:07 · 7541 阅读 · 2 评论 -
读书笔记——阿里数据中台(第一篇:数据中台顶层设计)
最近在读阿里数据中台的书,因为要在组内做分享,就多度了几遍。与阿里大数据实践之路配合,基本可以看到阿里建设数据中台的过程,和一些技术细节。做一件有价值的事情就是把自己觉得好的东西分享出来,那么开始内容(1)大数据的发展历程和价值探索大数据的发展文章开篇是一段作者建设数据中台过程的心路历程,下来就是老套路,介绍了国内外大数据发展的历程与大数据的价值探索,这里做简单的介绍。两个重要的节点需要...原创 2019-07-09 17:39:14 · 18423 阅读 · 6 评论 -
Spark学习(七)---编程操作SparkSQL和关系型数据库读写
这次我们介绍以编程的方式进行sparkSQL的查询和关系型数据库读写,主要有通过反射推断Schema通过StructType指定Schema使用SparkSQL编程操作HiveQLSparkSQL读取数据库文件Spark向关系数据库写入1. 编程操作SparkSQL前面我们学习了如何在Spark Shell中使用SQL完成查询,现在我们通过IDEA编写Spark SQL查询程序...原创 2018-10-21 14:38:43 · 2256 阅读 · 1 评论 -
Spark学习(六)---SparkSQL介绍
这次我们学习SaprkSQL,主要分三个部分Spark SQL的原理DataFrame数据结构和使用方式DataSet数据结构和使用方式1. Spark SQL1.1 Spark SQL历史Shark是一个为Spark设计的大规模数据仓库系统,它与Hive兼容。Shark建立在Hive的代码基础上,并通过将Hive的部分物理执行计划交换出来。这个方法使得Shark的用户可以加速H...原创 2018-10-21 10:28:59 · 517 阅读 · 0 评论 -
Spark学习(十一)---Spark streaming整合kafka
本次介绍sparkStreaming和kafka的整合,主要有两种方式KafkaUtils.createDstream方式KafkaUtils.createDirectStream方式(推荐使用)1. 简单介绍kafka作为一个实时的分布式消息队列,实时的生产和消费消息,这里我们可以利用SparkStreaming实时地读取kafka中的数据,然后进行相关计算。在Spark1.3版...原创 2018-10-23 09:58:09 · 257 阅读 · 0 评论 -
Spark学习(十)---SparkStreaming和flume的整合
这次我们介绍SparkStreaming和flume的整合,flume作为日志实时采集的框架,可以与SparkStreaming实时处理框架进行对接,flume实时产生数据,sparkStreaming做实时处理。Spark Streaming对接FlumeNG有两种方式,一种是FlumeNG将消息Push推给Spark Streaming,还有一种是Spark Streaming从flume ...原创 2018-10-23 09:27:33 · 857 阅读 · 0 评论 -
Spark学习(五)---RDD原理解析和spark运行架构
这次我们介绍RDD的原理和spark运行机制RDD依赖关系RDD缓存RDD容错机制spark运行架构spark任务调度1. RDD原理首先我们对之前的单词统计的代码做一个画图展示1.1 RDD依赖关系RDD和它依赖的父RDD的关系有两种不同的类型,即窄依赖(narrow dependency)和宽依赖(wide dependency)。窄依赖窄依赖指的是每一个父R...原创 2018-10-20 19:16:05 · 360 阅读 · 0 评论 -
Spark学习(四)---人口密度监控案例
这次我们介绍人口密度计算的案例在案例之前会有spark的scala统计点击流日志代码小案例。1. 击流日志分析案例1.1需求下面的系列数据主要包括用户IP,浏览网址,时间,请求方式等,统计PV,UV,和被访问的TopN,下面是一条样例数据194.237.142.21 - - [18/Sep/2013:06:49:18 +0000] &quot;GET /wp-content/uploads/2...原创 2018-10-20 12:53:16 · 491 阅读 · 0 评论 -
Scala入门第二篇-数据结构
这一节主要介绍Scala中的数据结构:SeqSetMap集合特质scala同时支持可变集合和不可变集合,不可变集合从不可变,可以安全的访问两个主要的包不可变集合:scala.collection.immutable可变集合 :scala.collection,mutablescala优先采用不可变集合,集合主要分为三大类:序列(seq),集(set),映射(map)...原创 2018-10-15 23:27:46 · 217 阅读 · 0 评论 -
Spark学习(二)--任务提交
这次我们主要介绍spark的任务提交的方式和代码的编写spark的常用角色介绍spark-shell代码任务提交1. spark常用的角色介绍Spark 是基于内存计算的大数据并行计算框架。 因为其基于内存计算, 比Hadoop 中 MapReduce 计算框架具有更高的实时性, 同时保证了高效容错性和可伸缩性。 从 2009 年诞生于 AMPLab 到现在已经成为 Apache ...原创 2018-10-18 22:08:43 · 311 阅读 · 0 评论 -
大数据存储---HBase介绍(上)
本次主要介绍三部分:HBase简介HBase整体架构HBase安装和启动Hbase基本操作HBase简介hbase是bigtable的开源java版本,是建立在hdfs之上。 提供高可靠性、高性能、列存储、可伸缩、实时读写nosql的数据库系统。它介于nosql和关系型数据库之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实...原创 2018-10-09 12:53:22 · 498 阅读 · 0 评论 -
大数据离线---网站日志流量分析系统(2)---数据获取和预处理
本次接上一篇,进行实际数据的获取和预处理,会有较多的代码内容数据的获取数据的预处理数据的获取需求数据采集的需求广义上来说分为两大部分。是在页面采集用户的访问行为,具体开发工作:1、 开发页面埋点 js,采集用户访问行为2、 后台接受页面 js 请求记录日志是从 web 服务器上汇聚日志到 HDFS,是数据分析系统的数据采集,具体的技术实现有很多方式:Shell 脚本...原创 2018-09-19 17:29:11 · 3123 阅读 · 0 评论 -
大数据离线---网站日志流量分析系统---日志数据原始信息
本次主要介绍网站日志流量分析的第2单元,数据的采集和数据的预处理,以代码为主。数据采集(Flume)数据预处理1. 数据采集1.1 需求数据采集的需求广义上来说分为两大部分。在页面采集用户的访问行为,具体开发工作:开发页面埋点 js,采集用户访问行为后台接受页面 js 请求记录日志从 web 服务器上汇聚日志到 HDFS,是数据分析系统的数据采集,具体的技术实现有很...原创 2018-09-19 16:28:38 · 2202 阅读 · 4 评论 -
大数据离线-MapReduce(上)--初识MapReduce
本次主要介绍MapReduce,分为上篇,下篇两个篇章上篇介绍MapReduce计算模型,MapReduce编码规范及测试,程序运行模式。下篇介绍MapReduce序列化,MaoReduce排序初步,Mapreduce 的分区。1. MapReduce计算模型MapReduce是: 将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在Hado...原创 2018-09-13 21:01:53 · 435 阅读 · 1 评论 -
MapReduce报错Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio
在使用MapReduce的小测试的时候,Driver类启动,或报下面的错误log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).log4j:WARN Please initialize the log4j system properl...原创 2018-09-13 12:29:40 · 12092 阅读 · 36 评论 -
大数据离线-Hadoop入门(下)
本博客现阶段主要针对大数据的学习会逐一推出相关的学习文档,从简介,原理,入门测试,小的案例练习包括。会每天抽出时间更新,感兴趣的童鞋,欢迎关注订阅,多多交流。 本次主要介绍大数据离线阶段的Hadoop入门,分为上下两篇。上篇的内容为Hadoop简介,历史,特性,应用四个模块。下篇的内容为hadoop的集群搭建,集群启动,入门初试三部分。1.Hadoop集群搭建发行版...原创 2018-09-10 23:01:21 · 858 阅读 · 0 评论 -
大数据离线-Hadoop入门(上)
本博客现阶段主要针对大数据的学习会逐一推出相关的学习文档,从简介,原理,入门测试,小的案例练习包括。会每天抽出时间更新,感兴趣的童鞋,欢迎关注订阅,多多交流。 本次主要介绍大数据离线阶段的Hadoop入门,分为上下两篇。上篇的内容为Hadoop简介,历史,特性,应用四个模块。下篇的内容为hadoop的集群搭建,集群启动,入门初试三部分。Hadoop介绍一般我们讲的Hadoo...原创 2018-09-10 14:34:28 · 798 阅读 · 0 评论 -
大数据离线---网站日志流量分析系统(1)---简介及框架
本次介绍网站日志流量分析系统,首先是简介和架构。后面会对架构中需要的每个模块的进行逐个介绍。本篇主要分为两个部分网站日志流量分析系统简介整体技术流程和架构1. 网站日志流量分析系统简介1.1点击流数据模型点击流的概念 点击流( Click Stream)是指用户在网站上持续访问的轨迹。 这个概念更注重用户浏览网站的整个流程。 用户对网站的每次访问包含了一系列的点击动作...原创 2018-09-17 11:22:05 · 13683 阅读 · 2 评论 -
大数据离线-HDFS-(中)读写原理解析
本次介绍HDFS,分为上,中,下,三篇上篇入HDFS门介绍,常用操作中篇为HDFS的读写原理介绍下篇为HDFS的测试Demo,常用API1. NameNode概述HDFS 的核心,也称为 Master。存储内容:存储 HDFS 的元数据: 存储并跟踪目录树结构文件,Block信息及位置存储方式:不持久化存储DataNode的信息,这些信息会在系统启动时从数据节点重建。...原创 2018-09-12 17:43:15 · 481 阅读 · 0 评论 -
大数据离线-HDFS(上)入门操作
本次介绍HDFS,分为上,中,下,三篇上篇入HDFS门介绍,常用操作中篇为HDFS的读写原理介绍下篇为HDFS的测试Demo,常用API1. HDFS的基本概念HDFS的介绍 HDFS 是 Hadoop Distribute File System 的简称, 意为: Hadoop 分布式文件系统。 是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。 分...原创 2018-09-12 14:41:43 · 498 阅读 · 0 评论 -
大数据离线--数据管理简介
本次介绍数据管理的知识,分为三个部分:数据源数据管理数据仓库1. 数据源典型的数据分析系统, 要分析的数据种类其实是比较丰富的。 依据来源可 大体分为以下几个部分: 业务系统业务系统产生的数据是不可忽视的,比如电商网站,大量的订单数据看似杂乱章,实则蕴含潜在的商业价值,可以从中分析进而进行商业推广,产品推荐等。 另一角度来看,业务系统数据获取成本低、方式容...原创 2018-09-15 21:38:26 · 2969 阅读 · 0 评论 -
网站流量日志数据自定义采集(上)
说明本次主要说的是网络流量日志的自定义采集,是大数据学习的入门第一步。文章分为上下两部分,上部分为背景介绍,原理分析,设计实现三部分,上部分主要是以文字和原理为主。下半部分主要讲解实际部署,日志和事件采集的实现。知识背景–Web访问日志访问日志指用户访问网站时的所有访问、浏览、点击行为数据。比如点击了哪一个链接,打开了哪一个页面,采用了哪个搜索项、总体会话时间等。而所有这些信息都可通...原创 2018-09-10 00:47:33 · 1674 阅读 · 0 评论