数据采集的设计,几乎完全取决于数据源的特性,毕竟数据源是整个大数据平台蓄水的上游,数据采集不过是获取水源的管道罢了。
在数据仓库的语境下,ETL基本上就是数据采集的代表,包括数据的提取(Extract)、转换(Transform)和加载(Load)。在转换的过程中,需要针对具体的业务场景对数据进行治理,例如进行非法数据监测与过滤、格式转换与数据规范化、数据替换、保证数据完整性等。
但是在大数据平台下,由于数据源具有更复杂的多样性,数据采集的形式也变得更加复杂而多样,当然,业务场景也可能变得迥然不同。下图展现了大数据平台比较典型的数据采集架构:
以下是几种比较典型的业务场景。
场景1:为了提升业务处理的性能,同时又希望保留历史数据以备数据挖掘与分析。
业务处理场景访问的数据库往往是RDB,可伸缩性较差,又需要满足查询与其他数据操作的实时性,这就需要定期将超过时间期限的历史数据执行清除。但是在大数据场景下,这些看似无用的历史数据又可能是能够炼成黄金的沙砾。因而需要实时将RDB的数据同步到HDFS中,让HDFS成为备份了完整数据的冗余存储。在这种场景下,数据采集就仅仅是一个简单的同步,无需执行转换。
场景2:数据源已经写入Kafka,需要实时采集数据
在考虑流处理的业务场景,数据采集会成为Kafka的消费者,就像一个水坝一般将上游源源不断的数据拦截住,然后根据业务场景做对应的处理(例如去重、去噪、中间计算等),之后再写入到对应的数据存储中。这个过程类似传统的ETL,但它是流式的处理方式,而非定时的批处理Job。
场景3:数据源为视频文件,需提取特征数据
针对视频文件的大数据处理,需要在Extract阶段加载图片后,然后根据某种识别算法,识别并提取图片的特征信息,并将其转换为业务场景需要的数据模型。在这个场景下,数据提取的耗时相对较长,也需要较多的内存资源。如果处理不当,可能会成为整个数据阶段的瓶颈。
在数据采集阶段,一个棘手问题是增量同步,尤其针对那种可变(即可删除、可修改)的数据源。在我们无法掌控数据源的情况下,通常我们会有三种选择:
- 放弃同步,采用直连形式;
- 放弃增量同步,选用全量同步;
- 编写定期Job,扫描数据源以获得delta数据,然后针对delta数据进行增量同步
坦白说,这三种选择皆非最佳选择,但我也未尝发现有更好的方案。如果数据源端可以控制,我们当然也可以侦听数据源的变更,然后执行Job来更新采集后存储的数据。这些又可能牵涉到数据存储的选型,假设我们选择了Parquet格式作为数据存储,则Parquet是不允许变更的。若要应对这种场景,或许应该考虑ORC格式。
为了更高效地完成数据采集,通常我们需要将整个流程切分成多个阶段,在细分的阶段中可以采用并行执行的方式。在这个过程中,可能牵涉到Job的创建、提交与分发,采集流程的规划,数据格式的转换等。除此之外,在保证数据采集的高性能之外,还要考虑数据丢失的容错。
相关推荐
园林大数据平台数据采集 在当前数字化时代,园林管理和生态保护领域也开始广泛应用大数据技术。"园林大数据平台数据采集"项目,旨在通过高效的数据采集、处理和显示方法,为园林行业的决策支持和资源管理提供科学...
园林大数据平台数据采集_yuanlin
"政务大数据平台数据安全体系建设指南V1.0" 数据安全体系建设是政务大数据平台的核心组件之一,对于保护政务大数据平台的安全至关重要。本指南旨在为政务大数据平台的数据安全体系建设提供详细的指导和规范。 大...
大数据与数据采集 大数据与数据采集是当前IT行业中最热门的概念之一。大数据技术不仅指获得海量数据,更重要的是通过对海量数据的分析、整合来获得隐藏在数据背后的有价值的信息。在这个主题下,我们将探讨大数据的...
该解决方案的核心目标是建立一个集数据采集、数据处理、监测管理、预测预警、应急指挥、可视化平台于一体的大数据平台,以提高政府对社会经济发展的监测和预测能力,提高宏观调控力度,促进经济持续健康发展。...
- 实时数据同步:满足实时数据采集和传输的需求。 4. **数据主题开发要求**:支持创建主题表,配置数据开发任务,进行流程作业编排,记录表间关联关系,同时支持分布式存储和传统数据库。 5. **验证方法**:包括...
大数据实时数据采集架构
"大数据来源数据采集详情列表图-PPT模板" 大数据来源数据采集详情列表图是大数据架构图的一部分,旨在展示大数据来源的数据采集过程。在这个PPT模板中,我们可以看到大数据来源的各种类型,包括人、设备、状态、视 ...
大数据技术分享 无线大数据 手机移动端大数据实践 数据采集与分析 共21页.pptx
大数据平台架构包括数据采集、数据存储、数据处理、数据分析、数据挖掘和数据可视化等几个组成部分,这些部分相互关联,形成一个完整的系统,支持企业从海量数据中获取洞察和价值。 大数据平台架构的设计思路是指在...
大数据平台数据治理的重要性在于构建完善、共享、统一管理数据环境,作为资产管理的有效手段,确定了一系列岗位角色和相应的责任及管理流程,保证了业务数据在采集、集中、转换、存储、应用整个过程中的完整性、准确...
大数据平台建设技术解决方案是一个复杂的技术解决方案,需要涵盖多个方面的技术,包括数据采集、数据存储、数据处理和分析、数据可视化等。只有通过对这些技术的深入理解和掌握,才能设计和实现一个功能强大的大数据...
数据集成监控需要对数据集成任务步骤进行监控,包括数据流转、数据集成任务的执行成功率、数据采集传输速率等。周期任务监控需要对平台已提交的任务进行监控,包括概览、任务配置、任务实例、任务实例详情等功能。 ...
该操作流程包括数据采集、数据存储、数据处理、数据分析和数据安全等步骤,每个步骤都有明确的操作规则和管理机制。 大数据平台数据治理体系建设和管理方案的目标是确保大数据平台中的数据质量、安全和隐私保护。该...
3. 数据采集平台:提供全渠道数据集成和整合能力,支持多种数据库数据集成、实时增量式数据集成、海量结构化和非结构化数据集成。 4. 数据计算平台:提供全面数据计算和AI融合能力,包括分布式计算、数据挖掘和流...
大数据是当今信息技术领域的重要组成部分,它涉及到海量数据的采集、存储、处理和分析,为企业决策提供有力支持。本文将从“大数据中台”、“数据仓库”、“大数据平台”以及“数据治理”四个方面进行深入探讨。 ...
数据采集与预处理是大数据平台建设的首要步骤,包括日志收集系统、网络爬虫技术、数据抽取工具等。日志收集系统能够把各类日志数据收集起来,并进行高效分析,以便对网络安全态势进行预判。网络爬虫技术对于获取网络...
大数据平台架构组件包括数据采集组件、数据处理组件、数据存储组件、数据分析组件、数据服务组件等。每个组件都有其特定的功能和作用。 四、大数据平台业务方案 大数据平台业务方案是指基于大数据平台架构的业务...
功能组件完整性:大数据平台的功能组件完整性是指大数据平台的各个组件之间的相互关系和协作,它涉及到数据的采集、存储、处理和分析等方面。 大数据平台数据治理体系和大数据架构技术方案是两个紧密相连的概念,...