WO2023116036A1 - 一种存储系统、数据访问方法、装置以及设备 - Google Patents
一种存储系统、数据访问方法、装置以及设备 Download PDFInfo
- Publication number
- WO2023116036A1 WO2023116036A1 PCT/CN2022/115975 CN2022115975W WO2023116036A1 WO 2023116036 A1 WO2023116036 A1 WO 2023116036A1 CN 2022115975 W CN2022115975 W CN 2022115975W WO 2023116036 A1 WO2023116036 A1 WO 2023116036A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- computing
- calculation
- target data
- storage
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000004364 calculation method Methods 0.000 claims description 156
- 230000015654 memory Effects 0.000 claims description 37
- 230000006870 function Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 description 14
- 239000000284 extract Substances 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000002776 aggregation Effects 0.000 description 10
- 238000004220 aggregation Methods 0.000 description 10
- 238000012935 Averaging Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000013138 pruning Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Abstract
一种存储系统、数据访问方法、装置以及设备,计算节点在确定需要访问目标数据时,可以先确定该目标数据是否满足计算下推条件,在确定目标数据满足计算下推条件后,向存储节点发送数据访问请求,数据访问请求用于访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务。该存储节点在接收到数据访问请求后,获取目标数据所属的数据集合,根据计算指示执行计算业务,访问数据集合中的目标数据;向计算节点反馈访问结果。计算节点能够自行判断适合计算下推的场景,以便能够充分利用存储节点的资源,保证计算下推的有效性。
Description
相关申请的交叉引用
本申请要求在2021年12月20日提交中国专利局、申请号为202111585803.4、申请名称为“一种存储系统、数据访问方法、装置以及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及存储技术领域,尤其涉及一种存储系统、数据访问方法、装置以及设备。
大对象(large objects,LOBs)是指数据量超过吉字节(gigabyte,GB)的数据,大对象可以为数据量较大的文档、图形图像、视频、音频等数据。目前,为了用户的需求,常见的关系型数据库如Oracle、MySQL、PostgreSQL,均支持大对象。也即在这些数据库中能够保存大对象类型的数据。
但是,对于存算分离的存储系统(也即存储系统中包括用于实现计算功能的计算节点以及用于存储数据的存储节点),由于大对象类型的数据的数据量较大,当存储节点需要将大对象类型的数据发送给计算节点时,会占用较大的网络带宽,产生较大的传输开销。
发明内容
本申请提供一种存储系统、数据访问方法、装置以及设备,用以充分利用存储节点中的资源,有效实现计算下推。
第一方面,本申请实施例提供了一种存储系统,所述存储系统包括计算节点以及第一存储节点。在该存储系统属于存算分离类型的存储系统。在该存储系统中,计算节点在确定需要访问目标数据时,可以先确定该目标数据是否满足计算下推条件,在确定目标数据满足计算下推条件后,可以向第一存储节点发送数据访问请求,数据访问请求用于访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务。该第一存储节点在接收到数据访问请求后,获取目标数据所属的数据集合,根据计算指示执行计算业务,访问数据集合中的目标数据;向计算节点反馈访问结果。
通过上述系统,计算节点能够自行判断适合计算下推的场景,以便能够充分利用存储节点的资源,保证计算下推的有效性。
在一种可能的实施方式中,该计算下推条件包括下列的部分或全部:
条件一、数据的类型属于设定的数据类型。
条件二、数据的数据量大于数据量阈值。
条件三、数据所属数据集合需占用的存储空间与计算节点的内存中空闲存储空间满足预设关系。
条件四、数据所在的存储节点负载小于负载阈值。
条件五、针对数据需执行的计算方式属于预设的计算方式。
条件六、数据的访问方式不支持加锁查询。
上述计算下推条件仅是举例,本申请实施例并不限定计算下推条件的具体内容,凡是适应于实施计算下推的场景下需满足的条件均可以作为计算下推条件。
通过上述系统,计算下推条件有多种,适用于不同的计算下推场景。
在一种可能的实施方式中,该目标数据所属的数据集合可以分布在不同的存储节点中,例如可以分布在第一存储节点和第二存储节点中。也即在第一存储节点和第二存储节点中存储有该数据集合的部分数据。当第一存储节点在获取目标数据所属数据集合时,可以先确定该数据集合所分布的存储节点,从所分布的存储节点中获取所分布的存储节点中存储的该数据集合中的数据。例如,第一存储节点确定第二存储节点中存储有数据集合中的部分数据时,可以从第二存储节点获取部分数据。
通过上述系统,在存储系统中,存储节点之间可以进行交互,进行数据传输,避免了计算节点需要多次与数据集合所分布的存储节点交互,能够保证计算下推可以有效、且高效的进行。
在一种可能的实施方式中,第一存储节点根据计算指示执行计算业务,访问数据集合中的目标数据时,该计算指示所执行的计算业务有多种,下面列举其中几种:
第一种、行剪裁。
第一存储节点可以从数据集合中提取满足第一条件的一行或多行数据,一行或多行数据为目标数据。
第二种、列剪裁。
第一存储节点可以从目标数据中提取满足第二条件的一列或多列数据,一列或多列数据为目标数据。
第三种、聚集操作。
第一存储节点可以提取数据集合中的目标数据后,还会对目标数据进行进一步的计算(如求和、求平均、求最小值、求最大值等),也即需要进一步对目标数据执行计算业务,获得计算结果。
通过上述系统,存储节点能够执行多种不同的计算业务,适应于不同计算下推的场景,有效地扩展了应用范围。
第二方面,本申请实施例提供了一种数据访问方法,该方法可以由存储系统中的计算节点执行,有益效果可以参见第一方面的相关描述此处不再赘述。在该方法中:当计算节点需要访问目标数据时,可以先确定该目标数据是否满足计算下推条件。计算节点在确定待访问的目标数据满足计算下推条件的情况下,可以向存储节点中的存储节点发送数据访问请求,数据访问请求用于访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务;之后,再从存储节点获取存储节点访问目标数据的访问结果。
在一种可能的实施方式中,该计算下推条件包括下列的部分或全部:
条件一、数据的类型属于设定的数据类型。
条件二、数据的数据量大于数据量阈值。
条件三、数据所属数据集合需占用的存储空间与计算节点的内存中空闲存储空间满足预设关系。
条件四、数据所在的存储节点负载小于负载阈值。
条件五、针对数据需执行的计算方式属于预设的计算方式。
条件六、数据的访问方式不支持加锁查询。
上述计算下推条件仅是举例,本申请实施例并不限定计算下推条件的具体内容,凡是适应于实施计算下推的场景下需满足的条件均可以作为计算下推条件均适用于本申请实施例。
第三方面,本申请实施例提供了一种数据访问方法,该方法可以由存储系统中的存储节点执行,有益效果可以参见第一方面的相关描述,此处不再赘述。该方法中:存储节点可以从存储系统中的计算节点接收数据访问请求,数据访问请求用于访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务。在接收到该数据访问请求后,存储节点可以获取目标数据所属的数据集合,根据计算指示执行计算业务,访问数据集合中的目标数据;还可以向计算节点反馈访问目标数据的访问结果。
在一种可能的实施方式中,存储节点在获取目标数据所属数据集合时,若数据集合除了分布在存储节点之外,还分布在其他存储节点。该存储节点除了获取本地存储的数据集合中的数据,还可以从其他存储节点获取该数据集合中的数据。也就是说,存储节点在确定存储系统中的其他存储节点中存储有数据集合中的部分数据后,可以从其他存储节点获取部分数据。
在一种可能的实施方式中,存储节点根据计算指示执行计算业务,访问数据集合中的目标数据时,该计算指示所执行的计算业务有多种,下面列举其中几种:
第一种、行剪裁。
存储节点可以从数据集合中提取满足第一条件的一行或多行数据,一行或多行数据为目标数据。
第二种、列剪裁。
存储节点可以从目标数据中提取满足第二条件的一列或多列数据,一列或多列数据为目标数据。
第三种、聚集操作。
存储节点可以提取数据集合中的目标数据后,还会对目标数据进行进一步的计算(如求和、求平均、求最小值、求最大值等),也即需要进一步对目标数据执行计算业务,获得计算结果。
第四方面,本申请实施例还提供了一种数据访问装置,有益效果可以参见第一方面的描述此处不再赘述。该装置具有实现上述第二方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述装置的结构中包括确定单元、发送单元以及接收单元,这些单元可以执行上述第二方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第五方面,本申请实施例还提供了一种数据计算装置,有益效果可以参见第一方面的描述此处不再赘述。该装置具有实现上述第三方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述装置的结构中包括接收单元、计算单元以及发送单元,这些单元可以执行上述第三方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第六方面,本发明实施例提供了一种计算设备,该计算设备包括处理器和存储器,还可以包括网卡,该处理器可以调用该存储器中的程序指令使该计算设备执行上述第二方面或第二方面任一可能的实现方式提供的方法。该存储器与该处理器耦合,其保存执行数据传输方法必要的程序指令和数据。该网卡,用于与其他设备进行通信,传输数据,如向存储节点发送数据访问请求或从存储节点接收访问结果。
该处理器也可以调用该存储器中的程序指令使该计算设备执行上述第三方面或第三方面任一可能的实现方式提供的方法。该存储器与该处理器耦合,其保存执行数据传输方法必要的程序指令和数据。该网卡,用于与其他设备进行通信,传输数据,如从接收节点接收数据访问请求或向计算节点反馈访问结果。
第七方面,本申请提供了一种非瞬态的可读存储介质,该非瞬态的可读存储介质被计算设备执行时,该计算设备可以执行前述第二方面或第二方面的任意可能的实现方式。该非瞬态的可读存储介质被计算设备执行时,该计算设备也可以执行前述第三方面或第三方面的任意可能的实现方式。该存储介质中存储了程序。该存储介质包括但不限于易失性存储器,例如随机访问存储器,非易失性存储器,例如快闪存储器、硬盘(hard disk drive,HDD)、固态硬盘(solid state drive,SSD)。
第八方面,本申请提供了一种计算设备程序产品,该计算设备程序产品包括计算机指令,在被计算设备执行时,该计算设备可以执行前述第二方面或第二方面的任意可能的实现方式。在被计算设备执行时,该计算设备也可以执行前述第三方面或第三方面的任意可能的实现方式。该计算机程序产品可以为一个软件安装包,在需要使用前述第二方面或第二方面的任意可能的实现方式中提供的方法的情况下,可以下载该计算机程序产品并在计算设备上执行该计算机程序产品。
图1为本申请提供的一种系统的架构示意图;
图2为本申请提供的一种数据访问方法示意图;
图3为本申请提供的一种数据访问装置结构示意图;
图4为本申请提供的一种数据计算装置结构示意图。
对存储系统来说,存储系统除了具备存储功能,还需要具备计算功能。所谓计算功能是指存储系统能够对数据进行简单处理,例如过滤、排序等。在存储系统内部,存储系统的节点可以同时具备存储功能以及计算功能,这种存储系统可以称为存算一体类的存储系统。在存储系统内部,存储系统中存在具备存储功能的节点以及具备计算功能的节点,这类存储系统中存储功能和计算功能分离,可以称为存算分离类的存储系统。
如图1所示,本实施例所适用的一种存储系统,该存储系统属于存算分离类的存储系统。该存储系统中包括计算节点集群和存储节点集群。计算节点集群包括一个或多个计算节点110(图1中示出了两个计算节点110,但不限于两个计算节点110),各个计算节点110之间可以相互通信。计算节点110是具备计算功能的计算设备,该计算节点110可以为服务器、台式计算机或者存储阵列的控制器等。
在功能上,计算节点110的主要功能是执行计算业务。计算节点110可以处理客户端发送的数据访问指令。计算节点110可以解析客户端发起的数据访问指令,以确定客户端需要访问的目标数据以及该目标数据所属的数据集合,并确定该数据集合所在的存储节点。
以数据库为例,对于关系型数据库,数据集合可以理解为数据表,目标数据可以理解为该数据表中的部分数据,如部分列或部分行。对于非关系型数据库,数据集合可以理解为包括多个键值对的文件、包含多列的文件或包括多个实体或实体关系的图形。目标数据可以理解为文件中的部分键值对、部分列,也可以为图像中的部分实体以及部分实体关系。
通常,计算节点110在确定了目标数据所属的数据集合之后,可以计算节点110可以向该数据集合所在的存储节点发起数据请求,以请求获取该数据集合。在获取该数据集合之后,根据数据访问指令访问该数据集合中的目标数据,执行计算业务。但在本申请实施例中,计算节点110具备判断逻辑,根据判断结果确定是否将部分计算业务或全部计算业务下推到存储节点100,指示存储节点100按照计算指示对数据进行访问。故而,在本申请实施例中,计算节点110在确定了数据集合所在的存储节点后,可以进一步判断目标数据是否满足计算下推条件。计算节点110在确定目标数据满足计算下推条件的情况下,计算节点110可以向存储节点100发起数据访问请求,该数据访问请求用于请求访问该目标数据,并携带计算指示,该计算用于指示该存储节点100所需执行的计算业务。
从结构上,如图1所示,计算节点110包括控制器111,其中控制器111至少包括处理器112、内存113,计算节点110还可以包括网卡114。
处理器112可以为中央处理器(central processing unit,CPU),用于处理来自计算节点110外部的数据访问请求,或者计算节点110内部生成的请求。
内存113是指与处理器112直接交换数据的内部存储器,既可以是随机存取存储器,也可以是只读存储器(read only memory,ROM)。随机存取存储器可以是动态随机存取存储器(dynamic random access memory,DRAM),或者存储级存储器(storage class memory,SCM)。内存还可以包括其他随机存取存储器,例如静态随机存取存储器(static random access memory,SRAM)等。
网卡114用于与存储节点100通信。计算节点110可以通过网卡114向存储节点100发送请求以对数据进行持久化存储,还可以通过网卡114从存储节点100发送请求以从存储节点获取数据。另外,计算节点110还可以包括总线,用于计算节点110内部各组件之间的通信。在实际实现中,计算节点110也可以内置少量的硬盘,或者外接少量硬盘。
存储节点集群包括多个存储节点100(图1中示出了三个存储节点100,但不限于三个存储节点100,为了区分该三个存储节点100,可以用存储节点100A、存储节点100B、以及存储节点100C)。
从功能上,存储节点100的主要功能为存储数据。每个存储节点中均包括物理存储空间,该物理存储空间是数据实际存储的位置。存储节点所存储的数据可以为数据库中的数据。数据库可以分为关系型数据库以及非关系型数据库。对于关系型数据库,存储节点100可以存储该关系型数据库中的数据表。对于键值对存储(key-value)的非关系型数据库,存储节点100可以存储该非关系型数据库中键值对。对于文档存储(document store)的非关系型数据库,存储节点100可以存储该非关系型数据库中文件(该文件中可以包括多个键值对)。对于基于列的数据库(column-oriented)的非关系型数据库,存储节点100可以存储该非关系型数据库中包括多列数据的文件或数据表。对于图形类型的非关系型数据库 (graph database),存储节点100可以存储该非关系型数据库中的包括一个或多个实体以及实体关系的图形。
通常,存储节点100仅需要根据计算节点110的数据请求,向计算节点110反馈目标数据所属的数据集合。在本申请实施例中,存储节点100在接收到计算节点110的数据访问请求后,可以获取该目标数据所属的数据集合。存储节点100还可以根据数据访问请求访问该数据集合中的目标数据,执行计算业务。
从结构上,一个存储节点100包括一个或多个控制单元101、网卡104与多个硬盘105。网卡104用于与计算节点110通信。硬盘105用于存储数据,可以是磁盘或者其他类型的存储介质,例如固态硬盘或者叠瓦式磁记录硬盘等。控制单元101用于根据计算节点110发送的数据访问请求,向硬盘105中写入数据或者从硬盘105中读取数据。在读写数据的过程中,控制单元101需要将数据访问请求中携带的地址转换为硬盘能够识别的地址。
控制单元101可具有多种形态。例如,控制单元101可以包括CPU和内存。CPU用于执行地址转换以及读写数据等操作。内存用于临时存储将要写入硬盘105的数据,或者从硬盘105读取出来将要发送给计算节点110的数据。在其他情况下,控制单元101也可以为一个可编程的电子部件,例如数据处理单元(data processing unit,DPU)。可选的,DPU也可以替换成图形处理单元(graphics processing unit,GPU)、嵌入式神经网络处理器(neural-network processing units,NPU)等处理芯片。
又例如,控制单元101的功能可以卸载到网卡104上。也即存储节点100内部不具有控制单元101,而是由网卡104来完成数据读写、地址转换以及其他计算功能。此时,网卡104是一个智能网卡。内存103用于临时存储将要写入硬盘105的数据,或者从硬盘105读取出来将要发送给计算节点110的数据。存储节点100中的网卡104和硬盘105之间没有归属关系,网卡104可访问该存储节点100中任意一个硬盘105,因此在存储空间不足时扩展硬盘会较为便捷。
在本申请实施例中,为了有效能够利用存储节点100中的资源(如控制单元101),计算节点110可以将计算节点110中的部分或全部计算业务下推到存储节点100中,也即计算节点110中需要实现的一些计算业务,可以分摊给存储节点100。在存算分离类的存储系统中可以实现计算下推。在本申请实施例中,计算节点110本身具备判断逻辑,能够确定实现计算下推的场景,有效地利用了存储节点100的资源,在一定程度上提升了计算下推的效率。
下面结合附图2对本申请实施例提供的一种数据访问方法进行说明,该方法包括:
步骤201:计算节点110确定当前需要访问目标数据。
场景一、用户可以通过部署在用户侧的客户端向计算节点110发起用于访问目标数据的数据访问指令,该数据访问指令可以携带该目标数据的逻辑地址或该目标数据所属的数据集合的逻辑地址,可选的,该数据访问指令还可以包括目标数据所属的数据集合的标识等。
该数据访问指令所指示的访问目标数据的方式有很多种,例如,用户仅是需要获取某一个数据表中的部分数据(部分行或部分列的数据),则该数据访问指令指示获取该数据表中的该部分数据。又例如,用户需要获取值数据表中满足特定要求的行的数量,则该数据访问指令指示计算该数据表中满足特定要求的行的数量。
场景二、计算节点110需要对存储节点100中的数据进行处理(如对存储节点100中 的数据进行检错、聚类等处理)时,确定需要访问的目标数据。
步骤202:计算节点110确定目标数据是否满足计算下推条件。
计算节点110在确定需要访问目标数据的情况下,可以确定该目标数据是否满足计算下推条件。在本申请实施例中计算下推条件包括下列的部分或全部:
数据类型属于设定的数据类型、数据量大于数据阈值、数据所属的数据集合需占用的存储空间大于所述计算节点110的内存中空闲存储空间、数据所在的存储节点100负载小于负载阈值、针对数据需执行的计算方式属于预设的计算方式、数据的访问方式不支持加锁查询。
下面分别对这六种条件进行说明:
条件一:数据类型属于设定的数据类型。
存储节点100为了存储数据库中的数据,存储节点100还会存储一些辅助数据,如临时数据、元数据、用于描述存储系统的系统数据。
这些辅助数据通常需要计算节点110进行解析的数据,并不需要存储节点100进行计算。当目标数据为辅助数据时,不适用于计算下推。当目标数据为数据库中的数据,则可以实施计算下推。
条件二:数据量大于数据量阈值。
在不实施计算下推的情况下,计算节点110从存储节点100读取数据时,会从该存储节点100获取该数据所属的数据集合。计算节点110在获取该数据集合后,再从该数据集合中提取需要访问的数据或者对该数据集合进行处理,生成处理结果。
对于关系型数据库,该目标数据所属的数据集合可以为数据表。对于非关系型数据库,该目标数据所属的数据集合可以为文件、或图形。以关系型数据库为例,计算节点110往往需要访问的目标数据为数据表中的一部分,计算节点110在从存储节点100获取数据时,会获取该目标数据所属的整个数据表。计算节点110在获取了该数据表之后,可以对该数据表执行计算业务,例如,计算节点110可以从该数据表中获取需要访问的数据,或对该数据表进行访问,获得访问结果。在本申请实施例中,计算节点110可以不获取整个数据表,而是由存储节点100从数据表中提取数据或对数据表进行处理,也即计算节点110可以将计算业务分摊给存储节点100。
当计算节点110将计算业务分摊给存储节点100时,计算节点110可以直接指示存储节点100所需要访问的目标数据,存储节点100将访问该目标数据的结果反馈给计算节点110。
可见,存储节点100在执行该计算业务时,存储节点100需要对数据集合进行处理,这种处理通常会减少数据的数据量。
对于数据量较大的数据集合,存储节点100在执行计算业务时,对该数据集合进行处理时,所减少的数据量较多,计算下推的效果较明显,性能提升也较大。对于数据量较小的数据集合,存储节点100在执行计算业务时,对该数据集合进行处理时,所减少的数据量较少,计算下推的效果较弱,性能提升较小。也就是说,计算节点110所访问的数据所属的数据集合越大,计算下推的效果越明显。
为此,计算节点110可以配置数据量阈值,当所属的数据集合的数据量大于数据量阈值,适用于计算下推。当所属的数据集合的数据量不大于数据量阈值,不适用于计算下推。
条件三:数据所属数据集合占用的存储空间与所述计算节点的内存中空闲存储空间满足预设关系。例如,数据所属的数据集合需占用的存储空间大于或等于该计算节点110的内存中空闲存储空间。又例如,数据所属的数据集合需占用的存储空间与该计算节点110的内存中空闲存储空间的差值大于阈值。
在不实施计算下推的情况下,当计算节点110从存储节点100获取数据集合后,所获取的数据集合可以存放在计算节点110的内存中。若数据集合所需占用的存储空间与该计算节点110的内存中空闲存储空间接近、满足预设的关系(如两者存在大于或等于的关系、以及两者差值大于阈值的关系),该数据集合可能不能完整的存在在计算节点110的内存中。
由前述说明可知,存储节点100在执行计算业务时,通过会伴随数据量的减少。那么,通过存储节点100对该数据集合进行处理后,处理后的数据所需占用的存储空间很可能会小于或等于该计算节点110的内存中空闲存储空间。在这种情况下,适用于计算下推。
条件四:数据所在的存储节点100负载小于负载阈值。
实现计算下推是为了能够有效利用存储节点100中的资源(如控制单元101),也即计算下推的前提是存储节点100中存在空闲的资源能够执行计算业务。存储节点100的负载能够表征当前存储节点100已被占用的资源。当存储节点100的负载较高时,并不利于存储节点100执行计算业务。当存储节点100的负载较低时,存储节点100中存在空闲的资源,能够执行计算业务。故而,计算节点110可以为存储节点100设置负载阈值,在确定是否需要进行计算下推时,计算节点110可以与该数据所在的存储节点100交互,确定该存储节点100当前的负载。其中,数据所在的存储节点100可以是计算节点110基于数据的逻辑地址确定的。
条件五:针对数据需执行的计算方式属于预设的计算方式。
对于计算下推来说,并非所有计算业务均适合下推至存储节点100,由存储节点100执行。计算节点110可以有选择性的选择适合下推至存储节点100的计算业务。计算业务可以理解为对数据执行的计算方式。
在本申请实施例中,计算节点110可以配置一个或多个适合由存储节点100执行的计算方式。对于关系型数据库,该一个或多个适合由存储节点100执行的计算方式可以为以行为粒度提取数据,也可以为以列为粒度提取数据,还可以为对数据进行聚合。对于非关系型数据库,该一个或多个适合由存储节点100执行的计算方式可以为提取特定的键值对,也可以为提取特定列的数据,还可以是对特定的键值对或列进行聚合,也可以是提取图形中的部分实体或实体关系。
条件六:数据的访问方式不支持加锁查询。
加锁查询是指不能对所需查询的目标数据进行修改。在这种情况下,计算节点通常并不需要对查询到的目标数据执行计算业务,相应的,计算节点也不需要计算业务分摊给存储节点。
例如,客户端所发起的数据访问请求指示所需读取的数据用于更新或分享(也即select for update/share)。由于数据需要用于更新或分享,也即所需读取的数据应为原始数据,也即不支持加锁查询,在这种情况下不适于计算下推。又例如,可序列化(serializable)隔离级别的查询操作。
与加锁查询相反,存在支持修改的查询方式。例如,客户端所发起的数据访问请求指 示从数据表user中读取某一列的数量,Select count(*)from user。
步骤203:计算节点110在确定目标数据满足计算下推条件之后,向该目标数据所在的存储节点100发送数据访问请求,该数据访问请求用于请求访问该目标数据,该数据访问请求中携带计算指示。这里以目标数据所在的存储节点100为存储节点100A为例。
计算节点110通过目标数据的逻辑地址或在该目标数据所属的数据集合的逻辑地址确定该目标数据所在的存储节点100。在确定了该数据所在的存储节点100A后,计算节点110可以向该存储节点100A发送数据访问请求。
若计算节点110确定目标数据满足计算下推条件,说明可以将计算业务分摊给存储节点100。计算节点110可以通过数据访问请求中携带的计算指示,该计算指示用于表征在访问该目标数据时所需执行的计算方式,也即通过该计算指示告知存储节点100A所需要执行的计算业务。
步骤204:存储节点100A在接收到数据访问请求之后,根据该计算指示访问目标数据。
存储节点100A在根据该计算指示访问目标数据时,可以先获取该目标数据所属的数据集合,之后,在根据该计算指示访问该数据集合中的目标数据。
对于存储节点100A,在接收到来自计算节点110的数据访问请求时,还需要对数据集合的逻辑地址进行层层转换,转换为硬盘能够识别的物理地址。存储节点100在获得物理地址后,可以根据该物理地址从硬盘中获取该目标数据所属的数据集合。
在存储节点集群中,数据是以最小单元为粒度进行存储的。为了方便说明,将数据存储的最小单元称为分页(page),分页大小可以固定的。每个存储节点100的存储空间可以被划分为一个或多个分页。对于较小的数据,该数据可以完全存储在一个分页中,对于较大的数据,例如,LOB,该数据需要存储在多个分页中,该多个分页可以分布在不同的存储节点100。也就是说,对于数据量较大的数据存储分布在不同存储节点100的情况。
在存储节点集群内部,存储节点100共同维护有全局分页布局信息,该全局分页布局信息中记录了数据所在的分页以及分页所在的存储节点100。
可见,存储节点100A在获取该目标数据所属的数据集合时,存在两种可能的情况:
情况一、该数据集合存储在存储节点100A中。
存储节点100A在接收到计算节点110发起的数据访问请求后,存储节点100A根据该数据访问请求中携带的目标数据的逻辑地址或数据集合的逻辑地址、以及全局分页布局信息确定该目标数据所属的数据集合分布在存储节点100A。存储节点100A可以根据该数据集合的逻辑地址获取该数据集合。
情况二、该数据集合分布在多个存储节点100中,存储节点100A仅是其中一个。
通常,对于数据集合分布在多个不同存储节点100的情况,计算节点110根据该数据集合的逻辑地址确定的该数据集合所在的存储节点100仅是该多个不同存储节点100中的一个存储节点100。当计算节点110需要访问整个数据集合时,向所确定的存储节点100A发起数据请求,用于访问该数据集合。该存储节点100在接收到该数据请求后,可以根据全局分页布局信息,确定该数据集合分布的其他存储节点100、以及该数据集合在其他存储节点100中的地址(事实上,是该数据集合中部分数据在其他存储节点100的地址)。该存储节点100会告知该计算节点110该数据分布的其他存储节点100,以及该数据集合在其他存储节点100中的地址。这样计算节点110可以向其他存储节点100发送数据请求, 以请求从其他存储节点100获取该数据集合中的部分数据。这种数据访问方式经常发生在所访问的数据为大对象的情况下。这种数据访问方式,在计算节点110与存储节点100之间会交互多次,才能获取整个数据集合。
在本申请实施例,为了减少计算节点110与各个存储节点100的交互次数、减少计算节点与存储节点之间的数据传输量,并保证存储节点100能够较好的分摊计算业务。存储节点100A在接收到计算节点110发起的数据访问请求后,若存储节点100A根据该数据访问请求中携带的目标数据的逻辑地址或数据集合的逻辑地址、以及全局分页布局信息确定该目标数据所属的数据集合分布在多个存储节点100。这里以该多个存储节点100分为存储节点100A、存储节点100C以及存储节点100B。
存储节点100A除了获取本地存储的数据集合中的部分数据,存储节点100A可以与存储节点100C以及存储节点100B交互,从存储节点100C以及存储节点100B获取该数据集合中其余数据。
无论采用上述哪种方式,存储节点100A在获取该数据集合后,可以根据该计算指示访问该数据集合中的目标数据,执行计算业务。
对于关系型数据库,下面列举其中三种计算方式。
方式一、行剪裁。
行剪裁是指对数据库中的数据表以行粒度进行剪裁,只提取其中满足要求的部分行。
以MySQL数据库为例,数据库表customers包括json_column、gender等列,其中json_column为JSON数据类型,可以将表达式json_column->"$.id">=1AND json_column->"$.id"<=10作为计算指示。该表达式指示可以从数据库表customers中选取json_column的标识(id)大于等于1,且小于等于10的行。
方式二、列剪裁。
行剪裁是指对数据库中的数据表以列粒度进行剪裁,只提取其中满足要求的部分列。
仍以上述数据库表customers为例,计算指示可以指示仅提取json_column、gender这两列,无需提取其他列。
方式三、聚集操作。
聚集操作是指需要对数据库中的数据表进行汇总,获得汇总结果。这里的汇总包括但不限于:计数(count)、取最大(max)、取最小(min)、求平均(avg)、求和(sum)等。
以计数为例,可以将表达式SELECT COUNT(json_column)FROM customers作为计算指示,用于指示对数据库表customers中json_column列进行计数。
可选的,当数据表customers分布在不同的存储节点100中,计算节点110可以指示其中一个存储节点100对该数据表customers进行计数,该存储节点100除了对所存储的数据表customers中的部分数据进行计数之外,还可以指示出该存储节点100之外的其他存储节点100对所存储的数据表customers中的部分数据进行计数,其他存储节点100可以向该存储节点100反馈计数值,该存储节点100自身计数获得的计数值以及其他存储节点100反馈的计数值汇总后,反馈给计算节点110。
计算节点110也可以指示各个存储节点100对自身存储的数据表customers中的部分数据进行计数,从各个存储节点100获取计数值。计算节点110再将获取的计数值进行汇总。
对于非关系型数据库,下面列举其中三种计算方式。
方式一、属性提取。
该方式可以针对于以键值对存储或文件存储的非关系型数据库。属性提取指示可以只提取部分键值对。
方式二、列剪裁。
该方式可以针对于以基于列存储的非关系型数据库。列剪裁指示可以只提取文件中的部分列。
方式三、聚集操作。
针对于非关系型数据库的聚集操作与针对于关系型数据库的聚集操作类似,具体可以参见前述说明,此处不再赘述。
方式四、实体提取。
该方式可以图形类型的非关系型数据库。实体提取指示可以只提取图形中的部分实体或部分实体关系。
上述计算方式仅是举例,本申请实施例并不限定计算指示所执行的计算方式,凡是能够由存储节点100执行的计算方式仅适用于本申请实施例。
步骤205:存储节点100A将访问结果反馈给计算节点110。
存储节点100A在按照计算指访问了目标数据后,会获得访问结果。该访问结果可以为从数据集合中提取的目标数据,也可以为对目标数据进行了聚集操作后的结果。存储节点100可以将该访问结果反馈给计算节点110。
基于与方法实施例同一发明构思,本申请实施例还提供了一种数据访问装置,该数据访问装置用于执行上述如图2所示的方法实施例中计算节点110执行的方法。如图3所示,数据访问装置300包括确定单元301、发送单元302以及接收单元303,前述单元可以为软件模块。具体地,在数据访问装置300中,各单元之间通过通信通路建立连接。
确定单元301,用于确定待访问的目标数据满足计算下推条件。
发送单元302,用于向存储节点中的存储节点发送数据访问请求,数据访问请求用于访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务。
接收单元303,用于从存储节点获取存储节点访问目标数据的访问结果。
作为一种可能的实施方式,计算下推条件包括下列的部分或全部:
数据的类型属于设定的数据类型。
数据的数据量大于数据量阈值。
数据所属数据集合需占用的存储空间与计算节点的内存中空闲存储空间满足预设关系。
数据所在的存储节点负载小于负载阈值。
针对数据需执行的计算方式属于预设的计算方式。
数据的访问方式不支持加锁查询。
基于与方法实施例同一发明构思,本申请实施例还提供了一种数据计算装置,该数据计算装置用于执行上述如图2所示的方法实施例中存储节点100A执行的方法。如图4所示,数据计算装置400包括接收单元401、计算单元402以及发送单元403,前述单元可以为软件模块。具体地,在数据计算装置400中,各单元之间通过通信通路建立连接。
接收单元401,用于从存储系统中的计算节点接收数据访问请求,数据访问请求用于 访问目标数据,数据访问请求中携带计算指示,计算指示用于表征访问目标数据需执行的计算业务;
计算单元402,用于获取目标数据所属数据集合,根据计算指示执行计算业务,访问数据集合中的目标数据;
发送单元403,用于向计算节点反馈访问目标数据的访问结果。
作为一种可能的实施方式,计算单元402在获取目标数据所属数据集合时,若确定存储系统中的其他存储节点中存储有数据集合中的部分数据;计算单元402可以从其他存储节点获取部分数据。
作为一种可能的实施方式,计算单元402根据计算指示执行计算业务,访问数据集合中的目标数据时,该计算指示所执行的计算业务有多种,下面列举其中几种:
第一种、行剪裁。
计算单元402可以从数据集合中提取满足第一条件的一行或多行数据,一行或多行数据为目标数据。
第二种、列剪裁。
计算单元402可以从目标数据中提取满足第二条件的一列或多列数据,一列或多列数据为目标数据。
第三种、聚集操作。
计算单元402可以提取数据集合中的目标数据后,还会对目标数据进行进一步的计算(如求和、求平均、求最小值、求最大值等),也即需要进一步对目标数据执行计算业务,获得计算结果。
本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上单元集成为一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是个人计算机,手机,或者网络设备等)或处理器(processor)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上述各个附图对应的流程的描述各有侧重,某个流程中没有详述的部分,可以参见其他流程的相关描述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。数据同步的计算机程序产品包括一个或多个数据同步的计算机程序指令,在计算机上加载和执行所述数据同步的计算机程序指令时,全部或部分地产生按照本发明实施例所述的数据同步的流程或功能。
所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所 述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质包括存储有分类模型训练的计算机程序指令的可读存储介质。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如SSD)。
Claims (22)
- 一种存储系统,其特征在于,所述存储系统包括计算节点以及第一存储节点;所述计算节点,用于在确定待访问的目标数据满足计算下推条件后,向所述第一存储节点发送数据访问请求,所述数据访问请求用于访问所述目标数据,所述数据访问请求中携带计算指示,所述计算指示用于表征访问所述目标数据需执行的计算业务;所述第一存储节点,用于接收所述数据访问请求,获取所述目标数据所属数据集合,根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据;向所述计算节点反馈访问结果。
- 如权利要求1所述的系统,其特征在于,所述计算下推条件包括下列的部分或全部:数据的类型属于设定的数据类型;数据的数据量大于数据量阈值;数据所属数据集合需占用的存储空间与所述计算节点的内存中空闲存储空间满足预设关系;数据所在的存储节点负载小于负载阈值;针对数据需执行的计算方式属于预设的计算方式;数据的访问方式不支持加锁查询。
- 如权利要求1或2所述的系统,其特征在于,所述存储系统还包括第二存储节点,所述第一存储节点在获取所述目标数据所属数据集合时,具体用于:确定所述第二存储节点中存储有所述数据集合中的部分数据;从所述第二存储节点获取所述部分数据。
- 如权利要求1-3任一项所述的系统,其特征在于,所述第一存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:从所述数据集合中提取满足第一条件的一行或多行数据,所述一行或多行数据为目标数据。
- 如权利要求1-3任一项所述的系统,其特征在于,所述第一存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:从所述目标数据中提取满足第二条件的一列或多列数据,所述一列或多列数据为目标数据。
- 如权利要求1-3任一项所述的系统,其特征在于,所述第一存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:提取所述数据集合中的所述目标数据,对所述目标数据执行计算业务,获得计算结果。
- 一种数据访问方法,其特征在于,所述方法由存储系统中的计算节点执行,所述方法包括:确定待访问的目标数据满足计算下推条件;向所述存储节点中的存储节点发送数据访问请求,所述数据访问请求用于访问所述目标数据,所述数据访问请求中携带计算指示,所述计算指示用于表征访问所述目标数据需执行的计算业务;从所述存储节点获取所述存储节点访问所述目标数据的访问结果。
- 如权利要求7所述的方法,其特征在于,所述计算下推条件包括下列的部分或全部:数据的类型属于设定的数据类型;数据的数据量大于数据量阈值;数据所属数据集合需占用的存储空间与所述计算节点的内存中空闲存储空间满足预设关系;数据所在的存储节点负载小于负载阈值;针对数据需执行的计算方式属于预设的计算方式;数据的访问方式不支持加锁查询。
- 一种数据访问方法,其特征在于,所述方法由存储系统中的存储节点执行,所述方法包括:从所述存储系统中的计算节点接收数据访问请求,所述数据访问请求用于访问所述目标数据,所述数据访问请求中携带计算指示,所述计算指示用于表征访问所述目标数据需执行的计算业务;获取所述目标数据所属数据集合,根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据;向所述计算节点反馈访问所述目标数据的访问结果。
- 如权利要求9所述的方法,其特征在于,所述获取所述目标数据所属数据集合,包括:确定所述存储系统中的其他存储节点中存储有所述数据集合中的部分数据;从所述其他存储节点获取所述部分数据。
- 如权利要求9或10所述的方法,其特征在于,所述存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,包括:从所述数据集合中提取满足第一条件的一行或多行数据,所述一行或多行数据为目标数据。
- 如权利要求9或10所述的方法,其特征在于,所述存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,包括:从所述目标数据中提取满足第二条件的一列或多列数据,所述一列或多列数据为目标数据。
- 如权利要求9或10所述的方法,其特征在于,所述存储节点根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,包括:提取所述数据集合中的所述目标数据,对所述目标数据执行计算业务,获得计算结果。
- 一种数据访问装置,其特征在于,所述装置包括确定单元、发送单元以及接收单元:所述确定单元,用于确定待访问的目标数据满足计算下推条件;所述发送单元,用于向所述存储节点中的存储节点发送数据访问请求,所述数据访问请求用于访问所述目标数据,所述数据访问请求中携带计算指示,所述计算指示用于表征访问所述目标数据需执行的计算业务;所述接收单元,用于从所述存储节点获取所述存储节点访问所述目标数据的访问结果。
- 如权利要求14所述的装置,其特征在于,所述计算下推条件包括下列的部分或全部:数据的类型属于设定的数据类型;数据的数据量大于数据量阈值;数据所属数据集合需占用的存储空间与所述计算节点的内存中空闲存储空间满足预设关系;数据所在的存储节点负载小于负载阈值;针对数据需执行的计算方式属于预设的计算方式;数据的访问方式不支持加锁查询。
- 一种数据计算装置,其特征在于,所述装置包括接收单元、计算单元以及发送单元:所述接收单元,用于从所述存储系统中的计算节点接收数据访问请求,所述数据访问请求用于访问所述目标数据,所述数据访问请求中携带计算指示,所述计算指示用于表征访问所述目标数据需执行的计算业务;所述计算单元,用于获取所述目标数据所属数据集合,根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据;所述发送单元,用于向所述计算节点反馈访问所述目标数据的访问结果。
- 如权利要求16所述的装置,其特征在于,所述计算单元在获取所述目标数据所属数据集合,具有用于:确定所述存储系统中的其他存储节点中存储有所述数据集合中的部分数据;从所述其他存储节点获取所述部分数据。
- 如权利要求16或17所述的装置,其特征在于,所述计算单元在根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:从所述数据集合中提取满足第一条件的一行或多行数据,所述一行或多行数据为目标数据。
- 如权利要求16或17所述的装置,其特征在于,所述计算单元根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:从所述目标数据中提取满足第二条件的一列或多列数据,所述一列或多列数据为目标数据。
- 如权利要求16或17所述的装置,其特征在于,所述计算单元根据所述计算指示执行计算业务,访问所述数据集合中的所述目标数据,具体用于:提取所述数据集合中的所述目标数据,对所述目标数据执行计算业务,获得计算结果。
- 一种计算设备,其特征在于,所述计算设备包括处理器和存储器;所述存储器,用于存储计算机程序指令;所述处理器调用所述存储器中的计算机程序指令执行如权利要求7至13中任一项所述的方法。
- 一种非瞬态的计算机可读存储介质,其特征在于,所述非瞬态的计算机可读存储介质被计算设备执行时,所述计算设备执行上述权利要求7至13中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111585803.4 | 2021-12-20 | ||
CN202111585803.4A CN116301566A (zh) | 2021-12-20 | 2021-12-20 | 一种存储系统、数据访问方法、装置以及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023116036A1 true WO2023116036A1 (zh) | 2023-06-29 |
Family
ID=86826268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/115975 WO2023116036A1 (zh) | 2021-12-20 | 2022-08-30 | 一种存储系统、数据访问方法、装置以及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116301566A (zh) |
WO (1) | WO2023116036A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109375872A (zh) * | 2018-09-27 | 2019-02-22 | 腾讯科技(深圳)有限公司 | 数据访问请求的处理方法、装置和设备及存储介质 |
CN109726250A (zh) * | 2018-12-27 | 2019-05-07 | 星环信息科技(上海)有限公司 | 数据存储系统、元数据库同步及数据跨域计算方法 |
CN112817729A (zh) * | 2021-02-24 | 2021-05-18 | 阳光人寿保险股份有限公司 | 一种数据源动态调度方法、装置、电子设备及存储介质 |
CN112883048A (zh) * | 2019-11-29 | 2021-06-01 | 阿里巴巴集团控股有限公司 | 一种数据访问方法、装置、服务器及可读存储介质 |
-
2021
- 2021-12-20 CN CN202111585803.4A patent/CN116301566A/zh active Pending
-
2022
- 2022-08-30 WO PCT/CN2022/115975 patent/WO2023116036A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109375872A (zh) * | 2018-09-27 | 2019-02-22 | 腾讯科技(深圳)有限公司 | 数据访问请求的处理方法、装置和设备及存储介质 |
CN109726250A (zh) * | 2018-12-27 | 2019-05-07 | 星环信息科技(上海)有限公司 | 数据存储系统、元数据库同步及数据跨域计算方法 |
CN112883048A (zh) * | 2019-11-29 | 2021-06-01 | 阿里巴巴集团控股有限公司 | 一种数据访问方法、装置、服务器及可读存储介质 |
CN112817729A (zh) * | 2021-02-24 | 2021-05-18 | 阳光人寿保险股份有限公司 | 一种数据源动态调度方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116301566A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190188190A1 (en) | Scaling stateful clusters while maintaining access | |
CN107169083B (zh) | 公安卡口海量车辆数据存储与检索方法及装置、电子设备 | |
US8819335B1 (en) | System and method for executing map-reduce tasks in a storage device | |
US10789231B2 (en) | Spatial indexing for distributed storage using local indexes | |
US8751547B2 (en) | Multiple file system and/or multi-host single instance store techniques | |
CN107180113B (zh) | 一种大数据检索平台 | |
US10210196B2 (en) | Data storage device having internal hardware filter, data storage method and data storage system | |
US10268723B2 (en) | Method and apparatus for executing query and computer readable medium therefor | |
WO2017161540A1 (zh) | 数据查询的方法、数据对象的存储方法和数据系统 | |
US11093143B2 (en) | Methods and systems for managing key-value solid state drives (KV SSDS) | |
US20160147800A1 (en) | Data Processing Method and System and Client | |
US20220164316A1 (en) | Deduplication method and apparatus | |
WO2021043026A1 (zh) | 一种存储空间的管理方法及装置 | |
WO2023116036A1 (zh) | 一种存储系统、数据访问方法、装置以及设备 | |
WO2021082928A1 (zh) | 数据缩减的方法、装置、计算设备和存储介质 | |
WO2024032526A1 (zh) | 一种数据检索处理方法和系统 | |
CN113190528A (zh) | 一种并行分布式大数据架构构建方法及系统 | |
CN115617878B (zh) | 一种数据查询方法、系统、装置、设备及计算机存储介质 | |
WO2023050856A1 (zh) | 数据处理方法及存储系统 | |
WO2023024656A1 (zh) | 数据访问方法、存储系统及存储节点 | |
US10848559B2 (en) | Malware scan status determination for network-attached storage systems | |
US20220253238A1 (en) | Method and apparatus for accessing solid state disk | |
CN116594551A (zh) | 一种数据存储方法及装置 | |
WO2015058628A1 (zh) | 文件的访问方法及装置 | |
WO2023029755A1 (zh) | 数据访问方法、数据库系统、及存储装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22909361 Country of ref document: EP Kind code of ref document: A1 |