一、Java中map,list,set的区别是什么?
1.继承的接口不同
List和set接口都是继承于Collection接口的,而Map接口不是,他是一个顶层接口。
2.自身特点
List:用来处理序列的。对于放入的元素是有序的并且可以重复。
Set:用来处理集合的。对于放入的元素是无序的并且不可重复。
Map:用来处理键值对。Key值不能重复,如果重复,则会被覆盖,并且放入无序。
二、请用shell命令把hadoop集群中的某一个文件下的所有文件分发到其他的机器上?
方式一:scp -r /opt root@10.10.10.10:/opt
-r表示递归复制
方式二:rcp -r /opt root@10.10.10.10:/opt
三、如何正确杀死一个运行在hadoop中的job?
1.查看当前正在执行的进程:
sh hadoop job -list
2.执行杀死进程的命令:
hadoop job -kill job_201212111628_11166
四、在做hbase和hive表设计时,如何正确选择一种合适的数据压缩算法?
Hadoop中常用的压缩算法有bzip2、gzip、lzo、snappy,其中lzo、snappy需要操作系统安装native库才可以支持。
其中:
1)GZIP的压缩率最高,但是其实CPU密集型的,对CPU的消耗比其他算法要多,压缩和解压速度也慢;
2)LZO的压缩率居中,比GZIP要低一些,但是压缩和解压速度明显要比GZIP快很多,其中解压速度快的更多;
3)Zippy/Snappy的压缩率最低,而压缩和解压速度要稍微比LZO要快一些。
我们集群现在hive设置默认snappy压缩,
而parquet的压缩格式设置为parquet.compression=snappy,
以前setmapred.output.compression=org.apache.hadoop.io.compress.SnappyCodec不起作用。
Orc的压缩格式设置方法为:orc.compress=SNAPPY,默认为ZLIB.
五、Hive中insert into和override write区别?
insert into:将某一张表中的数据写到另一张表中
override write:覆盖之前的内容。
六、Hive表被锁,导致drop和insert命令均不可用,应当如何解锁?
发现表(fact_hz_zlfa)被锁,
临时解决方案:对表解锁
unlock table fact_hz_zlfa ;
彻底解决方案:
find / -name hive-site.xml
关闭锁机制:
set hive.support.concurrency=false; 默认为true
欢迎关注我的公众号——数据杨公子。本公众号会分享包括但不限于大数据、数据治理、元数据管理、python 等方面的技术文章,主旨是和大家一起共同成长,用技术来认识我们这个数据的时代。