这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天
什么是分布式
分布式计算是计算机科学中一个研究方向,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器、分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。
当计算机的程序和数据通过网络分布在多于一个的计算机上时,计算就成为“分布式的”。以前的计算通常是由计算中心完成的。尽管仍存在这样的计算中心,大小企业却逐渐将应用程序移至企业中能最有效地完成计算的地点进行,通常是桌面工作站、局域网服务器、部门服务器、Web服务器和其他服务器的混合。比较流行的是客户/服务器模式,客户机只具有一定的功能,其他的功能需要从提供服务的服务器那里获得。HTTP协议就是一个例子。在分布式计算环境中,数据的存储和处理可在本地工作站上进行。
分布式存储系统
中间控制节点架构
以单独元数据服务器为中间控制,具体数据存储服务器为分布式存储的架构存储
完全无中心架构
客户端通过设备映射关系计算出具体数据的位置,客户端直接访问
分布式计算系统
Hadoop Map Reduce
一种大数据编程模型,将数据处理运用Map和Reduce的概念进行分而治之的处理
Spark
基于内存优化的分布式大数据计算框架
Flink
分布式大数据处理框架,对流数据可以进行计算
分布式消息队列系统
Kafka
Kafka是一个分布式消息队列。具有高性能、持久化、多副本备份、横向扩展能力。生产者往队列里写消息,消费者从队列里取消息进行业务逻辑计算