【大数据技术基础】 课程 第1章 大数据技术概述 大数据基础编程、实验和案例教程(第2版)

第1章 大数据技术概述

1.1 大数据时代

这本书的标题是《大数据时代》,副标题为"生活、工作与思维的大变革"。这本书由维克托·迈尔-舍恩伯格(Viktor Mayer-Schönberger)和肯尼斯·库克耶(Kenneth Cukier)合著,由浙江人民出版社发行。这本书深入探讨了大数据如何改变我们的生活和工作方式,以及它对我们的思维方式带来的影响。书中讨论了大数据的潜力和挑战,以及如何在各个领域中利用大数据来获得洞察力和价值。这本书对于理解大数据的概念、应用和影响非常有帮助。

1.2 大数据关键技术

|---------|--------------------------------------------------------------------------------------------------------------------------|
| 技术层面 | 功能 |
| 数据采集 | 利用ETL工具将分布的、异构数据源中的数据如关系数据、平面数据文件等,抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础;或者也可以把实时采集的数据作为流计算系统的输入,进行实时处理分析 |
| 数据存储和管理 | 利用分布式文件系统、数据仓库、关系数据库、NoSQL数据库、云数据库等,实现对结构化、半结构化和非结构化海量数据的存储和管理 |
| 数据处理与分析 | 利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析;对分析结果进行可视化呈现,帮助人们更好地理解数据、分析数据 |
| 数据隐私和安全 | 在从大数据中挖掘潜在的巨大商业价值和学术价值的同时,构建隐私数据保护体系和数据安全体系,有效保护个人隐私和数据安全 |
[大数据技术的不同层面及其功能]

两大核心技术:

分布式存储和分布式处理。

  1. 分布式存储

    • 图中左侧部分描述了大数据如何被存储在分布式系统中。
    • 包括的存储技术有:
      • GFS/HDFS:Google File System/Hadoop Distributed File System,分布式文件系统,用于存储大规模数据。
      • BigTable/HBase:分布式的、可扩展的大数据存储系统,用于处理大规模结构化数据。
      • NoSQL:非关系型数据库,如键值、列族、图形、文档数据库,用于存储和管理非结构化或半结构化数据。
      • NewSQL:新型关系数据库,如SQL Azure,旨在提供传统关系数据库的ACID特性和NoSQL数据库的水平扩展能力。
  2. 分布式处理

    • 图中右侧部分描述了大数据如何被处理。
    • MapReduce :一种编程模型,用于大规模数据集的并行处理。它包括两个主要步骤:
      • Map:将输入数据分割成键值对,并进行处理。
      • Reduce:对Map步骤的输出进行汇总和进一步处理。

|---------|-----------------|------------------------------------------------------------------|
| 大数据计算模式 | 解决问题 | 代表产品 |
| 批处理计算 | 针对大规模数据的批量处理 | MapReduce、Spark等 |
| 流计算 | 针对流数据的实时计算 | Flink、Storm、S4、Flume、Streams、Puma、DStream、Super Mario、银河流数据处理平台等 |
| 图计算 | 针对大规模图结构数据的处理 | Pregel、GraphX、Giraph、PowerGraph、Hama、GoldenOrb等 |
| 查询分析计算 | 大规模数据的存储管理和查询分析 | Dremel、Hive、Cassandra、Impala等 |
[大数据计算模式及其代表产品]

1.3 大数据软件

|---------|----------------------------|
| 大数据技术 | 大数据软件 |
| 数据采集 | Kafka |
| 数据存储与管理 | HDFS、HBase、Redis、MongoDB |
| 数据处理与分析 | MapReduce、Spark、Hive、Flink |
| 数据可视化 | D3、ECharts |
[本教程所涉及的大数据软件]

1.3.1 Hadoop

1.3.2 Spark

BDAS架构

1.4 内容安排

本教程中涉及的相关大数据软件

本教程中大数据软件之间的相互关系

1.5 本章小结

大数据技术是一个庞杂的知识体系,包含了大量相关技术和软件。在具体学习相关技术及其软件之前,非常有必要建立对大数据技术体系的整体性认识。因此,本章首先从总体上介绍了大数据关键技术和各类大数据软件。鉴于不同的大数据学习者有着不同的学习需求,为了方便读者迅速找到对应的学习章节,本章给出了本教程的整体内容安排。此外,与教程配套的相关资源的建设,是帮助读者更加有效、高效学习本教程的重要方面,因此,本章最后详细列出了与本教程配套的各种丰富的在线资源,全部可以通过网络自由免费访问。

相关推荐
一只栖枝5 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
桦说编程7 小时前
Java 中如何创建不可变类型
java·后端·函数式编程
lifallen7 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研7 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
没有bug.的程序员8 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋8 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
阿华的代码王国8 小时前
【Android】RecyclerView复用CheckBox的异常状态
android·xml·java·前端·后端
Zyy~8 小时前
《设计模式》装饰模式
java·设计模式
A尘埃9 小时前
企业级Java项目和大模型结合场景(智能客服系统:电商、金融、政务、企业)
java·金融·政务·智能客服系统
喂完待续9 小时前
Apache Hudi:数据湖的实时革命
大数据·数据仓库·分布式·架构·apache·数据库架构