针对对象存储的数据传输方法、设备和计算机程序产品技术

技术编号:37139021 阅读:13 留言:0更新日期:2023-04-06 21:41
本公开的实施例涉及针对对象存储的数据传输方法、设备和计算机程序产品。在本公开的实施例所提供的数据传输方法中,在用于存储对象流的存储空间中存储从对象层获取的一组对象,以作为对象流的第一部分;以及响应于在客户端发生与一组对象中的至少一个对象有关的事件,在存储空间中存储关于事件的信息,以作为对象流的第二部分,关于事件的信息包括以下至少一项:至少一个对象的标识符、事件的类型和事件的元数据。以此方式,可以实现针对对象存储的流式传输。存储的流式传输。存储的流式传输。

【技术实现步骤摘要】
针对对象存储的数据传输方法、设备和计算机程序产品


[0001]本公开的实施例涉及数据传输,并且更具体地,涉及针对对象存储的数据传输方法、设备和计算机程序产品。

技术介绍

[0002]针对结构化数据的连续数据管道或流式处理变得越来越流行。数据库用于存储结构化数据。修改数据捕获(CDC)协议可以被用于确定和跟踪对数据库中的表进行的数据修改,所以将已存储的结构化数据转化成流式数据进行流式处理是可行的。对于非结构化数据,除了对象存储还存在一种流式存储系统(例如Pravega),其本身就已经支持流式计算。
[0003]流式数据是由各种数据源以大容量、高速度产生的连续且庞大的数据流。流式数据的常见示例包括物联网传感器数据、服务器和安全日志、实时广告以及来自应用和web站点的点击流数据。

技术实现思路

