0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

对于大数据的处理,主要有几个工具引擎

姚小熊27 来源:今日头条 作者:今日头条 2020-11-05 10:14 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

提到大数据,我们就离不开数据的收集整理,其中ETL是我们经常使用的用于构建数据仓库, 构建大数据的方法。

大数据处理阶段

此阶段的目标是使用单个模式来清理,规范化,处理和保存数据。最终结果是具有定义良好的架构的可信数据集。例如Spark之类的处理框架用于在机器集群中并行处理数据。在这里我们需要进行数据的验证,隔离掉不合法的数据,我们需要对不良数据进行筛选过滤。对于不规范的数据,我们需要有整理和清洁功能,我们要能够将一些低效的格式入json进行转换。同时我们可能还需要一些标准化的操作,比如对一些数值进行小数点位的精度转化。

大数据处理的最终目的就是创建一个可信数据集,然后下游系统可以依赖此数据源进行业务分析和数据计算。

对于大数据的处理,主要有下面的几个工具引擎。

Apache Hive

它是将SQL请求转换为MapReduce任务链的引擎。它主要实现的功能是对传入的SQL进行排序然后优化排序结果,最终得到高效率的请求结果。2018年它将MapReduce替换为Tez作为搜索引擎。它具有机器学习功能,并且在和其他流行的大数据框架进行集成。

Apache Spark

这是最著名的批处理框架。它是Hadoop生态系统的一部分,是一个托管集群,可提供强大的并性,有着精准的监控和出色的UI。它还支持流处理(结构化流)。基本上,Spark在内存中运行MapReduce作业,其性能是常规MapReduce性能的100倍。它与Hive集成以支持SQL,并可用于创建Hive表,视图或查询数据。它具有很多集成,支持多种格式,并且拥有庞大的社区。所有云提供商都支持它。它可以在YARN上运行作为Hadoop集群的一部分,还可以在Kubernetes和其他平台中使用。它具有许多的第三方库可以使用。

Apache Flink

第一个统一批处理和流传输的引擎,它可以用作像Kafka这样的微服务的主干。它可以作为Hadoop集群的一部分在YARN上运行,它还针对其他平台(如Kubernetes或Mesos)进行了优化。它非常快,并且提供实时流传输,使其成为针对低延迟流处理(尤其是有状态流)的一个比Spark更好的选择。它还具有用于SQL,机器学习等的库。它比Spark更快,是数据流的更好选择。

Apache Storm

是一个免费和开源的分布式实时计算系统,它专注于流传输,是Hadoop生态系统的托管解决方案部分。它具有可扩展性,容错性,可确保您的数据将得到处理,并且易于设置和操作。

Apache Samza

一个出色的有状态流处理引擎。Samza允许您构建有状态的应用程序,它可以从多个来源实时处理数据。它不仅可以在YARN集群上运行,也可以作为独立库单独运行。

Apache Beam

它本身不是引擎,而是将所有其他引擎结合在一起的统一编程模型的规范。它提供了可以与不同语言一起使用的编程模型,因此开发人员在处理大数据管道时不必学习新的语言。然后,它为可以在云或本地运行的处理步骤插入了不同的后端。Beam支持前面提到的所有引擎,您可以在它们之间轻松切换并在任何平台上运行它们:云,YARN,Mesos,Kubernetes。如果您要开始一个新项目,那么建议您从Beam开始,因为Beam是面向未来的。

Presto

Presto是一个开放源代码的分布式SQL查询引擎,适合于对各种大小,各种数据源进行交互式分析查询。

Presto是专为交互式分析而设计和编写的,当它的规模扩展到一定的规模的时候,它也可以实现商业数据仓库的处理速度。

Presto允许查询数据存在多个地方,包括Hive,Cassandra,关系数据库甚至专有数据存储。一个Presto查询可以合并来自多个来源的数据,从而可以在整个组织中进行分析。

Presto适用于期望响应时间从亚秒到数分钟不等的分析师。Presto打破了使用昂贵的商业解决方案进行快速分析或使用需要大量硬件的慢速“免费”解决方案之间的错误选择。

总结

处理引擎是当前在大数据词中使用的很著名的工具。作为大数据工程师,您将经常使用这些引擎。了解这些引擎的分布式特性并知道如何优化它们,保护它们并监视它们至关重要。

请记住,还有一些OLAP引擎提供了一种查询大量数据的单一解决方案,而无需编写复杂的转换,而是通过以一种特定的格式加载数据来提高查询的性能。

对于一个新项目,建议您研究Apache Beam,因为它在所有其他引擎的基础上提供了一个抽象,使您无需更改代码即可更改处理引擎。

