- 博客(15)
- 资源 (3)
- 收藏
- 关注
原创 算法系列 : 十大经典排序
冒泡排序 冒泡排序比较简单 , 没啥好说的 , 上代码 for (int i = 0; i < arr.length; i++) { int j = i; while (j >= 1 && arr[j] < arr[j - 1]) { int tmp = arr[j]; arr[j] = arr[j - 1]...
2019-01-17 17:00:55 169
原创 大数据系列 : Scala之旅(四) 面向对象
Scala单例对象 在Scala中 , 没有static关键字 , 但是它也提供了单例模式的实现方法。就是使用关键字object , object对象不能带参数。 object ScalaTest1 { def main(args: Array[String]): Unit = { ScalaSingleton.saySomething("hello kitty") p...
2019-01-16 16:32:25 131
原创 大数据系列 : Scala之旅(三) 集合
集合简介 Scala的集合有三大类 : 序列Seq、集Set、映射Map , 所有的集合扩展自Iterable , 在Scala中集合有可变(mutable)和不可变(immutable)两种类型 , immutable类型的集合初始化后就不能改变了。 定长数组和变长数组 object ScalaTest16 { def main(args: Array[String]): Uni...
2019-01-15 17:05:12 223
原创 大数据系列 : Scala之旅(二) 基本语法
函数式编程体验 - spark-shell之WordCount 1.准备一个文件 2.上传到hdfs 3.对上述文件内容使用Spark进行单词个数统计 数据类型 Scala的几种数值类型Byte、Char、Short、Int、Long、Float、Double、Boolean、Unit 备注 : Unit表示无值 , 和其它语言中的void等同 , 用作不返回任何结果的方...
2019-01-14 21:39:21 188
原创 大数据系列 : Scala之旅(一) 简介 , 环境搭建
什么是Scala 官网地址 : https://www.scala-lang.org/ , 描述如下 Scala是一种将面向对象和函数式编程结合在一起的一种简洁的高级语言。Scala是静态类型的语言 , 这有助于避免复杂应用中的一些错误 , 它的JVM、JS运行时可以让你通过现有的库生态迅速构建高性能系统。 Scala的优势 1.优雅 : Scala的表达能力很强 , 特别是处理流数据...
2019-01-14 17:48:26 139
原创 大数据系列 : Spark集群环境搭建
前言 本文环境基于Hadoop - Yarn平台搭建 Yarn的平台环境默认已经搭建完毕 前置环境 Linux集群 , Java , Zookeeper , Hadoop , Scala , python-pip(pssh) 下载Spark安装包 官网地址 https://spark.apache.org/downloads.html 如果外网下载速度较慢 , 可以找到对应版本号...
2019-01-08 11:42:14 210
原创 Java系列 : 反射 详解
什么是反射 反射是Java的特性之一 , 它允许运行中的程序获取自身信息 , 并可以操作类或对象的内部属性 。 简而言之 , 通过反射 , 我们可以在运行时获得程序或者程序集中每一个类型的成员和成员信息。 Java反射主要提供以下功能 : 在运行时构造任意一个类的对象; 在运行时判断任意一个类所具有的成员变量和方法(通过反射甚至可以调用系统类private方法); 在运行时调用任意一...
2018-12-31 11:46:52 168
原创 大数据系列 : Spark初探
什么是Spark 官网介绍 Apache Spark™是用于大规模数据处理的统一分析引擎。 Spark诞生于U.C Berkeley的AMPLab , 它是这个世界上最重要的分布式大数据框架之一。它扩展了广泛使用的MapReduce计算模型。高效地支撑更多计算模型 , 包括交互式查询和流处理。Spark的一个主要特点是能够在内存中进行计算 , 即使依赖磁盘进行复杂的运算 , Spark依...
2018-12-29 17:46:34 1142
原创 Hadoop系列 : Yarn原理解析-工作流程
Yarn 概述 Yarn是一个资源调度平台 , 负责为运算进程提供服务器运算资源 Yarn上可以运行MapReduce、Storm、tez、Spark、Flink等分布式运算进程 Yarn的运行流程 client向yarn提交job , 首先找到ResourceManager分配资源 ResourceManager开启一个Container , 在Container中运行一个Appl...
2018-12-28 17:58:19 291
原创 JVM系列 : 字节码、指令、重排序
字节码简介 1.计算机只能识别0 1 , 经过0 1的组合 , 产生了数字 , 0 1组合也产生了各种字符 , 各种机器指令 2.不同的时代 , 不同产商 , 机器指令集(arm , x86 , rsic ...)是不同的 3.CPU与指令集直接耦合 , 一个程序要在多个平台运行 , 需要多套代码 4.如何实现跨平台 , 中间码(字节码)应运而生 字节码实际应用 1.字节码是JVM里指...
2018-12-27 17:29:57 1080 1
原创 Hadoop系列 : 精解MapReduce shuffle
shuffle简介 MapReduce的shuffle一般是指Map输出到Reduce输入的整个过程。 整个shuffle过程中伴随着大量的磁盘IO , 网络IO 。 shuffle性能的高低 , 直接决定了整个程序的性能高低 。 shuffle的字面意思是洗牌 , 即有序 - 无序的一个过程 , 比如JDK中的shuffle , 它的作用就是随机打乱集合中的元素 。但在MapReduce中 ...
2018-12-26 19:51:04 239 1
原创 在Intellij Idea中查看字节码文件
1.打开settings 2.找到Plugin 3.搜索jclasslib 4.安装后重启 5.编译已编译过的源文件 6.打开插件 7.查看字节码
2018-12-25 19:12:39 1066
原创 JVM系列 : 类加载、类加载器
不多说 , 直接干货 类加载器简介 Java类加载器是JRE的一部分,负责动态加载Java类到JVM内存。 类通常是懒加载 , 显著降低了Java运行时与文件系统的耦合度。 JVM的3个默认类加载器 : 引导(Bootstrap)类加载器 。 由Native代码编写 , 负责加载核心Java库。 扩展(Extensions)类加载器。 主要加载$JAVAHOME/jre/lib/ext下...
2018-12-25 18:46:36 288
转载 Hadoop系列 : MapReduce原理详解
一. MapReduce简介 MapReduce是一个基于 java 的并行分布式计算框架,使用它来编写的数据处理应用可以运行在大型的商用硬件集群上来处理大型数据集中的可并行化问题,数据处理可以发生在存储在文件系统(非结构化)或数据库(结构化)中的数据上。MapReduce 可以利用数据的位置,在存储的位置附近处理数据,以最大限度地减少通信开销。 MapReduce 框架通过编组分布式服务器,并...
2018-12-25 16:44:43 371
原创 Hadoop系列 : HDFS(Hadoop Distributed File System)基本功能及原理
HDFS(Hadoop Distributed File System)基本功能及原理 一 、HDFS的基本概念 HDFS有三个基本概念 , 数据块(Block) , 管理节点(NameNode) , 数据节点(DataNode) 数据块(Block) HDFS默认的基本存储单元是64M的数据块 元数据节点(NameNode) 又名管理节点 , 它存储了文件与数据块的映射 , 以及数据块和...
2018-12-25 14:40:46 369 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人