![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hadoop入门
文章平均质量分 74
正橙橙橙橙
这个作者很懒,什么都没留下…
展开
-
scala基础(三)
scala集合1)Scala 的集合有三大类:序列 Seq、集 Set、映射 Map,所有的集合都扩展自 Iterable 特质。2)对于几乎所有的集合类,Scala 都同时提供了可变和不可变的版本,分别位于以下两 个包 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable3)Scala 不可变集合,就是指该集合对象不可修改,每次修改就会返回一个新对象,而 不会对原对象进行修改。类似于 java 中的 String 对象原创 2021-12-09 10:31:15 · 589 阅读 · 0 评论 -
Scala基础(二)
Scala的面向对象Scala 的面向对象思想和 Java 的面向对象思想和概念是一致的。Scala 中语法和 Java 不同,补充了更多的功能。1.Scala包 Scala包与Java类似,有两种管理方式。第一种与Java一毛一样。 但是在Scala中,还有另一种,即通过嵌套的方式。package com{ package zc{ package hadoop{ } }}按照嵌套...原创 2021-12-04 17:12:34 · 527 阅读 · 0 评论 -
Scala基础(一)
Scala是学习Spark的基础。比java更面向对象。Scala基于Java的,其编译都依赖于JVM,使得Scala也能够跨平台运行。Scala的SDK拥有Java的部分类库,以及自己的特有类库,和一些Java的封装类库。1.下载Scala并配置环境变量。2.创建Maven新工程,增加Scala支持。即可开始书写Scala代码。Scala大部分性质与Java类似...原创 2021-11-22 15:38:18 · 2115 阅读 · 0 评论 -
Hive基础
1.Hive简介Hive:由Facebook开源用于解决海量结构化日志的数据统计工具。Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。其实Hive就是将我们的类似SQL(HQL)语句转换成MapReduce程序的工具。Cli 用户接口(JDBC等) Metastore元数据:存储表名,表存在的数据库,表的拥有者等表的信息。、 使用HDFS存储,使用MapReduce计算 Driver分为四步:...原创 2021-11-15 14:05:39 · 1757 阅读 · 0 评论 -
MapReduce-Hadoop序列化
序列化相信大家都在Java中学习过。那么在Hadoop中有什么区别呢?首先在Java中,我们是将数据转化成字节码文件,这样无论什么样的机器,通过同样的反序列化操作,都能得到我们的数据。但是在Java中,我们实现的Serializable接口,在输出的字节码文件中,还会加上一些校验信息。Java的序列化是一个重量级序列化框架(Serializable),一个对象被序列化后,会附带很多额外的信息(各种校验信息,Header,继承体系等),不便于在网络中高效传输。所以,Hadoop自己开发了一套序列化机制原创 2021-10-29 19:30:46 · 1057 阅读 · 0 评论 -
MapReduce-wordcount
MapReduce概述MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。1)MapReduce易于编程它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的PC机器上运行。也就是说你写一个分布式程序,跟写一个简单的串行程序是一模一样的。就是因为这个特点使得MapReduce编程变原创 2021-10-29 14:50:03 · 457 阅读 · 0 评论 -
Exception in thread “main“ java.lang.UnsupportedClassVersionError
在IDEA里编写好自己的WordCount程序后,我们使用Maven打包。将jar包导入到Hadoop集群中。使用Hadoop命令执行jar包,出现如下错误:这个错误的原因是我们的IDEA里用的JDK版本太高,可以看到complied的版本是more rencent(53.0)用的JDK9进行打包的。但是在我的虚拟机中,我安装的是JDK8(52.0)。所以会出现上述的异常。那么解决方案有两种。1.是将Linux中的JDK重新安装成JDK92.更换生产环境中的JDK 2....原创 2021-10-29 14:20:17 · 2073 阅读 · 0 评论 -
Win10环境下运行WordCount案例出错解决方案
注意是否配置好环境。例如HADOOP_HOME,以及相应的Windows依赖。如果完成上述,提示的是ChangeFileModeByMask error(3)那么我们可以找到你之前在Windows里的Hadoop文件夹,将hadoop.dll复制到C盘的System32(大概率是隐藏的,可以通过搜索找到)中。那么如果此时运行仍然报错。报错为Exception in thread "main" 0: No such file or directory那么此时是IDEA运行的权限不够!原创 2021-10-28 22:39:55 · 1532 阅读 · 1 评论 -
HDFS的读写流程
HDFS的写数据流程客户端需要上传文件,客户端就会创建一个Distributed FileSystem,向NameNode请求上传文件。 此时,NameNode要检查,该客户端是否有权限进行操作。然后开始检查目录结构能否创建成功。检查完成后,Namenode就会响应,通知客户端上传文件。 客户端此时会请求上传第一个Block,需要NN返回DataNode,告知客户端上传的位置。 NN会返回几个DataNode,例如返回了3个节点。表示告知客户端要用返回的三个节点存储数据。 此时HDFS客户.原创 2021-10-28 13:27:06 · 277 阅读 · 0 评论 -
HDFS简介与常用API
HDFS简介 HDFS是一个文件系统(Hadoop Document File System),通过目录树来定位文件。其次,它是分布式的。HDFS适用于:一次写入,多次读出的场景。HDFS通过多种方式,实现了高容错性、可靠性、适合处理大数据HDFS缺点: 1.不适合低延时的数据访问。 2.无法高效的对大量小文件进行存储 (占用过多NameNode的内存用于存储文件目录...原创 2021-10-28 11:26:26 · 1287 阅读 · 0 评论 -
Hadoop基础(安装与启动集群)
Hadoop是一个又Apache基金会所开发的分布式系统基础架构。主要用于解决海量数据的存储和海量数据的分析计算问题。广义上来说,Hadoop也只Hadoop的生态圈。相关Apache的开源软件:Index of /distHadoop具有的优势:高可靠性:Hadoop底层维护多个数据副本,避免某个节点故障导致的数据丢失。高扩展性:可以通过增加节点的方式,拓展集群高效性:在MapReduce的思想下,Hadoop是并行的高容错性:能自动的失败的任务重新分配。1.Hadoop的架构原创 2021-10-26 20:44:02 · 446 阅读 · 0 评论 -
ZooKeeper基础
在我们的多线程学习中,一个主机有多个线程。若这些线程共享了一个资源。那么我们为了保证一致性问题,我们使用了锁的机制。只有拿到锁的线程,才能够访问该共享资源,进行读或写的操作。那么,在我们的hadoop集群里,我们类比多线程。多线程是单主机,多线程,而在集群中,我们是多主机向同一共享资源进行访问。那么我们就需要一个叫 分布式锁 的东西,来保证被集群(多主机)访问的共享资源的数据一致性问题。而我们的Zookeeper就能完成这样的功能。Zookeeper的特点...原创 2021-10-26 13:13:34 · 120 阅读 · 0 评论 -
Shell基础
在操作Linux系统时,我们输入的所有命令,都是先通过Shell层,再到达内核的。脚本格式要求1.脚本以 #!/bin/bash开头2.脚本需要有可执行权限脚本常用的执行方式Shell脚本 HelloWorld!#!/bin/bashecho "hello,world"方式1(输入脚本的绝对路径或相对路径)说明:首先要赋予helloworld.sh 脚本的+x权限,再执行脚本方式2(sh+脚本)说明:不用赋予脚本 +x权限,直接执行即可。Shel原创 2021-10-21 16:26:20 · 177 阅读 · 0 评论