大数据基础学习总结

1.linux

shell指令学习我是从私房菜开始看的,而且只看了shell指令相关的

linux   dos (dos命令百度百科     内容很全)
ls显示目录列表,较常用的是ls -l,用别名ll表示   使用dir

cd directory 进入directory表示的目录,又分为相对路径和绝对路径,

相对路径前面是不用/,相对于当前目录开始

绝对路径是以/目录开始 ./表示当前目录 ../表示上级目录  

windows中有盘符所以切换盘符的时候要用cd /D directory

其他情况和linux相同 也可以直接盘符D:

编辑文件使用vi,这里内容很多,要理解命令模式,编辑模式的区分,学习起来较为容易

有i,o等命令可以进入编辑模式,用esc退出编辑模式,退出vi可以用:wq保存写入内容后退出

;q!不保存强制退出

 edit

 df -ah查看磁盘使用情况,du -sh file

这里file可以是目录和文件查看指定文件和目录使用空间大小

 

             

 

 

2.hadoop

  hadoop1分为hdfs和mapred,hadoop2分为hdfs,mapreduce和yarn。我主要学习了hadoop1

hadoop要求jdk,因此要先安装jdk,hadoop安装主要配置文件为core-site.xml hdfs-site.xml mapred-site.xml 和hadoop-env.sh

主要学习途径是stackoverflow,jira。hadoop权威指南

hadoop的核心架构 HDFS是按照Master和Slave的结构。由namenode和datanode构成,namenode通过datanode的heartbeat(“心跳”)确定节点正常。namenode管理datanode的block信息。同时管理client对集群的访问。还有一个secondnamenode实现namenode的冷备份,根据snapshot(“快照”)和checkpoint(“监测点”)实现和namenode的一致性,在namenode节点dead时secondnamenode替代namenode的工作。datanode保存hadoop的数据,datanode的基本数据单元是block,每个block大小为64M。因此可知hadoop是用来存储大文件的。小文件的读写会很消耗hadoop内存。

热备份:b是a的热备份,如果a坏掉。那么b马上运行代替a的工作。

冷备份:b是a的冷备份,如果a坏掉。那么b不能马上代替a工作。但是b上存储a的一些信息,减少a坏掉之后的损失。

mapreduce 一种云计算的核心计算模式,一种分布式运算技术,也是简化的分布式编程模式,它主要用于解决问题的程序开发模型,也是开发人员拆解问题的方法。

原理是  map : -> list ; reduce :  ->      mapreduce主要强调了map和reduce中间还存在shuffle("洗牌")和sort的过程,通过洗牌主要将相同主键的数据移动到一个datanode处理,充分考虑分布式模式,在单一datanode内数据是有序排列的,在通过reduce可以求得最大值,平均值,个数等。

3.hbase

hbase是列族数据库底层依赖于hdfs。hbase是按照Master和Slave的结构。分为HMaster和regionserver。hbase中hmaster主要管理-ROOT-和.META.表的数据。-ROOT-只有一个是不可分割的。存储了.META.的索引信息,而.META.存储了regionserver中region的索引信息。所以是采用了三级索引思想。regionserver中是存储数据的地方,而regionserver中有可以有多个region和一个Hlog。每个region里面又分为多个store,store存储的列族数据。store中有memstore和storefile。memstore达到阀值时,将数据刷写成storefile中。Hregion是以完整的记录行存储。hbase内部中行键是有序的。client只能根据行键key读取数据。hbase中内部数据是存储。

hbase中最小单元是hfile,HFile中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即StoreFile底层就是HFile

hbase中还内置有zookeeper(你也可以不使用内置的zookeeper),Zookeeper Quorum存储-ROOT-表地址、HMaster地址
HRegionServer把自己以Ephedral方式注册到Zookeeper中,HMaster随时感知各个HRegionServer的健康状况
Zookeeper避免HMaster单点问题
client访问过程 : client -> zookeeper -> -ROOT- > .META.-> 用户数据表

4.hive

hive是数据仓库,hive底层依赖于hadoop,它的sql解析是通过mapreduce任务完成的。hive的两个核心服务是metastore和hiveserver。

数据访问和存储是采用sql方式访问的。hiveQL是hive的核心。它不支持update和delete

  (1)HQL中对查询语句的解释、优化、生成查询计划是由Hive完成的 
    (2)所有的数据都是存储在Hadoop中 
    (3)查询计划被转化为MapReduce任务,在Hadoop中执行(有些查询没有MR任务,如:select * from table)
    (4)Hadoop和Hive都是用UTF-8编码的

hiveQL中select的使用,与sql的区别和hive的性能优化都是重点去理解的。

转载于:https://www.cnblogs.com/xg1010831107/p/bigdata.html

你可能感兴趣的:(大数据基础学习总结)