大数据时代的引擎:大数据架构随记

简介: 大数据架构通常分为四层:数据采集层、数据存储层、数据计算层和数据应用层。数据采集层负责从各种源采集、清洗和转换数据,常用技术包括Flume、Sqoop和Logstash+Filebeat。数据存储层管理数据的持久性和组织,常用技术有Hadoop HDFS、HBase和Elasticsearch。数据计算层处理大规模数据集,支持离线和在线计算,如Spark SQL、Flink等。数据应用层将结果可视化或提供给第三方应用,常用工具为Tableau、Zeppelin和Superset。

大数据架构通常可以分为以下几层:


添加图片注释,不超过 140 字(可选)


一、数据采集层


添加图片注释,不超过 140 字(可选)


负责从各种数据源采集、清洗、转换、丰富以及格式化数据,可能包括结构化、半结构化和非结构化的数据。

1.1、常用的技术

在大数据领域,数据采集是一个关键的环节,常用的数据采集技术包括:

  1. Flume:Apache Flume是一个分布式、可靠、并且可用于高可用性环境的日志收集、聚合和传输系统。它通常用于从各种数据源(如网络服务器日志、传感器数据等)收集大量数据,并将其传输到数据存储或处理系统中。
  2. Sqoop:Apache Sqoop是用于在Apache Hadoop和关系型数据库之间进行数据传输的工具。它允许用户将结构化数据从关系型数据库(如MySQL、Oracle等)导入到Hadoop生态系统中(如HDFS、Hive等),也可以将数据从Hadoop导出到关系型数据库中。
  3. Logstash+Filebeat:Logstash是一个开源的日志收集和处理引擎,它可以从多个来源收集数据、转换数据格式并将数据发送到各种目的地。Filebeat是一个轻量级的日志收集工具,通常与Logstash配合使用,用于收集和传输日志文件。Logstash负责对数据进行过滤、解析和转换,然后将其发送到目标存储或处理系统(如Elasticsearch、Hadoop等)。

1.2、数据分类

结构化、半结构化和非结构化数据是指在数据管理和处理中的不同类型的数据:

  1. 结构化数据:这些数据以一种预定义的模型或格式进行组织,通常存储在数据库表格中,并且可以轻松地通过查询语言(如SQL)进行访问和处理。结构化数据具有明确定义的数据模式,其字段和值之间的关系清晰明确。例如,关系型数据库中的表格数据就是一种典型的结构化数据,其中每一列都有特定的数据类型,而每一行代表一个记录或实体。
  2. 半结构化数据:这类数据包含结构化数据和非结构化数据的混合体。虽然它们没有严格的数据模型,但它们可能具有某种程度的标记或标签,以便组织和查询。半结构化数据通常以XML、JSON等格式存储,具有层次结构或标记,但不像结构化数据那样具有明确的模式。例如,XML文档或JSON对象就是半结构化数据的常见形式,其中包含了数据的结构化组织,但某些字段可能是可选的或者不具有严格的数据类型。
  3. 非结构化数据:这种类型的数据没有明确的结构或组织方式,通常以自然语言、图像、音频或视频等形式存在。非结构化数据不容易用传统的数据库或表格来存储和处理,因为它们缺乏明确的模式或格式。例如,文档、电子邮件、社交媒体帖子、图像和视频文件等都属于非结构化数据的范畴。处理非结构化数据通常需要使用特殊的技术和工具,如自然语言处理(NLP)或图像识别技术。


二、数据存储层


添加图片注释,不超过 140 字(可选)


1、主要职能

  1. 持久性存储:数据存储层负责将大数据系统中的数据永久性地保存在存储介质中,以便长期保留和访问。这包括结构化、半结构化和非结构化数据。持久性存储通常需要提供高容量、高可靠性和高性能的存储解决方案。
  2. 数据管理:数据存储层管理数据的组织、存储、备份、恢复和归档等任务。这包括数据的分区、索引、压缩、加密和权限控制等。数据管理的目标是确保数据的完整性、可靠性、安全性和可用性。

2、常用技术

在大数据领域,数据存储层的常用技术包括:

  1. Hadoop HDFS:HDFS是Apache Hadoop的核心组件之一,用于存储大规模数据集。它将数据分散存储在多个节点上,并提供高可靠性、容错性和高吞吐量。
  2. Apache HBase:HBase是一个分布式、面向列的数据库,用于实时读写大规模结构化数据。它建立在Hadoop HDFS之上,提供了高度可扩展性和实时访问能力。
  3. Elasticsearch:Elasticsearch是一个分布式搜索和分析引擎,用于存储和检索大规模半结构化和非结构化数据。它提供了强大的全文搜索、实时分析和数据可视化功能。

三、数据计算层


添加图片注释,不超过 140 字(可选)


大数据计算层的主要职能是处理和分析大规模数据集,以支持数据驱动的决策制定。这一层包括了离线计算和在线计算两个部分,每个部分都有其专用的技术和工具。


