1、结构化、半结构化和非结构化数据的不同类型数据源有哪些?
- 结构化数据的数据源 :
- 传感器
- 位置追踪器
-
数据库(客户数据、库存数据、历史数据等)
-
半结构化数据的数据源 :
-
推文的标签
-
非结构化数据的数据源 :
- 社交媒体(如 Twitter、Facebook、Instagram 等平台的内容)
- 电子邮件
- 消息
2、描述数据分析中选择变量的关键考虑因素。
- 选择变量的关键考虑因素包括:
- 识别用于模型构建的变量,进一步拓展探索目标以进行分析;
- 使用小型可视化工具查看数据集,识别可选择的变量及其相关性,例如通过散点图识别变量;
- 团队中不同利益相关者对用于分析的变量可能有直觉判断,第一阶段形成的假设也可能影响变量选择;
- 但两者不应相互依赖,需根据所选数据变量接受或拒绝假设;
- 关键是选择用于预测的正确变量,而非对每个变量进行单独分析;
- 变量选择可能是一个迭代过程,需识别分析所需的关键变量,避免在后续步骤中更改所选模型。
3、描述MapReduce在Hadoop中的工作流程。
当在 Hadoop 上运行 MapReduce 程序时,主要涉及 HDFS、客户端、JobTracker 和 TaskTracker 等实体。MapReduce 工作流程如下:
-
输入处理 :
Map 函数接收输入,根据分隔符从输入中获取<键, 值>对。例如,在 CSV 文件中用逗号分隔输入。 -
洗牌(Shuffle) :
为从输入中获取的每个键分配一个值,对<键, 值>对进行洗牌操作。 -
排序(Sort) :
先基于键对<键, 值>对进行排序。 -
规约(Reduce) :
规约阶段将对应于一个键的所有值相加得到输出。
Hadoop 中的数据节点从 NameNode 分配 MapReduce 任务,可同时执行 Map 和 Reduce 任务。通过为一个节点分配映射任务,另一个节点分配规约任务来实现并行性。完成映射任务的节点可继续处理其他映射任务。
4、NameNode是Hadoop的备用节点吗?请结合Hadoop架构解释其重要性。
NameNode不是Hadoop的备用节点。在Hadoop架构中,NameNode是主节点,包含HDFS中存储文件的元数据,是了解集群配置的单点接触点。它维护集群配置、数据节点数量、MapReduce作业运行和完成情况、集群内存等信息。通过它,用户可以在安装Hadoop后,通过 localhost:8080 了解集群信息。NameNode负责将文件以块的形式分配到数据节点,自动处理文件分块,用户无需关注。
5、用一个例子解释 Hive 中外部表和内部表的区别。
在 Hive 中,内部表和外部表有以下区别:
-
数据存储位置 :
内部表的数据存储在 HDFS 的 Hive 仓库目录下,外部表的数据可以存储在 HDFS 上用户指定的任意位置。 -
删除表时数据的处理 :
删除内部表时,表的元数据和存储在 HDFS 仓库目录下的数据都会被删除;而删除外部表时,仅删除表的元数据,数据不会被删除。
例如,创建内部表:
Hive> create table students(name string, age int, branch string, cgpa float) row format delimited fields terminated by ',';
创建外部表:
Hive> create external table student_external(name string, age int, branch string, cgpa float) row format delimited fields terminated by ',';
这里创建了内部表 students 和外部表 student_external ,当删除 students 表时,其对应的数据也会被删除;而删除 student_external 表时,其对应的数据仍然会保留在指定位置。
6、解释 Hive 中的不同数据类型。
Hive 支持多种数据类型,用于在表中指定不同类型的数据,具体如下:
- int :指定表中的整数数据,例如
create table data_type (d1 int)。 - float :指定表中的浮点数据,例如
create table data_type (d2 float)。 - double :指定表中的双精度数据,例如
create table data_type (d3 double)。 - decimal :指定表中的十进制数据,例如
create table data_type (d4 decimal)。

最低0.47元/天 解锁文章
1008

被折叠的 条评论
为什么被折叠?



