理解分布式数据处理的三个级别

分布式数据处理,就是利用分布式计算技术对数据进行处理。

分布式计算是指将一个庞大的计算任务经过服务器的处理划分为若干个小任务,然后将这些小任务通过网络分发到位于同一网络、不同物理位置的客户端,通过这种结构计算出各个结果,最后在通过汇总得到这个庞大计算任务的结果。

分布式数据处理拥有三个级别的可靠性:数据最多发送一次、最少发送一次、恰好发送一次

1、最多一次

一般分布式数据处理默认为此级别,在此级别下,服务器只管发送数据,不关心数据是否正确到达目的客户端。

优点:数据传输速率最高

缺点:在网络不稳定的情况下,可能导致数据丢失(一般不会丢失的太严重),数据可靠性最低

2、 最少一次

在发送数据给各个客户端时,每发送一部分数据就会等待对应的客户端回复的信息,若响应超时,服务器会重新发送未被确认的数据,直至服务器正确接收到来自客户端的回复消息。在成功收到回复消息后,发送下一部分的数据。

优点:保证数据正确无误的发送到指定客户端

缺点:在网络繁忙时,会造成客户端接收到较多的重复数据

3、恰好一次

​ 在最少一次的基础上,增加了去重机制,服务器在同一数据发送时添加一个类似于版本号的唯一标识,在客户端接收到同一数据的多个版本后,只保留最新版本的数据。

优点:保证数据唯一且没有冗余的接收,数据可靠性最高

缺点:客户端对于删除标识的时间把握不明确,会导致存储的大量唯一标识占用空间,并且有一定时间耗费在比较上,数据传输速率最低

 

以上三种方案的使用,应该根据具体情况具体考虑。

另外,在各个分布式系统的处理上,有各种改进方案,比如Kafka产生数据的可靠性保证、Storm分布式处理数据的多个机制等等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章