【大数据技术基础】 课程 第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 本章小结

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

相关推荐
豪越大豪44 分钟前
2024年智慧消防一体化安全管控年度回顾与2025年预测
大数据·科技·运维开发
努力搬砖的程序媛儿1 小时前
uniapp悬浮可拖拽按钮
java·前端·uni-app
互联网资讯1 小时前
详解共享WiFi小程序怎么弄!
大数据·运维·网络·人工智能·小程序·生活
上海拔俗网络1 小时前
“AI开放式目标检测系统:开启智能识别新时代
java·团队开发
Leaf吧1 小时前
springboot 配置多数据源以及动态切换数据源
java·数据库·spring boot·后端
狮歌~资深攻城狮2 小时前
TiDB出现后,大数据技术的未来方向
数据库·数据仓库·分布式·数据分析·tidb
狮歌~资深攻城狮2 小时前
TiDB 和信创:如何推动国产化数据库的发展?
数据库·数据仓库·分布式·数据分析·tidb
java1234_小锋2 小时前
Java中如何安全地停止线程?
java·开发语言
栗子~~2 小时前
基于quartz,刷新定时器的cron表达式
java
杨过姑父2 小时前
Servlet3 简单测试
java·servlet