也是刚开始接触大数据,学习了一些大数据的框架,但是对于大数据生态圈的界限和分类一直不是很清楚

今天就对于这个大数据生态圈来做一个总结:

1.从生态圈来说

        Hadoop生态圈

        Spark生态圈

        Storm

Hadoop生态圈和Spark生态圈实际上有些东西是相互依存的,都能适用于各自的生态圈,只不过他们处理的任务不一样,比如Kafka,HBase等等都能整合到Spark中使用

2.从任务类型来说

        离线(批处理)

        实时(流处理)

Hadoop是用来做离线任务处理的,Spark是既能做离线任务又能做实时任务的处理,其中Spark Streaming是用来实时处理数据的,但是Spark Streaming只是一定意义上的实时,实际是很小的批量处理,而Storm则是真正意义上的实时流处理系统,来一条数据就会处理一条数据

3.从语言上来说

         Java

         Scala

         Python

         Go

大数据的大多数框架都是用Java编写的,这样编程的时候用Java自然能更简单,Storm也是用Java实现的

Spark生态圈是用Scala来实现的,Scala的语法简洁,代码量少

Python已经作为作为AI时代的首选语言,而且Spark也支持Python

Go语言是为大数据分布式而生的,Docker,K8S都是由Go打造的

 

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