在分散存储网络中一致的存储数据制造技术

技术编号:20022828 阅读:34 留言:0更新日期:2019-01-06 03:00
一种方法包括,对于有关编码数据切片集的写操作,由计算设备,确定写操作是否是写编码数据切片集的第一实例(200)。该方法还包括,当写操作是第一实例时,由计算设备向存储单元发送写请求集,其中写请求包括编码数据切片集,切片名称和第一实例的指示(202)。该方法还包括:响应于写请求集的写请求,由存储单元确定编码数据切片的已有版本是否当前存储在存储单元中(204)。当已有版本当前存储在存储单元中时,由存储单元,向计算设备发送冲突消息(206)。该方法还包括,由计算设备,基于冲突消息更新写请求(208)。

【技术实现步骤摘要】
【国外来华专利技术】在分散存储网络中一致的存储数据
本专利技术的各方面一般涉及计算机网络,更具体地说,涉及数据的分散存储和数据的分布式任务处理。
技术介绍
已知计算设备可以传送数据,处理数据和/或存储数据。这样的计算设备包括无线智能电话、笔记本电脑、平板电脑、个人计算机(PC)、工作站和视频游戏设备、及每天支持数百万网络搜索、股票交易或在线购买的数据中心。总之,计算设备包括中央处理单元(CPU)、存储器系统、用户输入/输出接口、外围设备接口和互连总线结构。如进一步已知的,计算机可以通过使用“云计算”代表计算机执行一个或多个计算功能(例如,服务、应用、算法、算术逻辑功能等)来有效地扩展其CPU。此外,对于大型服务,应用和/或功能,云计算可以由分布式方式由多个云计算资源执行,以改善完成服务、应用和/或功能的响应时间。例如,Hadoop是一个开源软件框架,支持分布式应用程序,使数千台计算机能够执行应用程序。除了云计算之外,计算机可以使用“云存储”作为其存储系统的一部分。众所周知,云存储使用户能够通过其计算机在因特网存储系统上存储文件,应用程序等。因特网储存系统可以包括RAID(独立磁盘冗余阵列)系统和/或分散存储系统,其对用于存储的编码数据使用纠错方案。已知分布式存储系统利用三阶段流程在分散存储网络(DSN)存储器中一致地写,其中三个阶段包括:1写阶段;2使其可用阶段;和3最后阶段。这三个阶段解决了可能由持有编码数据切片的不同修改的DSN的不同存储单元产生的一致性问题,其中数据被分散存储错误编码以产生编码数据切片。已知这三个阶段利用阈值方法将写过程推进到下一阶段,或者在出现冲突和错误时反转流程以维持修改存储的一致性。因此,需要解决本领域的上述问题。
技术实现思路
从另一方面来看,本专利技术提供了一种用于分散存储网络(DSN)的计算设备的方法,该方法包括:对关于将要写入DSN的存储单元的编码数据切片集的写操作,确定写操作是否是写编码数据切片集的第一实例,其中数据对象的数据段作为分散存储错误被编码到编码数据切片集中;当写操作是写编码数据切片集的第一实例时,向存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及写编码数据切片集的第一实例;接收来自至少一些存储单元的关于写请求集的多个响应;当多个响应的响应是冲突消息时,基于冲突消息更新写请求集,其中冲突消息指示编码数据切片集的至少一个编码数据切片的已有版本存储在多个存储单元的存储单元中;当写阈值数量的响应是有利的写响应时,向存储单元发送写提交请求集。从另一方面来看,本专利技术提供了一种存储系统,包括第一模块,当在分散存储网络(DSN)的计算设备内操作时,第一模块使计算设备:对于关于将要写入DSN的存储单元的编码数据切片集的写操作,确定写操作是否是写编码数据切片集的第一实例,其中数据对象的数据段作为分散存储错误被编码到编码数据切片集中;当写操作是写编码数据切片集的第一实例时,向存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及写编码数据切片集的第一实例;第二模块,当在多个存储单元的存储单元内操作时,使存储单元:响应于写请求集的写请求,确定编码数据切片集的编码数据切片的已有版本是否当前被存储在存储单元中;当编码数据切片集的编码数据切片的已有版本当前存储在存储单元中时,向计算设备发送冲突消息;和第三模块,当在计算设备内操作时,使计算设备:根据冲突消息更新写请求集。从另一方面来看,本专利技术提供了一种用于关于将要写入分散存储网络(DSN)的存储单元的编码数据切片集的写操作的计算机程序产品,该计算机程序产品包括:计算机可读存储介质,其可由处理电路读并存储用于由处理电路执行的指令,用于执行用于执行本专利技术的各个步骤的方法。从另一方面来看,本专利技术提供了一种存储在计算机可读介质上并可加载到数字计算机的内部存储器中的计算机程序,包括软件代码部分,当所述程序在计算机上运行时用于执行本专利技术的各个步骤。附图的简要说明现在仅通过示例的方式参考附图描述本专利技术的实施例,附图中::图1是根据本专利技术的分布式计算系统的实施例的示意框图。图2是根据本专利技术的计算核的实施例的示意框图。图3-5是根据本专利技术的分散存储网络(DSN)的实施例的示意框图。图6是根据本专利技术的存储数据的例子的流程图。和图7是根据本专利技术的存储数据的另一个例子的流程图。具体实施方式图1是分布式计算系统10的实施例的示意性框图,该分布式计算系统10包括用户设备12和/或用户设备14、分布式存储和/或任务(DST)处理单元16、分布式存储和/或任务网络(DSTN)管理单元18、DST完整性处理单元20、以及分布式存储和/或任务网络(DSTN)模块22。分布式计算系统10的组件经由网络24耦合,网络24可包括一个或更多无线和/或有线通信系统、一个或多个非公共内联网系统和/或公共互联网系统、和/或一个或多个局域网(LAN)和/或广域网(WAN)。此后,分布式计算系统10可以可互换地称为分散存储网络(DSN)。DSTN模块22包括多个分布式存储和/或任务(DST)执行单元36,其可以位于地理上不同的站点(例如,一个在芝加哥,一个在密尔沃基等)。每个DST执行单元可操作以,存储分散的错误编码的数据,和/或以分布式方式,执行数据上的一个或多个任务。任务可以是简单的功能(例如,数学函数、逻辑函数、识别函数、查找函数、搜索引擎函数、替换函数等),复杂函数(例如,压缩、人和/或计算机语言翻译、文本到语音转换、语音到文本转换等),多个简单和/或复杂函数,一个或多个算法,一个或多个应用程序等。此后,DST执行单元可以可互换地称为存储单元,并且DST执行单元集可以可互换地称为存储单元集。用户设备12-14、DST处理单元16、DSTN管理单元18和DST完整性处理单元20中的每一个包括计算核26,并且可以是便携式计算设备和/或固定计算设备。便携式计算设备可以是社交网络设备、游戏设备、手机、智能电话、数字助理、数字音乐播放器、数字视频播放器、膝上型计算机、手持式计算机、平板电脑、视频游戏控制器、和/或包括计算核的任何其它便携式设备。固定计算设备可以是计算机(PC)、计算机服务器、有线机顶盒、卫星接收器、电视机、打印机、传真机、家庭娱乐设备、视频游戏控制台和/或任何类型的家庭或办公室计算设备。用户设备12和DST处理单元16被配置为包括DST客户模块34。关于接口,每个接口30,32和33包括软件和/或硬件,以间接和/或直接地经由网络24支持一个或多个通信链路。例如,接口30支持用户设备14和DST处理单元16之间的通信链路(例如,有线、无线、直接,经由LAN、经由网络24等)。作为另一示例,接口32支持在用户设备12和DSTN模块22之间以及在DST处理单元16和DSTN模块之间的通信链路(例如,有线连接,无线连接,LAN连接和/或与网络24的任何其它类型的连接)。作为又一示例,接口33支持DSTN管理单元18和DST完整性处理单元20中的每一个到网络24的通信链路。分布式计算系统10可操作以支持分散存储(DS)错误编码的数据存储和检索,以支持对接收数据的分布式任务处理,和/或支持对存储数据的分布式任务处理。通常并且关于DS错误编码数据存储和检索,分布式计本文档来自技高网
...

