hadoop是由
hadoop是apache软件基金会下的分布式系统基础设施。hadoop框架的核心设计是hdfs和
网络的工作架构:
1.浏览器的作用:用户向服务器提交请求,解析服务器返回的响应。
2.web服务器:它接受用户请求并回复它们。windows下有iis,linux下有apache和nginx。
3.网络应用:开发一个网络应用(博客,购物网站等。)用php,jsp,asp,aspx等开发语言。在服务器上运行
4.数据库:为了存储数据,数据库有一个接口,连接数据库的账号密码在应用程序中指定。
5.中间件:比如在linux环境下,如果要运行一个以apache为服务器的java程序,就需要tomcat环境的支持。tomcat是一个中间件。目前apache等服务器和中间件的区分越来越少,可以广泛理解为apache、iis、nginx、tomcat、jboss的统称。
主要有以下四种流行的框架。
hadoop
hadoop无疑是大数据领域的第一站。这个由apache基金会开发的分布式基础设施有一个广阔的生态系统。hadoop提出的map和reduce的计算简洁优雅,实现了大量的算法和组件。然而,因为hadoop的计算任务需要在集群的多个节点上多次读写,在速度上会稍逊一筹,但是hadoops吞吐量也是其他框架无法比拟的。
暴风雨
storm是twitter的一个开源大数据框架。hadoop有不同的批处理模式,storm采用的是流式计算框架。但storm与hadoop的相似之处在于,它也提出了两个计算角色,spout和bolt。举一个通俗的例子来说明storm和hadoop的区别。hadoop类似于水桶,而storm类似于水龙头。要取水,hadoop一桶一桶背,storm只需要打开水龙头。风暴流计算框架使用内存,在延迟上有优势,但不会持久化数据。storm对java、ruby、python等语言都有很好的支持。
火花
spark大数据框架作为hadoop的升级版,是一个混合计算框架,spark自带实时流处理工具。spark也可以集成hadoop,而不是mapreduce;甚至spark也可以单独使用,通过分布式存储系统(如hdfs)部署集群。火花的计算速度与storm美国火花公司。;的速度是hadoop的100倍左右,成本比hadoop美国火花公司。;的普及主要在于统一引擎支持的批处理、流处理、交互查询、机器学习等常见场景。spark声称可以处理流,但主要思想是提供小批量。因为是内存处理,如果处理的足够快,可以做到低延迟。本质上,它是一个基于内存的批处理过程。
弗林克
flink大数据框架也是一个混合计算框架。fink和spark的区别在于,fink专注于处理流数据,flink的所有操作都是基于流的。