[0004]在本公开的第一方面中,提供了一种数据传输方法。该方法包括在用于存储对象流的存储空间中存储从对象层获取的一组对象,以作为对象流的第一部分。该方法还包括响应于在客户端发生与一组对象中的至少一个对象有关的事件,在存储空间中存储关于事件的信息,以作为对象流的第二部分。关于事件的信息包括以下至少一项:至少一个对象的标识符、事件的类型和事件的元数据。
[0005]在本公开的第二方面中,提供了一种电子设备。该电子设备包括处理器以及与处理器耦合的存储器,存储器具有存储于其中的指令,指令在被处理器执行时使设备执行动作。动作包括在用于存储对象流的存储空间中存储从对象层获取的一组对象,以作为对象流的第一部分。动作还包括响应于在客户端发生与一组对象中的至少一个对象有关的事件,在存储空间中存储关于事件的信息,以作为对象流的第二部分。关于事件的信息包括以下至少一项:至少一个对象的标识符、事件的类型和事件的元数据。
[0006]在本公开的第三方面中,提供了一种计算机程序产品,计算机程序产品被有形地存储在计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使机器执行根据第一方面的方法。
[0007]提供
技术实现思路
部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。
技术实现思路
部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
[0008]通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。在附图中:
[0009]图1示出了本公开的实施例可以在其中被实现的示例环境的示意图;
[0010]图2示出了根据本公开的实施例的数据传输的示例方法的流程图;
[0011]图3示出了根据本公开的一些实施例的获取对象和事件信息作为对象流的示意图;
[0012]图4示出了根据本公开的一些实施例的数据传输的示例方法的流程图;以及
[0013]图5示出了可以用来实施本公开的实施例的示例设备的框图。
具体实施方式
[0014]下面将参考附图中示出的若干示例实施例来描述本公开的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。
[0015]在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
[0016]除了上述的数据库或流式存储,对象存储也是一种常用的存储手段,用于存储非结构化数据。简易存储服务S3协议是针对对象存储的标准协议。已知存在许多与S3协议兼容的对象存储系统,例如弹性云存储(ECS)系统。
[0017]然而,在众多传统的S3对象存储中,查询或计算对象只能以批处理方式进行,不能以流式进行。在传统的S3对象存储系统中,订阅者只有在向系统注册后才会开始收到系统发出的通知,系统中的对象在订阅者注册前所经历的修改以及修改前的版本均不会传输给订阅者,订阅者只能收到最新版本的对象数据。
[0018]本公开的实施例提出了一种数据传输方法,从对象层获取一组对象,将该一组对象存储在用于存储对象流的存储空间中,以作为该对象流的一部分。响应于在客户端发生关于至少一个对象的事件,在上述存储空间中存储关于该事件的信息,以作为对象流的另一部分。其中关于事件的信息可以包括上述至少一个对象的标识符、事件的类型和事件的元数据中的至少一项。根据在此描述的实施例,利用对象流,可以实现针对对象存储的连续数据管道。
[0019]以下参考图1至图5来说明本公开的基本原理和若干示例实现方式。应当理解,给出这些示例性实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制本公开的范围。
[0020]图1示出了本公开的实施例可以在其中被实现的示例环境100的示意图。如图1所示,环境100包括服务器110、客户端120和服务器130(服务器130和110可以是同一个也可以是单独的两个)。客户端120上传对象数据至服务器110,服务器110将对象数据转化为流式数据后发送给服务器130。服务器130提供流式数据存储和流式处理。客户端120可以是用户设备或工作站。客户端120的示例可以包括但不限于蜂窝移动电话、平板设备、膝上型计算机等。服务器110可以是任何对象存储,例如ECS。服务器130可以是流式存储系统,例如Pravega。
[0021]服务器110存储来自客户端120的数据,然后同时为存储的数据生成数据流,发送给服务器130以流式数据存储。服务器110也可以利用兼容S3协议的对象存储架构,将数据存储为对象。服务器130将数据存储为流。
[0022]客户端120产生的数据作为对象被发送给服务器110。服务器110收到客户端120发来的数据后,首先将数据进行存储,其次检查是否有注册的流式数据需求。如果有,将存储的对象数据转为流式数据发送给注册的流式存储系统,例如服务器130。这将在后文结合图2和图3进行详细描述。
[0023]应当理解,仅出于示例性的目的描述环境100的结构和功能,而不暗示对于本公开的范围的任何限制。例如,本公开的实施例还可以被应用到与环境100不同的环境中。另外,虽然图1中仅示出了两个客户端,但并不限于此,也可以存在更多或者更少的客户端。
[0024]图2示出了根据本公开的实施例的数据传输的示例方法200的流程图。方法200例如可以由如图1所示的服务器110来执行。应当理解,方法200还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。以下结合图1和后述的图3来详细描述方法200。
[0025]在框210本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据传输方法,包括:在用于存储对象流的存储空间中存储从对象层获取的一组对象,以作为所述对象流的第一部分;以及响应于在所述客户端发生与所述一组对象中的至少一个对象有关的事件,在所述存储空间中存储关于所述事件的信息,以作为所述对象流的第二部分,关于所述事件的所述信息包括以下至少一项:所述至少一个对象的标识符、所述事件的类型和所述事件的元数据。2.根据权利要求1所述的方法,所述方法还包括:如果确定新的对象在所述对象层中被创建,在所述存储空间中存储从所述对象层获取的所述新的对象,以作为所述对象流的第三部分。3.根据权利要求1所述的方法,其中关于所述事件的所述信息还包括:所述事件的具体内容,或者指示所述事件的具体内容的存储位置的索引。4.根据权利要求1

3中任一项所述的方法,其中在所述存储空间中存储关于所述事件的所述信息包括:如果所述事件的类型指示所述至少一个对象被删除,在所述存储空间中存储所述事件的元数据,所述元数据指示所述至少一个对象被删除的时间。5.根据权利要求1

3中任一项所述的方法,其中在所述存储空间中存储关于所述事件的所述信息包括:如果所述事件的类型指示所述至少一个对象被修改,在所述存储空间中存储所述事件的元数据,所述元数据指示所述至少一个对象被修改的时间以及修改版本号,其中所述修改版本号随着对所述至少一个对象的修改次数而递增。6.根据权利要求1所述的方法,所述方法还包括:确定当前时间与上一次所述对象流被请求传输的时间的时间长度;如果所述时间长度超过阈值长度,从所述存储空间删除所述对象流。7.一种电子设备,包括:处理器;以及与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述处理器执行时使所述设备执行动作,所述动作包括:在用于存储对...

【专利技术属性】
技术研发人员:雷璐朱健倪晟
申请(专利权)人:伊姆西IP控股有限责任公司
类型:发明
国别省市:

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

1