【技术保护点】
1.一种用于关于将要写入分散存储网络(DSN)的多个存储单元的编码数据切片集的写操作的方法,所述方法包括:由计算设备,确定写操作是否是写编码数据切片集的第一实例,其中数据对象的数据段作为分散存储错误被编码到编码数据切片集中;当写操作是写编码数据切片集的第一实例时,由计算设备,向多个存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及写编码数据切片集的第一实例的指示;响应于多个写请求集的写请求,由多个存储单元的存储单元,确定编码数据切片集的编码数据切片的已有版本是否当前存储在存储单元中;当编码数据切片集的编码数据切片的已有版本当前存储在存储单元中,由存储单元,向计算设备发送冲突消息;和由计算设备,基于冲突消息更新写请求集。

【技术特征摘要】
【国外来华专利技术】2016.04.29 US 15/142,2971.一种用于关于将要写入分散存储网络(DSN)的多个存储单元的编码数据切片集的写操作的方法,所述方法包括:由计算设备,确定写操作是否是写编码数据切片集的第一实例,其中数据对象的数据段作为分散存储错误被编码到编码数据切片集中;当写操作是写编码数据切片集的第一实例时,由计算设备,向多个存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及写编码数据切片集的第一实例的指示;响应于多个写请求集的写请求,由多个存储单元的存储单元,确定编码数据切片集的编码数据切片的已有版本是否当前存储在存储单元中;当编码数据切片集的编码数据切片的已有版本当前存储在存储单元中,由存储单元,向计算设备发送冲突消息;和由计算设备,基于冲突消息更新写请求集。2.根据权利要求1所述的方法,其中写编码数据切片集的第一实例的指示包括以下之一:在写请求集的每个写请求内,提供零修改级别;和在写请求集的每个写请求中,省略修改级别指示。3.根据前述权利要求之一所述的方法,进一步包括:当写操作不是写编码数据切片集的第一实例时:由计算设备,向多个存储单元发送关于编码数据切片集的读请求集;由计算设备,基于来自多个存储单元的至少一些的读响应,确定编码数据切片集的当前修改级别;由计算设备,向多个存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及编码数据切片集的下一修改级别;和当已经接收到写阈值数量的有利写响应时,由计算设备,向多个存储单元发送写提交请求集。4.根据前述权利要求中任意一个所述的方法,进一步包括:当写操作是写编码数据切片集的第一实例时:从多个存储单元的至少一些接收有利的写响应;和当已经接收到写阈值数量的有利写响应时,由计算设备,向多个存储单元发送写提交请求集。5.根据前述权利要求中任意一个所述的方法,其中更新写请求集包括:由计算设备,基于来自多个存储单元的一个或多个的冲突消息,确定编码数据切片集的当前修改级别;由计算设备,更新写请求集以包括编码数据切片集的下一修改级别;和由计算设备,向多个存储单元发送更新的写请求集,其中更新的写请求集包括编码数据切片集,切片名称集和编码数据切片集的下一修改级别。6.根据前述权利要求中任意一个所述的方法,进一步包括:响应于写请求集的另一个写请求,由多个存储单元的另一个存储单元,确定编码数据切片集的另一个编码数据切片的已有版本当前是否存储在另一个存储单元中;和当另一个编码数据切片存储在另一个存储单元中时,由另一个存储单元,发送另一个冲突消息,指示另一个存储单元正在存储另一个编码数据切片的已有版本。7.一种用于分散存储网络(DSN)计算设备的方法,该方法包括:对关于将要写入DSN的多个存储单元的编码数据切片集的写操作,确定写操作是否是写编码数据切片集的第一实例,其中数据对象的数据段作为分散存储错误被编码到编码数据切片集中;当写操作是写编码数据切片集的第一实例时,向多个存储单元发送写请求集,其中写请求集包括编码数据切片集,切片名称集,以及写编码数据切片集的第一实例;接收来自至少一些存储单元的关于写请求集的多个响应;当多个响应的响应是冲突消息时,基于冲突消息,更新写请求集,其中冲突消息指示编码数据切片集的至少一个编码数据切片的已有版本被存储在多个存储单元的存储单元中;和当写阈值数量的响应是有利的写响应时,向多个存储单元发送写提交请求集。8.如权利要求7所述的方法,其中更新写请求集包括:基于来自多个存储单元的一个或多个的冲突消息确定编码数据切片集的当前修改级别;更新写请求集以包括编码数据切片集的下一修改级别;和向多个存储单元发送更新的写请求集,其中更新的写请求集包括编码数据切片集,切片名称集和编码数据切片集的下一修改级别。9.如权利要求7或8中任意一个所述的方法,其中写编码数据切片集的第一实...

【专利技术属性】
技术研发人员:A·D·巴普蒂斯特A·M·格雷E·沃兹尼亚克I·沃尔沃夫斯基W·莱格特J·K·雷施S·霍兰
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1