Hadoop面试中6个常见的问题及答案

  • 格式:docx
  • 大小:20.99 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Hadoop面试中6个常见的问题及答案

你准备好面试了吗?呀,需要Hadoop 的知识!!?不要慌!这里有一些可能会问到的问题以及你应该给出的答案。

Q1.什么是Hadoop?

Hadoop 是一个开源软件框架,用于存储大量数据,并发处理/查询在具有多个商用硬件(即低成本硬件)节点的集群上的那些数据。总之,Hadoop 包括以下内容:HDFS(Hadoop Distributed File System,Hadoop 分布式文件系统):HDFS 允许你以一种分布式和冗余的方式存储大量数据。例如,1 GB(即1024 MB)文本文件可以拆分为16 * 128MB 文件,并存储在Hadoop 集群中的8 个不同节点上。每个分裂可以复制3 次,以实现容错,以便如果1 个节点故障的话,也有备份。HDFS 适用于顺序的“一次写入、多次读取”的类型访问。

MapReduce:一个计算框架。它以分布式和并行的方式处理大量的数据。当你对所有年龄> 18 的用户在上述1 GB 文件上执行查询时,将会有“8 个映射”函数并行运行,以在其128 MB 拆分文件中提取年龄> 18 的用户,然后“reduce”函数将运行以将所有单独的输出组合成单个最终结果。

YARN(Yet Another Resource Nagotiator,又一资源定位器):用于作业调度和集群资源管理的框架。

Hadoop 生态系统,拥有15 多种框架和工具,如Sqoop,Flume,Kafka,Pig,Hive,Spark,Impala 等,以便将数据摄入HDFS,在HDFS 中转移数据(即变换,丰富,聚合等),并查询来自HDFS 的数据用于商业智能和分析。某些工具(如Pig 和Hive)是

MapReduce 上的抽象层,而Spark 和Impala 等其他工具则是来自MapReduce 的改进架构/设计,用于显著提高的延迟以支持近实时(即NRT)和实时处理。

Q2.为什么组织从传统的数据仓库工具转移到基于Hadoop 生态系统的智能数据中心?

Hadoop 组织正在从以下几个方面提高自己的能力:

现有数据基础设施:

1、主要使用存储在高端和昂贵硬件中的“structured data,结构化数据”

2、主要处理为ETL 批处理作业,用于将数据提取到RDBMS 和数据仓库系统中进行数据挖掘,分析和报告,以进行关键业务决策。

3、主要处理以千兆字节到兆字节为单位的数据量

基于Hadoop 的更智能的数据基础设施:

1、其中结构化(例如RDBMS),非结构化(例如images,PDF,docs )和半结构化(例如logs,XMLs)的数据可以以可扩展和容错的方式存储在较便宜的商品机器中。

2、可以通过批处理作业和近实时(即,NRT,200 毫秒至2 秒)流(例如Flume 和Kafka)来摄取数据。

3、数据可以使用诸如Spark 和Impala 之类的工具以低延迟(即低于100 毫秒)的能力查询。

4、可以存储以兆兆字节到千兆字节为单位的较大数据量。

这使得组织能够使用更强大的工具来做出更好的业务决策,这些更强大的工具用于获取数据,转移存储的数据(例如聚合,丰富,变换等),以及使用低延迟的报告功能和商业智能。

Q3.更智能&更大的数据中心架构与传统的数据仓库架构有何不同?

传统的企业数据仓库架构

基于Hadoop 的数据中心架构

Q4.基于Hadoop 的数据中心的好处是什么?

随着数据量和复杂性的增加,提高了整体SLA(即服务水平协议)。例如,“Shared Nothing”架构,并行处理,内存密集型处理框架,如Spark 和Impala,以及YARN 容量调度程序中的资源抢占。

缩放数据仓库可能会很昂贵。添加额外的高端硬件容量以及获取数据仓库工具的许可证可能会显著增加成本。基于Hadoop 的解决方案不仅在商品硬件节点和开源工具方面更便宜,而且还可以通过将数据转换卸载到Hadoop 工具(如Spark 和Impala)来补足数据仓库解决方案,从而更高效地并行处理大数据。这也将释放数据仓库资源。

探索新的渠道和线索。Hadoop 可以为数据科学家提供探索性的沙盒,以从社交媒体,日志文件,电子邮件等地方发现潜在的有价值的数据,这些数据通常在数据仓库中不可得。

更好的灵活性。通常业务需求的改变,也需要对架构和报告进行更改。基于Hadoop 的解决方案不仅可以灵活地处理不断发展的模式,还可以处理来自不同来源,如社交媒体,应用程序日志文件,image,PDF 和文档文件的半结构化和非结构化数据。

Q5.大数据解决方案的关键步骤是什么?

提取数据,存储数据(即数据建模)和处理数据(即数据加工,数据转换和查询数据)。

提取数据

从各种来源提取数据,例如:

RDBM(Relational Database Management Systems)关系数据库管理系统,

如Oracle,MySQL等。

ERPs(Enterprise Resource Planning)企业资源规划(即ERP)系统,如SAP。

CRM(Customer Relationships Management)客户关系管理系统,如Siebel,Salesforce 等

社交媒体Feed 和日志文件。

平面文件,文档和图像。

并将其存储在基于“Hadoop 分布式文件系统”(简称HDFS)的数据中心上。可以通过批处理作业(例如每15 分钟运行一次,每晚一次,等),近实时(即100 毫秒至2 分钟)流式传输和实时流式传输(即100 毫秒以下)去采集数据。

Hadoop 中使用的一个常用术语是“Schema-On-Read”。这意味着未处理(也称为原始)的数据可以被加载到HDFS,其具有基于处理应用的需求在处理之时应用的结构。这与“Schema-On-Write”不同,后者用于需要在加载数据之前在RDBM 中定义模式。存储数据

数据可以存储在HDFS 或NoSQL 数据库,如HBase。HDFS 针对顺序访问和“一次写入和多次读取”的使用模式进行了优化。HDFS 具有很高的读写速率,因为它可以将I / O 并行到多个驱动器。HBase 在HDFS 之上,并以柱状方式将数据存储为键/值对。列作为列家族在一起。HBase 适合随机读/写访问。在Hadoop 中存储数据之前,你需要考虑以下几点:

1、数据存储格式:有许多可以应用的文件格式(例如CSV,JSON,序列,AVRO,Parquet 等)和数据压缩算法(例如snappy,LZO,gzip,bzip2 等)。每个都有特殊的优势。像LZO 和bzip2 的压缩算法是可拆分的。

2、数据建模:尽管Hadoop 的无模式性质,模式设计依然是一个重要的考虑方面。这包括存储在HBase,Hive 和Impala 中的对象的目录结构和模式。Hadoop 通常用作整个组织的数据中心,并且数据旨在共享。因此,结构化和有组织的数据存储很重要。