摘要:
类本身属于引用类型,所以对于引用类型就必须为其进行内存分析,那么在分析之前,首先给出两块内存空间的概念: 堆内存空间(Heap):保存的是对象中具体的属性信息; 栈内存空间(Stack):是保存的堆内存的地址数值,所以现在可以简化一点,假设保存在栈内存中的是对象名称,一个栈内存只能够保存一块对应的堆 阅读全文
摘要:
这里主要讲bash shell 变量 等号之间不能有空格,直接定义变量 追加字符串yes:name=me=${name}yes 特殊变量:环境变量 通过env命令查找,其中一个path环境变量,例如执行ls命令,系统就会去找path下/usr/bin下的ls命令(其中有很多命令)。 把普通变量变成环 阅读全文
摘要:
HDFS的NameNode类似,如果Yarn的ResourceManager挂掉了怎么办,我们需要配置ResourceManager的高可用性(一个挂掉,另一个可以接着起来干活),这里同样可以使用Zookeeper的master选举机制来实现 1、保证zookeeper服务正常,分别到master、 阅读全文
摘要:
我们开辟出两个队列,一个是生产上需要的队列prod,一个是开发上需要的队列dev,开发下面又分了eng工程师和science科学家,我们这样就可以指定队列 1、关闭yarn, stop-yarn.sh 2、先备份$HADOOP_HOME/etc/hadoop/capacity-scheduler.x 阅读全文
摘要:
1、先关闭yarn, stop-yarn.sh 2、开启fair机制:在yarn-site.xml中配置: <property> <name>yarn.resourcemanager.scheduler.class</name> <value>org.apache.hadoop.yarn.serve 阅读全文
摘要:
在企业中并不是只有一个人来执行MapReduce程序单独使用Yarn的资源,实际开发中,会有很多人一起使用Yarn这个资源,如果每个人都提交了job,这个时候Yarn就需要进行调度去分配资源给job, 下面三种调度机制,默认的是FIFO机制,这种机制是先进先出队列机制,在企业中基本不会使用,第二种机 阅读全文
摘要:
通过一定的算法对数据进行特殊编码,使得数据占用的存储空间比较小,这个过程我们称之为压缩,反之为解压缩 不管哪种压缩工具都需要权衡时间和空间 在大数据领域内还要考虑压缩文件的可分割性 Hadoop支持的压缩工具有:DEFLATE、gzip、bzip以及Snappy 压缩与解压:CompressTest 阅读全文
摘要:
在不同的两个HDFS集群中拷贝数据,我们可以使用distcp,集群之间拷贝数据的正确姿势是: hadoop distcp hdfs://master1:9999/foo/bar hdfs://master2:9999/bar/foo 上面的意思是将集群master1上的文件foo/bar拷贝到mas 阅读全文
摘要:
向MR申请的内存默认是1024,但不想用默认的内存分配,如何配置? 内存分配配置 在mapred-site.xml中增加如下配置: <property> <name>yarn.app.mapreduce.am.resource.mb</name> <value>1200</value> <descr 阅读全文
摘要:
HA:High Available(高可用性) 集群规划: 集群规划讲解: 两个NameNode之间需要数据进行同步,使用Journal nodes来同步,这个进程建议部署奇数个(3、5等)。 两个NameNode,哪一个才是masterNameNode呢,需要使用Zookeeper来选举。 Zoo 阅读全文
摘要:
为什么需要Zookeeper? 为了防止集群的主NameNode挂掉,再另创建一个辅NameNode,两个保持数据同步,一旦主NameNode挂掉,集群就会把辅NameNode节点作为整个集群的主NameNode,而在这之间就需要用到Zookeeper来协调,帮助辅NameNode成为整个集群的主N 阅读全文
摘要:
每台机器的应用程序都需要连接数据库,而数据库的配置信息(连接信息),这时候放在机器本地的话不方面(机器多,需要一个个改配置信息),这就用到Zookeeper,把数据库的配置信息放到配置中心,利用Zookeeper节点可以存储数据的特性,然后各台机器可以使用JavaAPI去获取Zookeeper中数据 阅读全文
摘要:
如果要master机器挂掉,单机版的Zookeeper就提供不了服务了,所以要多安装几个节点的Zookeeper服务,所以要安装分布式的Zookeeper 进入到zk中的conf目录,配置zoo.cfg文件,如下: vi zoo.cfg 填写如下配置: server.0=master:8880:77 阅读全文
摘要:
rebalance 有时候HDFS集群并不平衡,可能在一个DataNode中数据量很多,而另一个DataNode中数据量很少,这就导致整个集群使用率低,有些节点压力小,有些节点压力大,集群不稳定。加入刚加进来一个DataNode节点,压力比较轻,而别的DataNode节点负载压力中,需要平衡一下数据 阅读全文
摘要:
Snapshots用于数据备份、保护数据不被破坏 基本命令 允许这个文件路径可以创建snapshots: hdfs dfsadmin -allowSnapshot /user/hadoop-twq/cmd 创建snapshots hdfs dfs -createSnapshot /user/hado 阅读全文
摘要:
NameNode怎样扩展? 首先要明确为什么要扩展NameNode,因为NameNode存储在内存中,而内存容量是有限的,当一台节点NameNode内存满了,不足以存放的时候,就需要扩展,(NameNode管理了很多文件,每个文件下又有很多数据块,数据会膨胀的很厉害,当集群大到一定程度的时候,上亿, 阅读全文
摘要:
为了解决Federation配置的问题(访问集群的时候我们要记住每个NameNode所在节点的名称) ViewFS配置(在master节点配置): 配置前先关闭集群 1、配置core-site.xml: 将原本的文件: <configuration > <property> <name>fs.def 阅读全文
摘要:
创建一个321M的big_file.txt文件: 写一个脚本:vi test.sh,内容: #!/bin/bash for((i=0;i<=$1;i++)) do echo "just an example" >> big_file.txt done 执行脚本:bash test.sh 100(增加 阅读全文
摘要:
Linux中,rm put.txt是恢复不出来的 hdfs中,hadoop fs -rm /user/hadoop-twq/cmd/put.txt恢复不出来 如果想要删完之后还可以找到,hdfs提供了trash机制(默认是关闭的) 需要在core-site.xml配置: <property> <na 阅读全文
摘要:
在master上以hadoop-twq用户登录 cd ~、ls / 查看HDFS文件目录: hadoop fs -ls hdfs://master:9999/(当前还没有文件) 效果等同于:hadoop fs -ls / 效果也等同于:hdfs dfs -ls / 在这个根目录创建一个文件或目录: 阅读全文