大数据与机器学习核心概念解析

1、结构化、半结构化和非结构化数据的不同类型数据源有哪些?

  • 结构化数据的数据源
  • 传感器
  • 位置追踪器
  • 数据库(客户数据、库存数据、历史数据等)

  • 半结构化数据的数据源

  • 推文的标签

  • 非结构化数据的数据源

  • 社交媒体(如 Twitter、Facebook、Instagram 等平台的内容)
  • 电子邮件
  • 消息

2、描述数据分析中选择变量的关键考虑因素。

  • 选择变量的关键考虑因素包括:
  • 识别用于模型构建的变量,进一步拓展探索目标以进行分析;
  • 使用小型可视化工具查看数据集,识别可选择的变量及其相关性,例如通过散点图识别变量;
  • 团队中不同利益相关者对用于分析的变量可能有直觉判断,第一阶段形成的假设也可能影响变量选择;
    • 但两者不应相互依赖,需根据所选数据变量接受或拒绝假设;
  • 关键是选择用于预测的正确变量,而非对每个变量进行单独分析;
  • 变量选择可能是一个迭代过程,需识别分析所需的关键变量,避免在后续步骤中更改所选模型。

3、描述MapReduce在Hadoop中的工作流程。

当在 Hadoop 上运行 MapReduce 程序时,主要涉及 HDFS、客户端、JobTracker 和 TaskTracker 等实体。MapReduce 工作流程如下:

  1. 输入处理
    Map 函数接收输入,根据分隔符从输入中获取 <键, 值> 对。例如,在 CSV 文件中用逗号分隔输入。

  2. 洗牌(Shuffle)
    为从输入中获取的每个键分配一个值,对 <键, 值> 对进行洗牌操作。

  3. 排序(Sort)
    先基于键对 <键, 值> 对进行排序。

  4. 规约(Reduce)
    规约阶段将对应于一个键的所有值相加得到输出。

Hadoop 中的数据节点从 NameNode 分配 MapReduce 任务,可同时执行 Map 和 Reduce 任务。通过为一个节点分配映射任务,另一个节点分配规约任务来实现并行性。完成映射任务的节点可继续处理其他映射任务。

4、NameNode是Hadoop的备用节点吗?请结合Hadoop架构解释其重要性。

NameNode不是Hadoop的备用节点。在Hadoop架构中,NameNode是主节点,包含HDFS中存储文件的元数据,是了解集群配置的单点接触点。它维护集群配置、数据节点数量、MapReduce作业运行和完成情况、集群内存等信息。通过它,用户可以在安装Hadoop后,通过 localhost:8080 了解集群信息。NameNode负责将文件以块的形式分配到数据节点,自动处理文件分块,用户无需关注。

5、用一个例子解释 Hive 中外部表和内部表的区别。

在 Hive 中,内部表和外部表有以下区别:

  1. 数据存储位置
    内部表的数据存储在 HDFS 的 Hive 仓库目录下,外部表的数据可以存储在 HDFS 上用户指定的任意位置。

  2. 删除表时数据的处理
    删除内部表时,表的元数据和存储在 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 支持多种数据类型,用于在表中指定不同类型的数据,具体如下:

  1. int :指定表中的整数数据,例如 create table data_type (d1 int)
  2. float :指定表中的浮点数据,例如 create table data_type (d2 float)
  3. double :指定表中的双精度数据,例如 create table data_type (d3 double)
  4. decimal :指定表中的十进制数据,例如 create table data_type (d4 decimal)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值