大数据发展篇分布式技术
Posted 淼淼_喵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据发展篇分布式技术相关的知识,希望对你有一定的参考价值。
🍬 博主介绍
👨🎓 博主介绍:大家好,我是淼淼_喵 ,很高兴认识大家~
✨主攻领域:【大数据开发】【数据仓库】 【ETL】 【数据分析】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝欢迎评论
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
目录
1. 分布式系统的概念
分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统(distributed system)是建立在网络之上的软件系统。
简单来说就是一群独立计算机集合起来共同对外提供服务,但是对于系统的用户来说,就像是一台计算机在提供服务一样。
下面以网站架构变迁来举例说明。
初代的web服务网站架构往往比较简单,应用程序、数据库、文件等所有的资源都在一台服务器上。
图:现在互联网网站常用的架构
从分布式系统的概念中我们知道,各个主机之间通信和协调主要通过网络进行,所以,分布式系统中的计算机在空间上几乎没有任何限制,这些计算机可能被放在不同的机柜上,也可能被部署在不同的机房中,还可能在不同的城市中,对于大型的网站甚至可能分布在不同的国家和地区。
2. 常用分布式方案
分布式应用和服务
将应用和服务进行分层和分割,然后将应用和服务模块进行分布式部署。这样做不仅可以提高并发访问能力、减少数据库连接和资源消耗,还能使不同应用复用共同的服务,使业务易于扩展。比如:分布式服务框架Dubbo。
分布式数据存储
大型网站常常需要处理海量数据,单台计算机往往无法提供足够的内存空间,可以对这些数据进行分布式存储。比如Apache Hadoop HDFS。
分布式计算
随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。比如Apache Hadoop MapReduce。
3. 分布式、集群
分布式(distributed)是指在多台不同的服务器中部署不同的服务模块,通过远程调用协同工作,对外提供服务。
集群(cluster)是指在多台不同的服务器中部署相同应用或服务模块,构成一个集群,通过负载均衡设备对外提供服务。
以上是关于大数据发展篇分布式技术的主要内容,如果未能解决你的问题,请参考以下文章