1、目前这些数据说是要通过一些算法什么进行计算。但是我要怎么能使用这些数据?
有很多算法是现成的,比如spark有专门的算法库,当然hadoop中也可以嵌入算法,对于hdfs的这些数据的使用,其实很简单,但是这个需要你有最基本的常识,否则还是跟说书一样。
首先我们需要会使用hadoop shell,这是最最基本的,(只要安装部署好集群,然后使用hadoop命令即可),详细参考:
Hadoop Shell命令字典(可收藏)
这里面的
shell命令
是查看目录:
hadoop fs -ls /user/hadoop/file1
查看hdfs文件内容:
hadoop fs -tail pathname
--------------------------------------------------------------
程序中操作hdfs文件
那么我们在程序中,如何使用这些数据,最基本的形式,如下
复制代码 这句话的含义就是访问:hdfs文件下的yy1文件。
当然还有api,对hdfs的编程,也就是对hdfs各种数据的使用,比如上传、创建文件、创建目录等
Java创建hdfs文件实例
hadoop实战:Java对hdfs的编程
2、hive 是有大量查询操作的时候会使用到。我们现在需要利用数据计算出结果,会用到hive吗?
hive在做数据统计分析的时候会用到,hbase在大量查询的时候会用到。
下面详细可以参考,主要能够明白,hive做统计,hbase查询即可
它们的区别
hive与hbase的十大区别与联系
hive统计:
面试题:分别使用Hadoop MapReduce、hive统计手机流量
不错:基于hive的日志数据统计实战
hbase查询:
每天有50G左右的数据文件,存入HBASE中做查询的方案
优化hbase的查询优化-大幅提升读写速率
HBase如何实现多条件查询
Hbase使用filter快速高效查询
3、hbase到底会在什么情况下使用?(而且hbase上的数据格式跟HDFS的不一样,这个我们做计算会需要用到hbase吗?)
hbase上述已经说的很明白,大数据量查询的时候会用到,比如hbase就是谷歌的bigtable,我们谷歌查询为什么这么快,就是因为使用了bigtable.
你们会不会用到,就看你们业务了。
4、写map reduce程序或者是spark 操作数据,是怎么操作HDFS上的数据的?(这个很困惑)
mapreduce会使用hadoop api操作hdfs数据,跟第一个问题类似,详细参考
新手指导,该如何在开发环境中,创建mapreduce程序
MapReduce初级案例(3):使用MapReduce实现平均成绩
5、这些数据我都是利用sqoop从各个数据库中导入到HDFS上的。都是这种txt格式。这种格式有什么缺点吗?
数据的格式多种多样的,看你什么项目,如果你们的项目采用的是log的方式,不能说这是缺点,程序能兼容就行。
6、希望大神能大概说一下,针对目前我们的需要(通过算法结合数据进行计算) 需要使用到Hadoop的哪些功能?
hadoop包含了hdfs文件系统及mapreduce计算模型,如果使用了hadoop也跑不出这两个,可能会和其他工具相结合。
|