对于流处理,特别是有状态流处理,请考虑Flink或Samza。对于批处理,请使用Spark。
责任编辑:YYX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 大数据
    +关注

    关注

    64

    文章

    9030

    浏览量

    143080
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    硬件加密引擎在保障数据安全方面有哪些优势呢?

    硬件加密引擎作为芯源半导体安全芯片的核心组件,在保障数据安全方面凭借硬件级的设计与优化,相比软件加密方案具有多维度优势,具体如下: 1. 加密运算效率更高,实时性更强 硬件级并行处理:硬件加密
    发表于 11-17 06:47

    提高RISC-V在Drystone测试中得分的方法

    Drystone 是一种常用的计算机性能基准测试,主要用来测量整数(非浮点)计算性能。 影响 RISC-V 在 Drystone 测试中得分的因素主要有以下几个处理器核心设计:
    发表于 10-21 13:58

    水晶头主要有哪几种型号

    水晶头主要有RJ-45、RJ-11和RJ-12三种型号,具体说明如下: RJ-45水晶头: 结构:有8个凹槽和8个触点(8p8c),体积相对较大。 应用:广泛用于以太网、快速以太网、千兆以太网等网络
    的头像 发表于 08-05 09:41 2858次阅读

    信而泰×DeepSeek:AI推理引擎驱动网络智能诊断迈向 “自愈”时代

    诊断方案,为网络运维带来显著的实用价值:1.快速提升故障处理效率l 实时监控与智能预警: AI引擎持续分析海量流量、设备状态及日志数据,实时识别异常模式(如流量突增、延迟抖动、微小丢包),实现故障发生
    发表于 07-16 15:29

    测量相位差的方法主要有哪些?

    测量相位差可以用示波器测量,也可以把相位差转换为时间间隔,先测量出时间间隔,再换算为相位差,可以把相位差转换为电压,先测量出电压,再换算为相位差,还可以与标准移相器进行比较的比较法(零示法)等方法。 一 怎么用示波器来测量相位差? 应用示波器测量两个同频正弦电压之间的相位差的方法很多,本节介绍具有实用意义的直接比较法。将u1、u2分别接到双踪示波器的Y1通道和Y2通道,适当调节扫描旋钮和Y增益旋钮,使荧光屏显示出如图
    的头像 发表于 06-18 09:03 1447次阅读
    测量相位差的方法<b class='flag-5'>主要有</b>哪些?

    RISC-V向量处理器:现代计算的革命性引擎

    在数字化高速发展的当下,人工智能、大数据处理、物联网等前沿技术日新月异,现代计算需求面临着严峻挑战。海量数据的爆发式增长,让传统计算架构在处理大规模数据时显得力不从心,效率低下、能耗过
    的头像 发表于 06-04 10:03 1317次阅读
    RISC-V向量<b class='flag-5'>处理</b>器:现代计算的革命性<b class='flag-5'>引擎</b>

    运算放大器的噪声主要有哪些

    在低噪声前置放大器的设计领域,精准控制噪声是保障信号质量的核心任务。而运算放大器作为前置放大器的关键组件,其产生的噪声直接影响系统性能。运算放大器的噪声主要来源于热噪声、闪烁噪声、射击噪声和爆玉米
    的头像 发表于 05-05 10:11 765次阅读

    如何基于Kahn处理网络定义AI引擎图形编程模型

    本白皮书探讨了如何基于 Kahn 处理网络( KPN )定义 AI 引擎图形编程模型。KPN 模型有助于实现数据流并行化,进而提高系统的整体性能。
    的头像 发表于 04-17 11:31 683次阅读
    如何基于Kahn<b class='flag-5'>处理</b>网络定义AI<b class='flag-5'>引擎</b>图形编程模型

    RAM容量不足导致的数据溢出如何预防和处理

    在 STM32F411 中,RAM 容量是有限的,特别是在进行复杂的数据处理和存储时,可能会遇到数据溢出问题。数据溢出是指程序运行时,数据超出了 RAM 的分配区域,导致程序崩溃或
    发表于 03-07 16:09

    Aigtek:功率放大器的性能指标主要有哪些

    功率放大器是一种用于放大电信号的设备,它在各种电子系统中广泛应用。为了评估和比较不同功率放大器的性能,有以下几个主要的性能指标。 功率放大器的增益是一个重要的性能指标。增益表示输入信号经过放大器后
    的头像 发表于 02-19 11:01 712次阅读
    Aigtek:功率放大器的性能指标<b class='flag-5'>主要有</b>哪些

    七款经久不衰的数据可视化工具

    的种类 数据可视化工具种类繁多,适用于不同规模和需求的用户。主要可以分为以下几类: 1. 商用数据可视化工具 · FineBI:Fine
    发表于 01-19 15:24

    什么是AI查询引擎

    AI 查询引擎可高效处理、存储和检索大量数据,以增强生成式 AI 模型的输入。
    的头像 发表于 01-10 10:00 2408次阅读

    常见的容器云服务引擎有哪些?

    常见的容器云服务引擎有哪些?云服务引擎涵盖数据库、数据存储、数据处理数据分析、容器云、机器学习
    的头像 发表于 01-07 09:49 679次阅读

    DAC39J84最大数据速率指的是数字信号的输入上限吗?超过1.25GSPS的数字输入就无法处理啦?

    本人才买的DAC39J84,发现datasheet上有两个和速率相关的参数,最大采样率2.8GSPS,和最大输入数据速率1.25GSPS。 是不是最大数据速率指的是是数字信号的输入上限,超过1.25GSPS的数字输入就无法处理
    发表于 12-31 08:24

    缓存对大数据处理的影响分析

    缓存对大数据处理的影响显著且重要,主要体现在以下几个方面: 一、提高数据访问速度 在大数据环境中,数据
    的头像 发表于 12-18 09:45 1120次阅读