离线计算主要用于处理大量的非实时数据。它可以进行深入的数据分析,通常用于生成报告、数据挖掘、机器学习等场景。常用的离线计算技术包括:

  • Spark SQL: 用于执行SQL查询的分布式计算框架。
  • Hadoop MapReduce: 一个可扩展的数据处理工具,适用于大数据集的分析。
  • Apache Impala: 提供高性能、低延迟的SQL查询功能,适用于Hadoop数据。
  • Apache Kylin: 为大规模数据提供OLAP(在线分析处理)功能。
  • Hive: 一个数据仓库工具,可以处理大数据并提供SQL查询功能。

在线计算则更侧重于实时数据处理,支持快速的数据查询和分析,适用于需要即时反馈的应用场景。常用的在线计算技术包括:

  • Spark Streaming: 用于处理实时数据流的分布式计算系统。
  • Flink: 专注于分布式流处理和批处理的开源平台。
  • Storm: 一个实时大数据处理框架。
  • Clickhouse: 一个用于在线分析处理查询的列式数据库管理系统。
  • Presto: 一个分布式SQL查询引擎,适用于大规模数据集。

四、数据应用层

添加图片注释,不超过 140 字(可选)

这一层负责将数据结果可视化或提供给第三方应用,常用的技术有:

  • Tableau:数据可视化工具。
  • Zeppelin:基于Web的笔记本,支持数据驱动、交互式数据分析和协作。
  • Superset:数据探索和可视化平台。


目录
相关文章
|
2天前
|
调度 云计算 芯片
云超算技术跃进,阿里云牵头制定我国首个云超算国家标准
近日,由阿里云联合中国电子技术标准化研究院主导制定的首个云超算国家标准已完成报批,不久后将正式批准发布。标准规定了云超算服务涉及的云计算基础资源、资源管理、运行和调度等方面的技术要求,为云超算服务产品的设计、实现、应用和选型提供指导,为云超算在HPC应用和用户的大范围采用奠定了基础。
|
9天前
|
存储 运维 安全
云上金融量化策略回测方案与最佳实践
2024年11月29日,阿里云在上海举办金融量化策略回测Workshop,汇聚多位行业专家,围绕量化投资的最佳实践、数据隐私安全、量化策略回测方案等议题进行深入探讨。活动特别设计了动手实践环节,帮助参会者亲身体验阿里云产品功能,涵盖EHPC量化回测和Argo Workflows量化回测两大主题,旨在提升量化投研效率与安全性。
云上金融量化策略回测方案与最佳实践
|
11天前
|
人工智能 自然语言处理 前端开发
从0开始打造一款APP:前端+搭建本机服务,定制暖冬卫衣先到先得
通义灵码携手科技博主@玺哥超carry 打造全网第一个完整的、面向普通人的自然语言编程教程。完全使用 AI,再配合简单易懂的方法,只要你会打字,就能真正做出一个完整的应用。
8880 20
|
15天前
|
Cloud Native Apache 流计算
资料合集|Flink Forward Asia 2024 上海站
Apache Flink 年度技术盛会聚焦“回顾过去,展望未来”,涵盖流式湖仓、流批一体、Data+AI 等八大核心议题,近百家厂商参与,深入探讨前沿技术发展。小松鼠为大家整理了 FFA 2024 演讲 PPT ,可在线阅读和下载。
4769 12
资料合集|Flink Forward Asia 2024 上海站
|
15天前
|
自然语言处理 数据可视化 API
Qwen系列模型+GraphRAG/LightRAG/Kotaemon从0开始构建中医方剂大模型知识图谱问答
本文详细记录了作者在短时间内尝试构建中医药知识图谱的过程,涵盖了GraphRAG、LightRAG和Kotaemon三种图RAG架构的对比与应用。通过实际操作,作者不仅展示了如何利用这些工具构建知识图谱,还指出了每种工具的优势和局限性。尽管初步构建的知识图谱在数据处理、实体识别和关系抽取等方面存在不足,但为后续的优化和改进提供了宝贵的经验和方向。此外,文章强调了知识图谱构建不仅仅是技术问题,还需要深入整合领域知识和满足用户需求,体现了跨学科合作的重要性。
|
23天前
|
人工智能 自动驾驶 大数据
预告 | 阿里云邀您参加2024中国生成式AI大会上海站,马上报名
大会以“智能跃进 创造无限”为主题,设置主会场峰会、分会场研讨会及展览区,聚焦大模型、AI Infra等热点议题。阿里云智算集群产品解决方案负责人丛培岩将出席并发表《高性能智算集群设计思考与实践》主题演讲。观众报名现已开放。
|
11天前
|
人工智能 容器
三句话开发一个刮刮乐小游戏!暖ta一整个冬天!
本文介绍了如何利用千问开发一款情侣刮刮乐小游戏,通过三步简单指令实现从单个功能到整体框架,再到多端优化的过程,旨在为生活增添乐趣,促进情感交流。在线体验地址已提供,鼓励读者动手尝试,探索编程与AI结合的无限可能。
三句话开发一个刮刮乐小游戏!暖ta一整个冬天!
|
10天前
|
消息中间件 人工智能 运维
12月更文特别场——寻找用云高手,分享云&AI实践
我们寻找你,用云高手,欢迎分享你的真知灼见!
878 58

热门文章

最新文章