Java大数据
stalin_
程序员界的小学生
展开
-
Java大数据学习01--大数据的本质及学习顺序介绍
随着互联网的使用人数越来越多,产生的数据也越来越多。根据数据我们可以分析出很多有用的信息。这也就是当前为什么大数据这么火的行为。学习大数据有很多种方式,但我们学习的载体是以目前最普遍,最流行的Java语言来进行学习。下面我们进入正题:1、首先是大数据的本质:大数据的本质无非两条:大数据的存储(Hadoop)和大数据的计算(Spark)存储:由于数据量巨大,把所有数据存在一个机器...原创 2019-02-25 23:25:27 · 417 阅读 · 0 评论 -
Java大数据学习15--Hbase的JavaAPI使用(查询条件过滤器)
Hbase中的过滤器相当于sql中的查询条件,通过各种过滤器我们可以实现多样化的查询功能。下面我们来介绍一下这些过滤器。一、过滤器的种类:1、列植过滤器—SingleColumnValueFilter 过滤列植的相等、不等、范围等2、列名前缀过滤器—ColumnPrefixFilter 过滤指定前缀的列名3、多个列名前缀过滤器—MultipleColumnPref...原创 2019-06-13 23:07:39 · 1843 阅读 · 1 评论 -
Java大数据学习09--Mapreduce数据压缩介绍和配置方法
一、概述:数据压缩是mapreduce的一种优化策略:通过压缩编码对mapper或者reducer的输出进行压缩,以减少磁盘IO,提高MR程序运行速度(但相应增加了cpu运算负担)二、基本原则:运算密集型的job,少用压缩IO密集型的job,多用压缩注:1、 Mapreduce支持将map输出的结果或者reduce输出的结果进行压缩,以减少网络IO或最终输出数据的体积2、...原创 2019-06-03 09:42:25 · 493 阅读 · 0 评论 -
Java大数据学习10--Mapreduce常用配置参数优化
一、资源相关参数(1) mapreduce.map.memory.mb: 一个Map Task可使用的资源上限(单位:MB),默认为1024。如果Map Task实际使用的资源量超过该值,则会被强制杀死。(2) mapreduce.reduce.memory.mb: 一个Reduce Task可使用的资源上限(单位:MB),默认为1024。如果Reduce Task实际使用的资源量超过该值...原创 2019-06-03 10:37:20 · 1126 阅读 · 0 评论 -
Java大数据学习11--资源调度平台Yarn的执行流程和三种调度器介绍
一、概述Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序。二、重要概念1、yarn并不清楚用户提交的程序的运行机制2、yarn只提供运算资源的调度(用户程序向yarn申请资源,yarn就负责分配资源)3、yarn中的主管角色叫ResourceManager4、yarn中具体...原创 2019-06-03 14:59:47 · 651 阅读 · 0 评论 -
Java大数据学习12--Hbase的概述及安装流程
一、HBASE介绍HBASE是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBASE技术可在廉价PC Server上搭建起大规模结构化存储集群。二、HBASE的优点1、线性扩展,随着数据量增多可以通过节点扩展进行支撑2、数据存储在hdfs上,备份机制健全3、通过zookeeper协调查找数据,访问速度块。三、HBASE的角色:1、主节点:Hmaster2、从节点:...原创 2019-06-04 09:48:06 · 165 阅读 · 0 评论 -
Java大数据学习16--Hbase原理概述
今天来简述一下hbase的各项流程的原理。包括Hbase的读,写流程,数据flush流程,数据合并流程,以及Hbase各个角色的职责。首先放一个Hbase的体系图。Hbase主要是由Client,HMaster,HRegionServer组成,当然也需要Zookeeper,但他不属于Hbase的一部分。之后我们再说它。先说说上面三种角色在Hbase中的职责。一、Hmaster的职责...原创 2019-06-16 21:07:39 · 301 阅读 · 0 评论 -
Java大数据学习17--Hbase操作MapReduce
一、实现方法Hbase对MapReduce提供支持,它实现了TableMapper类和TableReducer类,我们只需要继承这两个类即可。1、写个mapper继承TableMapper<Text, IntWritable>参数:Text:mapper的输出key类型; IntWritable:mapper的输出value类型。其中的map方法如下:m...原创 2019-06-16 21:25:43 · 494 阅读 · 0 评论 -
Java大数据学习18--Hbase性能优化技巧介绍
光能够搭建和使用Hbase是远远不够的,通过修改各种配置文件和资源对Hbase进行性能调优,使运行效率达到最高才是我们的最终目的。所以今天我们再来说说Hbase调优的几条小建议。一、修改Linux最大文件数Linux系统最大可打开文件数一般默认的参数值是1024,如果你不进行修改并发量上来的时候会出现“Too Many Open Files”的错误,导致整个HBase不可运行查看: uli...原创 2019-06-18 11:45:49 · 262 阅读 · 0 评论 -
Java大数据学习19--数据仓库工具Hive入门知识介绍
一、Hive简介Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,可以查询存储在HDFS中的数据。大多数数据仓库应用程序都是使用关系型数据库进行实现的,并使用SQL作为查询语言,Hive降低了将这些应用转移到Hadoop系统上的难度。二、Hive优点1、省去了写MapReduce程序的繁琐,学习成本低。2、操作接口采用类SQL语法,提供快速开发的能...原创 2019-07-09 13:35:21 · 396 阅读 · 0 评论 -
Java大数据学习14--Hbase的JavaAPI使用(增删改查)
在安装好Hbase环境,以及熟悉了Hbase Shell的使用之后,我们来学习一下Hbase 的Java API的使用,主要是一些增删改查操作。---以Hbase.0.99版本为例:首先来介绍一下API。Hbaserowkey就是id,rowkey一样的数据添加进去是覆盖操作,不同的是新增操作。1、配置HBaseConfiguration包:org.apache.hadoop...原创 2019-06-13 22:47:05 · 345 阅读 · 0 评论 -
Java大数据学习08--Mapreduce的shuffle机制及序列化
一、什么是shuffle:mapreduce中,map阶段处理的数据如何传递给reduce阶段,是mapreduce框架中最关键的一个流程,这个流程就叫shuffle;具体来说:就是将maptask输出的处理结果数据,分发给reducetask,并在分发的过程中,对数据按key进行了分区和排序;二、shuffle的核心机制:数据分区,排序,缓存三、shuffle执行流程:概述:...原创 2019-06-02 23:29:28 · 238 阅读 · 0 评论 -
Java大数据学习02--Hadoop的分布式文件系统-HDFS特性及高可用性介绍
当数据量超过一台机器存储的最大容量时,我们就需要考虑使用多台机器去进行数据存储。而管理多台机器存储数据的文件系统成为分布式文件管理系统(distributed file system)。HDFS就是Hadoop最常用的分布式文件管理系统。一、HDFS的特性:1.硬件错误: 硬件错误是常态而不是异常。HDFS可能由成百上千的服务器所构成,每个服务器上存储着文件系统的部分数据。我们面对的现实...原创 2019-02-26 18:21:15 · 444 阅读 · 0 评论 -
Java大数据学习03--Hadoop集群详细搭建指南(HDFS,Yarn)
之前都是些介绍工作,今天我们就来安装一下hadoop集群环境,并将配置文件配好,将集群启动起来。搭建hadoop集群指南(hdfs,yarn)1.准备四台服务器2.修改主机名 1)vim /etc/hosts 格式192.168.1.1 master192.168.1.2 slave1192.168.1.3 slave2 2)vim /etc/sysc...原创 2019-04-02 11:11:48 · 266 阅读 · 0 评论 -
Java大数据学习04--HDFS的工作机制和常用命令介绍
在成功启动HDFS集群之后,我们就该考虑如何使用HDFS了,这里我们分两块来讲,先说查看HDFS集群状态和常用命令介绍。再讲一下HDFS的工作机制。一、查看整个HDFS集群状态。我们有两个办法可以查看。1.使用命令行:hdfs dfsadmin –report 效果如图:2.Web控制台,打开浏览器输入:http://namenodeIP:50070/效果如...原创 2019-04-02 14:27:00 · 242 阅读 · 0 评论 -
hdfs报错解决--SafeModeException: Cannot create file/aaa. Name node is in safe mode.
今天在学习HDFS时使用Java API向hdfs上传文件时,发现这么个错误:org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.SafeModeException): Cannot create file/aaa. Name node is in safe mode.后来经过百度发现是因...原创 2019-04-21 17:34:16 · 718 阅读 · 0 评论 -
hdfs报错解决--ExitCodeException exitCode=-1073741701: (从hdfs向客户端下载文件失败)
今天在学习HDFS时使用Java API从hdfs上下载文件到客户端时,报了这个错。ExitCodeException exitCode=-1073741701:经查最终确定是我方法调用时参数不对导致。如果调用windows上安装的hdfs用第一种写法。如果调用linux系统上安装的hdfs使用第二种写法。我是这么写的:fs.copyToLocalFile(new Path("/...原创 2019-04-21 18:26:17 · 1756 阅读 · 1 评论 -
Java大数据学习05--HDFS的Java API使用
我们使用过hdfs的命令行,接着使用Java操作一下hdfs。1.创建一个Maven工程。导入pom文件。<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.6.1...原创 2019-04-21 18:42:28 · 196 阅读 · 0 评论 -
Java大数据学习06--Mapreduce概述及核心思想
一、MapReduce的作用:用来解决集群上的海量数据的分布式计算问题的框架,让用户将更多精力放在业务逻辑的开发上,而不用关心分布式计算中的复杂性。二、MapReduce的结构:1、MRAppMaster:负责整个程序的过程调度及状态协调2、MapTask:负责map阶段的整个数据处理流程3、ReduceTask:负责reduce阶段的整个数据处理流程三、MapReduce流程...原创 2019-05-31 22:17:00 · 347 阅读 · 0 评论 -
Java大数据学习07--Mapreduce--MapTask和ReduceTask并行度的决定机制
一、mapTask并行度的决定机制1、maptask的并行度决定map阶段的任务处理并发度,它可以决定job的处理速度。但并不是MapTask并行实例越多越好,它是综合了很多因素来决定的。2、一个job的map阶段并行度由客户端在提交job时决定,而客户端对map阶段并行度的规划的基本逻辑为:将待处理数据执行逻辑切片(即按照一个特定切片大小,将待处理数据划分成逻辑上的多个split),然后每...原创 2019-05-31 22:42:16 · 548 阅读 · 0 评论 -
Java大数据学习13--Hbase命令行的使用和常用命令介绍
Hbase支持与用户通过shell进行交互。我们来简单介绍一下使用方法和一些常用命令。一、Hbase命令行的使用:1、进入Hbase的安装目录下的bin文件夹。2、执行 ./hbase shell 即可进入命令行界面。3、如果想要退出可以直接Ctrl+c或者输入quit。二、Hbase常用命令: 名称 命令表达式 创建表 ...原创 2019-06-13 10:18:31 · 371 阅读 · 0 评论 -
Java大数据学习20--数据仓库工具Hive安装模式的选择及安装步骤介绍
一、Hive安装有三种模式:内嵌模式:元数据保持在内嵌的derby模式,只允许一个会话连接(一般生产环境不用)本地独立模式:在本地安装Mysql,把元数据放到mySql内远程模式:元数据放置在远程的Mysql数据库Hive 将元数据存储在 RDBMS 中,一般常用 MySQL 和 Derby。默认情况下,Hive 元数据保存在内嵌的 Derby 数据库中,只能允许一个会话连接,只适合简单...原创 2019-07-10 10:22:57 · 351 阅读 · 0 评论