大数据系列修炼-Scala课程09】的更多相关文章

Option使用和实现内幕源码揭晓 1.Option中的sealed关键字解析:Option中用了sealed,定义的case class与case object必须在同一个文件中.Option在模式匹配中匹配项 2.Option使用内幕实战解析:Some表示匹配项,如果没有就在None中找 //sealed 表示封闭式抽象类 sealed abstract class Option[+A] extends Product with Serializable {} //而some也是继承了Opt…
简介 由于本人刚毕业,也是从事软件开发相关的工作.想再学习一下关于大数据.移动互联网.云计算相关的技术.为我的未来打好基础.并且从零开始学习大数据相关的知识,脚踏实地的走好每一步,听行业前辈说毕业生刚工作的三年是非常关键的,所有我每天抽出一点时间学习大数据相关知识, 也算是给我我未来买一份保险吧!也有从事大数据相关的工作的打算,也是未来规划的一部分吧!少年! 关于Scala介绍 Scala首先是一门编程语言,并且非常纯粹的面向对象编程语言,语法也非常简洁,相对java.Scala结合的"命令式&…
关于Scala中的正则表达式与模式匹配结合的正则表达式Reg 正则表达式的实现:正则表达式的定义与其它语言差不多,只需在表达式后加一个.r,并且可以遍历相应的表达式进行匹配 //定义的正则表达式 val regex="""([0-9]+) ([a-z]+)""".r //由数字与字母组成的常量 val numPattern = "[0-9]+".r //由数字组成的常量 val numberPattern = "&q…
前言 今天上班看了很多关于前端js,jQuery.bootstrap.js以及springMVC看得迷迷糊糊的,毕竟以前很少去学习前端的技术,所有看得有点困,还好看得比较多,回家后也开始学习关于Scala相关的课程,实验一下每天坚持做大数据相关的事情,一年后会成为什么样子......期待中....,今天也接着昨天的课程继续. Scala内部类实战详解 Scala内部类详解:scala中内部类要访问外部类直接把外部类的对象给内部类了,让其自己访问,内部类也需要实例化,这和java中有很多的区别,内…
由于昨天下班后有点困,就没有来及写博客,今天会把它补上!把这个习惯坚持下去! 关于Scala高阶函数详解 1.Scala高阶函数代码实现:高阶函数就是在我们函数中套用函数 2.高阶函数代码详解:高阶函数能够让方法的调用更加便捷 println("Welcome to the Scala worksheet") //> Welcome to the Scala worksheet //(1 to 9)数组中的map方法向数组中放* 用foreach用于来循环 println _ 表…
Scala中继承实现:超类的构造.字段重写.方法重写 关于超类的构建:超类可以在子类没有位置的限制,可以在子类中调用父类的方法 类中字段重写:在重写字段前面加一个override就可以重新赋值 类中方法重写:与字段重写差不多,参数,方法名也要相同 class Person1(val name : String, var age : Int){ println("The primary constructor of Person") val school = "BJU"…
接下来会讲解关于各种模式匹配,从中就会知道模式匹配的重要性 关于Type.Array.List.Tuple模式解析 1.Type模式匹配代码解析 //关于Type类型的模式匹配 //匹配 Int类型.string类型.Map类型[_,_]代表任意类型的k,v def match_type(t : Any) = t match { case p : Int => println("It is Integer") case p : String => println("…
Scala数组操作实战详解 接着昨天的课程,下面我们继续学习关于Scala数组操作详解.Scala数组的定义 //数组定义 //定长数组格式 /** * val arrayName = new Array[datatype](length) * val arrayName = Array(constant1,constant2,....) */ //不定长数组定义格式 /* * var arrayBufferName =ArrayBuffer[datatype]() */ 数组的基本操作:包括截…
接着昨天的list,也是学习集合的相关知识 ListBuffer.ArrayBuffer.Queue.stack相关操作 1.ListBuffer.ArrayBuffer代码实现:ListBuffer与ArrayBuffer都是mutable可变的与java中的定义也差不多,可以追加的. 2.Queue.Stack相关操作:队列是一端进去一端出来,而stack也是后进先出的原则,他们都是mutable可变的 import scala.collection.mutable.ListBuffer v…
今天主要是关于Scala中对List的相关操作,list在Scala中应该是至关重要,接下来会讲解关于List的一系列操作 List的map.flatMap.foreach.filter操作讲解 1.关于List的Map.flatMap操作.区别 2.对List的foreach.filter操作 //list中的Map中用一个函数表达式-->实则是对list进行操作,_可以表示一个函数或者表达式 List(1, 2, 3, 4, 6) map (_ + 1) //> res0: List[In…
Scala多重继承.构造器的执行顺序.AOP实现 多重继承的trait实现:Scala中接口可以继承具体的类,trait接口可以实现多重继承,并且某个类也可以继承特定的类,在继承后面可以混入,接口的实现 多重继承构造器执行顺序:多重继承构造器执行顺序是从左到右按次序执行,如果前面类以及被继承实现了,后面的类就没有必要去实现,父类只需执行一次 object triatScala { def main(args: Array[String]): Unit = { val t1 = new Piano…
相关博文: 大数据系列之并行计算引擎Spark介绍 之前介绍过关于Spark的程序运行模式有三种: 1.Local模式: 2.standalone(独立模式) 3.Yarn/mesos模式 本文将介绍Spark安装及运行模式的第1.3两种模式. 安装包: spark-2.1.0-bin-hadoop2.7.tgz   size:195MB 下载链接: https://pan.baidu.com/s/1bphB3Q3 密码: 9v5h 安装步骤: 1.本地模式: 1.直接将tgz包放置在任一目录:…
相关博文:大数据系列之并行计算引擎Spark部署及应用 Spark: Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎. Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点:但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭…
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用及JDBC连接 一.背景 1.在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作.有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念. 2.分区表指的是在创建表时指定的partition的分区空间. 3.如果需要创建有分区的表,需要在creat…
1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 登录远程服务器后, 快捷键 alt + p 即可进入 SFTP 模式. 在 MAC 下使用CRT 软件 登录服务器后选择 链接 SFTP 如下图即可进入 SFTP 模式. 右键属性 1.2.1 用 put 命令上传 在 STFP 模式后使用用 put 命令上传. put /Users/zzy/Dow…
前言 有一段时间没写文章了,最近事情挺多的,现在咱们回归正题,经过前面四篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,相关的两款软件VSFTP和SecureCRT也已经正常安装了. 本篇主要介绍在大数据应用中比较常用的一款软件Mysql,我相信这款软件不紧紧在大数据分析的时候会用到,现在作为开源系统中的比较优秀的一款关系型开源数据库已经被很多互联网公司所使用,而且现在正慢慢的壮大中. 在大数据分析的系统中作为离线分析计算中比较普遍的两种处理思路就是:1.写程序利用mapper-…
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环境中需要用到的软件,确切的说是两款:VSFTP和SecureCRT. 闲言少叙,进入本篇的正题. 背景 这里简要说明下这两款软件的作用. 1.VSFTP这个从字面就能理解就是搭建FTP服务器用的,为什么要搭建FTP服务呢? 我相信,如果按部就班的按照我之前的文章全装Hadoop的童鞋会发现一个很繁琐…
前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本篇的正题. 技术准备 VMware虚拟机.CentOS 6.8 64 bit 安装流程 我们先来回顾上一篇我们完成的单节点的Hadoop环境配置,已经配置了一个CentOS 6.8 并且完成了java运行环境的搭建,Hosts文件的配置.计算机名等诸多细节. 其实完成这一步之后我们就已经完成了Had…
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMware虚拟机.CentOS 6.8 64 bit 安装流程 因为我的笔记本是Window7操作系统,然后内存配置,只有8G,内存配置太低了,当然为了演示,我会将Hadoop集群中的主节点分配2GB内存,然后剩余的三个节点都是1GB配置. 所有的节点存储我都设置为50GB. 在安装操作系统之前,我们需要…
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用及JDBC连接 Hive主要分为以下几个部分 ⽤户接口1.包括CLI,JDBC/ODBC,WebUI元数据存储(metastore)1.默认存储在⾃带的数据库derby中,线上使⽤时⼀般换为MySQL驱动器(Driver)1.解释器.编译器.优化器.执⾏器Hadoop1.⽤MapReduce 进⾏计…
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用及JDBC连接 本文介绍Hive的使用原理及命令行.Java JDBC对于Hive的使用. 在Hadoop项目中,HDFS解决了文件分布式存储的问题,MapReduce解决了数据处理分布式计算问题,之前介绍过Hadoop生态中MapReduce(以下统称MR)的使用,大数据系列之分布式计算批处理引擎…
清明刚过,该来学习点新的知识点了. 上次说到关于MapReduce对于文本中词频的统计使用WordCount.如果还有同学不熟悉的可以参考博文大数据系列之分布式计算批处理引擎MapReduce实践. 博文发表后很多同学私下反映对于MapReduce的处理原理没有了解到.在这篇博文中楼主与大家交流下MapReduce的数据处理原理及MR中各角色的职责. 文末还有示例代码讲解.. 1.MapReduce中的数据流动 最简单的过程: map - reduce 定制了partitioner以将map的结…
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用及JDBC连接 Hive的工作原理简单来说就是一个查询引擎 先来一张Hive的架构图: Hive的工作原理如下: 接收到一个sql,后面做的事情包括:1.词法分析/语法分析 使用antlr将SQL语句解析成抽象语法树-AST2.语义分析 从Megastore获取模式信息,验证SQL语句中队表名,列名…
关于MR的工作原理不做过多叙述,本文将对MapReduce的实例WordCount(单词计数程序)做实践,从而理解MapReduce的工作机制. WordCount: 1.应用场景,在大量文件中存储了单词,单词之间用空格分隔 2.类似场景:搜索引擎中,统计最流行的N个搜索词,统计搜索词频率,帮助优化搜索词提示. 3.采用MapReduce执行过程如图 3.1MapReduce将作业的整个运行过程分为两个阶段 3.1.1Map阶段和Reduce阶段 Map阶段由一定数量的Map Task组成 输入…
之前介绍过关于HBase 0.9.8版本的部署及使用,本篇介绍下最新版本HBase1.2.4的部署及使用,有部分区别,详见如下: 1. 环境准备: 1.需要在Hadoop[hadoop-2.7.3] 启动正常情况下安装,hadoop安装可参考LZ的文章 大数据系列之Hadoop分布式集群部署 2. 资料包  zookeeper-3.4.9.tar.gz,hbase-1.2.4-bin.tar.gz 2. 安装步骤: 1.安装zookeeper 1.解压zookeeper-3.4.9.tar.gz…
若查看HBase-1.2.4版本内容及demo代码详见 大数据系列之分布式数据库HBase-1.2.4+Zookeeper 安装及增删改查实践 1. 环境准备: 1.需要在Hadoop启动正常情况下安装,hadoop安装可参考LZ的文章 大数据系列之Hadoop分布式集群部署 2. 资料包  hbase-0.98.9-hadoop2-bin.tar.gz 2. 安装步骤: 1.将hbase 压缩包放入用户~/resources下 2.执行命令,cp到用户根目录,解压 cp resources/h…
相关文章: 大数据系列之Kafka安装 大数据系列之Flume--几种不同的Sources 大数据系列之Flume+HDFS 关于Flume 的 一些核心概念: 组件名称     功能介绍 Agent代理 使用JVM 运行Flume.每台机器运行一个agent,但是可以在一个agent中包含多个sources和sinks. Client客户端 生产数据,运行在一个独立的线程. Source源 从Client收集数据,传递给Channel. Sink接收器 从Channel收集数据,进行相关操作,…
原创不易,转载请务必注明,原创地址,谢谢配合! http://qindongliang.iteye.com/ Pig系列的学习文档,希望对大家有用,感谢关注散仙! Apache Pig的前世今生 Apache Pig如何自定义UDF函数? Apache Pig5行代码怎么实现Hadoop的WordCount? Apache Pig入门学习文档(一) Apache Pig学习笔记(二) Apache Pig学习笔记之内置函数(三) 玩转大数据系列之Apache Pig如何与Apache Lucen…
在前文大数据系列1:一文初识Hdfs中,我们对Hdfs有了简单的认识. 在本文中,我们将会简单的介绍一下Hdfs文件的读写流程,为后续追踪读写流程的源码做准备. Hdfs 架构 首先来个Hdfs的架构图,图中中包含了Hdfs 的组成与一些操作. 对于一个客户端而言,对于Hdfs的操作不外乎也就读写两个操作,接下来就去看看整个流程是怎么走的. 下面我们由浅及深,氛围简单流程,详细流程分别介绍读写过程 简单流程 读请求流程 客户端需要读取数据的时候,流程大致如下: Client向NameNode发起…
系列文章: 大数据系列:一文初识Hdfs 大数据系列2:Hdfs的读写操作 大数据谢列3:Hdfs的HA实现 通过前文,我们对Hdfs的已经有了一定的了解,本文将继续之前的内容,介绍Yarn与Yarn在MapReduce 2的应用 MapReduce1 作业流程 在介绍Yarn之前,我们先介绍一下Mapreduce1作业流程. 有了这个基础,再去看看采用Yarn以后的MapReduce2到底有啥优势也许会有更好的理解. 首先先介绍一下相关的几个实体: Client:负责提交 MapReduce…