Hadoop基础知识点——填空

  1. 大数据系统对数据的处理仅限于查询、分析、转换,而不会改变,因为数据都是其他系统产生的,不如日志,修改他们没有什么意思。
  2. Hadoop由HDFS、Yarn、MapReduce组成:HDFS是分布式文件系统,解决了大量存储的问题;Yarn是分布式计算系统的节点资源管理和调度工具:MapReduce是数据计算框架,分为Map和Reduce两个阶段,其中Reduce又隐含了一个Shuffle过程。MapReduce与其他两个不是一个层面的,MapReduce是帮助我们编写运行Hadoop系统中的数据处理程序的库。
  3. DataNode用于存放文件 ,NameNode用于管理整个文件目录树
  4. NameNode处理管理整个文件目录树,还要管理各DataNode主机,协调它们之间的配合,监视DataNode的生存情况,对长时间无反应的DataNode不再访问。
  5. 数据冗余,每个文件都会有多个副本分散在不同的DataNode上,NameNode时刻监视文件的副本量,如果小于设定的值,就找一台DataNode增加副本数。一般至少有三份副本才能保证数据安全,保证某个DataNode在死掉的情况下依然能供客户端及时获取文件数据。
  6. 分布式环境下的各种操作相当繁琐,所以请记住HDFS的一个特点(也可以说是一个缺点):不支持随机写(指定文件位置去写入内容的操作),但支持追加内容(明显这个操作的成本要比随机写低),总之它适合的访问方式是"一次写入,多次读取"。
  7. Hadoop系统的运行方式有三种:独立模式、伪分布模式、分布式模式。
  8. "容器"其实就是一台虚拟机,所以容器技术就是创建和管理虚拟机的技术。当前最流行的容器技术软件就是Docker。
  9. 其实Docker是一种更轻量的虚拟化技术,随着需求和业务模式的发展也一直在演进。
  10. 为什么人们喜欢用容器化技术呢?因为容器内的系统与宿主机无关,容器内配置好的软件环境不会随宿主机变化,这使得我们平时遇到的很多烦恼不复存在。
  11. 注意最后一行"[root@2b7fe07f4401]#",看到它就表示已经入容器内部。root表示Linux的当前账户,2b7fe07f4401是容器的id,/表示当前所在路径为根路径。
  12. Vi有三种模式,默认是命令模式,此时按下字符键,表示命令而不是输入字符。有很多命令可以将模式变为编辑模式,比如a、i、o。先按ESC键再按冒号键,进入另一种命令模式,此模式下可以退出vi,如果没有任何改动,输入"q"即可,输入"wq"会保存修改再退出,输入"q!"表示丢弃修改并退出。
  13. 在HDFS的根目录下创建user目录:dfs -mkdir /user

在/user目录下创建与操作Hadoop账户名相同的目录:dfs -mkdir /user/root

在/user/root目录下创建input目录:dfs -mkdir input

  1. 执行命令 sbin/start-all.sh。 注意观察日志输出是否报告异常,也可以通过jps命令产看程序是否运行。
  2. HDFS高可用涉及到的组件有NameNode、DataNode和edits共享组件。
  3. Zookeeper再每个节点上都有运行。注意,Zookeeper应配置为奇数个节点,因为n(n为奇数)个和n+1个节点对风险的抵抗能力相同,而且奇数个更容易选出Leader。所以。Zookeeper节点至少要有三个,用5个是没有问题的。
  4. Pom.xml是工程描述文件,Maven脚本根据它来构建目标结果(比如编译、打包)。

Src下是组件工程的文件夹。

Src/main下放的是用于构建目标结构的文件。

Src/test下放的是用于测试的文件

Src/main/java下放的是Java源码文件,src/test/java也是源码文件,不过用于测试;其下的com/niu/edu是一个Java包。

Src/main/resources下放的是资源文件(只要不是Java源码文件,都叫资源文件),这个目录看不到,当需要手动创建即可。Src/test/resources下放的也是资源文件,用于测试

  1. 必须放在<dependencies>元素中,每一个依赖项是一个<dependency>,每个<dependency>至少要包含三项内容:groupId、artifactId、version。
  2. 打jar包只需一条Maven命令,在VSCode的控制台(TERMINAL)窗口执行命令mvn package,打包成功后,在项目根目录下的target目录下出现一个jar文件。Hive被称为数据仓库工具,因为它适合做的事与关系型数据库是有差别的,它基于HDFS和MapReduce,适合做一些对数据进行抽取、转换、加载(ETL)的工作,而不适合做事务性的工作(修改这些数据)。
  3. HiveServer2的主要功能是接收客户端的连接,接收客户端发出的SQL语句,处理语句,转成MR作业,返回结果。
  4. 初始化HiveServer2。第一次运行HiveServer2也需要先执行初始化操作(主要是初始化Meta数据库),创建供Meta管理使用的表,命令为:/app/hive/chematool -dbType postgres -initSchema。 其中, dbType指明数据库的类型,对应PostgreSQL的必须是pstgres。
  5. 启动HiveServer2.执行/app/hive/bin/hiveServer2 & 命令,其中"&"表示在后台运行。启动后,如果没有错误,就会输出类似下面内容。
  6. 使用beeline连接HiveServer2,命令为/app/hive/bin/beeline -u jdbc:hive2://localhost:10000 -n hive 。 其中 -u 后面是URL, -n后面是账户名。
  7. OLTP要求数据处理必须满足原子性、一致性、隔离性、持久性四要素,否则无法保持稳定的业务状态。
  8. Hive适合OLAP,普通DBMS适合OLTP。
  9. Hive的组件包括HiveServer2、MetaStore、Meta database、beeline,可以任意组合,实现独立或嵌入式运行模式。
  10. HBase也是一主多从的主从架构。主组件叫做HMaster,从组件叫做HRegionServer。
  11. HBase对HMaster和HRegionServer的分工非常科学,HMaster不参与表的管理,不参与客户端对表的访问,其主要工作是故障恢复和负载平衡。
相关推荐
yumgpkpm19 小时前
CMP (类ClouderaCDP7.3(404次编译) )华为鲲鹏Aarch64(ARM)信创环境 查询2100w行 hive 查询策略
数据库·数据仓库·hive·hadoop·flink·mapreduce·big data
K_i1342 天前
Hadoop 集群自动化运维实战
运维·hadoop·自动化
Q26433650232 天前
【有源码】基于Python与Spark的火锅店数据可视化分析系统-基于机器学习的火锅店综合竞争力评估与可视化分析-基于用户画像聚类的火锅店市场细分与可视化研究
大数据·hadoop·python·机器学习·数据分析·spark·毕业设计
顧棟2 天前
【Yarn实战】Yarn 2.9.1滚动升级到3.4.1调研与实践验证
hadoop·yarn
D明明就是我2 天前
Hive 拉链表
数据仓库·hive·hadoop
嘉禾望岗5033 天前
hive join优化和数据倾斜处理
数据仓库·hive·hadoop
yumgpkpm3 天前
华为鲲鹏 Aarch64 环境下多 Oracle 数据库汇聚操作指南 CMP(类 Cloudera CDP 7.3)
大数据·hive·hadoop·elasticsearch·zookeeper·big data·cloudera
忧郁火龙果3 天前
六、Hive的基本使用
数据仓库·hive·hadoop
忧郁火龙果3 天前
五、安装配置hive
数据仓库·hive·hadoop
chad__chang3 天前
dolphinscheduler安装过程
hive·hadoop