- 3
- 0
- 约1.87千字
- 约 11页
- 2021-02-01 发布于山东
- 举报
大数据学习问题及答案汇总
HDFS 管道流方式导入,如何转变成文件存储答:写入文件的过程比读取较为复杂:
使用 HDFS 提供的客户端开发库 Client ,向远程的 Namenode
发起 RPC 请求;
Namenode 会检查要创建的文件是否已经存在,创建者是否
有权限进行操作, 成功则会为文件创建一个记录, 否则会让客户
端抛出异常;
当客户端开始写入文件的时候, 开发库会将文件切分成多个
packets,并在内 部以数据队 列 data queue的形式 管理这些
packets,并向 Namenode 申请新的 blocks,获取用来存储 replicas
的合适的 datanodes 列表,列表的大小根据在 Namenode 中对
replication 的设置而定。
开始以 pipeline(管道)的形式将 packet 写入所有的 replicas
中。开发库把
packet 以流的方式写入第一个
datanode,该
datanode
把该
packet
存储之后,再将其传递给在此
pipeline
中的下一个
datanode,直到最后一个 datanode,这种写数据的方式呈流水线
的形式。
最后一个 datanode成功存储之后会返回一个 ack packet,在
pipeline 里传递至客户端,在客户端的开发库内部维护着 ack
queue,成功收到 datanode返回的 ack packet 后会从 ack queue
移除相应的 packet。
如果传输过程中, 有某个 datanode出现了故障, 那么当前的
pipeline 会被关闭,出现故障的 datanode 会从当前的 pipeline 中移除,剩余的 block 会继续剩下的 datanode中继续以 pipeline 的形式传输,同时 Namenode会分配一个新的 datanode,保持 replicas 设定的数量。
HDFS 有哪些开源的第三方导入工具
答: Cloudera 官方提供 HTTP 方式连接 HDFS 工具: Hoop
hoop简介.doc
3. HBase 有哪些第三方 Client 工具
答:没有搜到,网上有一些爱好者自己写了些小工具,有 PHP
的有 C#的,也有 java 的,但是都没经过正式测试
Hive 集群部署方式
答:只需要部署一台机器, 不必须装到 master 节点,只要那台机
器上装了 hadoop,能够正确指向 master 地址
Reduce方法不排序结果的验证答:待验证
Impala 各版本支持情况
答:最新版本 1.0,全面支持 HDFS
LLVM 是什么
答: LLVM 命名最早源自于底层虚拟机( Low Level Virtual
Machine)的缩写
LLVM 是 Illinois 大学发起的一个开源项目, 和之前为大家所熟
知的 JVM 以及 .net Runtime 这样的虚拟机不同,这个虚拟系统
提供了一套中立的中间代码和编译基础设施, 并围绕这些设施提
供了一套全新的编译策略(使得优化能够在编译、连接、运行环
境执行过程中, 以及安装之后以有效的方式进行) 和其他一些非
常有意思的功能。
2000 年 LLVM 开始开发。
2005 年 Apple 雇了 Chris Lattner ,LLVM 也相当于成了 Apple 的
官方支持的编译器。
Apple 已经将它用在 OpenCL 的流水线优化, Xcode 已经能使用
llvm-gcc 编译代码。
2011-12-02 LLVM3.0 发布,LLVM 包括了一系列子项目, 它们也
同步发布了新版本,如 C/C++/Objective-C 前端 Clang 3.0 改进了C++程序编译支持;改进 C++ 2011 标准支持;实现支持即将发布的 C1x 标准的某些特性; 更快的生成代码, 更快的编译,等等。
Data locality 的 I/O 调度机制的说明
答:遵循先均匀分配再均衡负载的算法, 分配任务各自尽量在单个计算节点上完成
Impala 自身处理以及其任务互相分配互相监控的实现原理
答 :
是否有不属于列族的列
答:hbase表中的每个列, 都归属与某个列族, 列族是表的 chema
的一部分,而列不是,列族必须在使用表之前定义。列名都以列
族为前缀
原创力文档

文档评论(0)