大数据处理引擎
处理引擎是当前在大数据词中使用的很著名的工具。作为大数据工程师,您将经常使用这些引擎。了解这些引擎的分布式特性并知道如何优化它们,保护它们并监视它们至关重要。 请记住,还有一些OLAP引擎提供了一种查询大量数据的单一解决方案,而无需编写复杂的转换,而是通过以一种特定的格式加载数据来提高查询的性能。 对于一个新项目,建议您研究Apache Beam,因为它在所有其他引擎的基础上提供了一个抽象,使您无需更改代码即可更改处理引擎。 它本身不是引擎,而是将所有其他引擎结合在一起的统一编程模型的规范。它提供了可以与不同语言一起使用的编程模型,因此开发人员在处理大数据管道时不必学习新的语言。然后,它为可以在云或本地运行的处理步骤插入了不同的后端。Beam支持前面提到的所有引擎,您可以在它们之间轻松切换并在任何平台上运行它们:云,YARN,Mesos,Kubernetes。如果您要开始一个新项目,那么建议您从Beam开始,因为Beam是面向未来的。 Presto Presto是一个开放源代码的分布式SQL查询引擎,适合于对各种大小,各种数据源进行交互式分析查询。 Presto是专为交互式分析而设计和编写的,当它的规模扩展到一定的规模的时候,它也可以实现商业数据仓库的处理速度。 Presto允许查询数据存在多个地方,包括Hive,Cassandra,关系数据库甚至专有数据存储。一个Presto查询可以合并来自多个来源的数据,从而可以在整个组织中进行分析 这是最著名的批处理框架。它是Hadoop生态系统的一部分,是一个托管集群,可提供强大的并性,有着精准的监控和出色的UI。它还支持流处理(结构化流)。基本上,Spark在内存中运行MapReduce作业,其性能是常规MapReduce性能的100倍。它与Hive集成以支持SQL,并可用于创建Hive表,视图或查询数据。它具有很多集成,支持多种格式,并且拥有庞大的社区。所有云提供商都支持它。它可以在YARN上运行作为Hadoop集群的一部分,还可以在Kubernetes和其他平台中使用。它具有许多的第三方库可以使用。 Apache Flink
第一个统一批处理和流传输的引擎,它可以用作像Kafka这样的微服务的主干。它可以作为Hadoop集群的一部分在YARN上运行,它还针对其他平台(如Kubernetes或Mesos)进行了优化。它非常快,并且提供实时流传输,使其成为针对低延迟流处理(尤其是有状态流)的一个比Spark更好的选择。它还具有用于SQL,机器学习等的库。它比Spark更快,是数据流的更好选择。 (编辑:江门站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |