Movatterモバイル変換


[0]ホーム

URL:


CN114637703A - Data access apparatus, method, readable medium and electronic device - Google Patents

Data access apparatus, method, readable medium and electronic device
Download PDF

Info

Publication number
CN114637703A
CN114637703ACN202210307683.XACN202210307683ACN114637703ACN 114637703 ACN114637703 ACN 114637703ACN 202210307683 ACN202210307683 ACN 202210307683ACN 114637703 ACN114637703 ACN 114637703A
Authority
CN
China
Prior art keywords
target
data access
socket interface
memory
socket
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210307683.XA
Other languages
Chinese (zh)
Other versions
CN114637703B (en
Inventor
谢永吉
张佳辰
柴稳
张宇
王剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Youzhuju Network Technology Co Ltd
Original Assignee
Beijing Youzhuju Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Youzhuju Network Technology Co LtdfiledCriticalBeijing Youzhuju Network Technology Co Ltd
Priority to CN202210307683.XApriorityCriticalpatent/CN114637703B/en
Publication of CN114637703ApublicationCriticalpatent/CN114637703A/en
Priority to PCT/CN2023/082366prioritypatent/WO2023179509A1/en
Application grantedgrantedCritical
Publication of CN114637703BpublicationCriticalpatent/CN114637703B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Images

Classifications

Landscapes

Abstract

Translated fromChinese

本公开涉及一种数据访问装置、方法、可读介质和电子设备,该数据访问装置包括Fuse模块、多个第一套接字接口以及存储器,Fuse模块通过多个第一套接字接口与存储器进行通信,Fuse模块和第一套接字接口位于内核空间,Fuse模块,用于接收数据访问请求,并从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口,Fuse模块,还用于利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序。本公开可以通过Fuse模块,根据数据访问请求,利用目标套接字接口从存储器中获取目标数据,不需要在用户空间进行中转,能够直接在内核空间将数据访问请求发送到存储器,提高了对目标数据的访问性能。

Figure 202210307683

The present disclosure relates to a data access device, method, readable medium, and electronic device. The data access device includes a Fuse module, a plurality of first socket interfaces, and a memory, and the Fuse module communicates with the memory through the plurality of first socket interfaces. For communication, the Fuse module and the first socket interface are located in the kernel space, and the Fuse module is used to receive a data access request, and from a plurality of first socket interfaces, determine the target socket interface corresponding to the data access request , the Fuse module, is also used to obtain the target data from the memory by using the target socket interface, and send the target data to the target application. In the present disclosure, the target data can be obtained from the memory by using the target socket interface according to the data access request through the Fuse module, without the need for transfer in the user space, and the data access request can be directly sent to the memory in the kernel space, which improves the accuracy of the target data. Data access performance.

Figure 202210307683

Description

Translated fromChinese
数据访问装置、方法、可读介质和电子设备Data access apparatus, method, readable medium and electronic device

技术领域technical field

本公开涉及计算机技术领域,具体地,涉及一种数据访问装置、方法、可读介质和电子设备。The present disclosure relates to the field of computer technology, and in particular, to a data access apparatus, method, readable medium and electronic device.

背景技术Background technique

在计算存储分离这种架构下,当计算节点需要访问分布式文件存储提供的服务时,通常需要挂载一个Fuse(英文:Filesystem in Userspace,中文:用户空间文件系统)模块来实现接入。对这个分布式文件存储的访问请求,会被内核的Fuse模块截获并转发给用户态的Daemon(中文:进程)。然后,用户态的Daemon通过网络将访问请求发送到分布式文件存储的后端,以完成数据的访问。然而,采用这样的方式,文件的访问请求需要从用户态Daemon进行一次中转再通过网络发送出去,在此过程中会涉及到多次拷贝、系统调用和上下文切换等操作,这会影响对数据的访问性能。Under the architecture of separation of computing and storage, when computing nodes need to access services provided by distributed file storage, it is usually necessary to mount a Fuse (English: Filesystem in Userspace, Chinese: Userspace File System) module to achieve access. The access request to this distributed file storage will be intercepted by the kernel's Fuse module and forwarded to the user-mode Daemon (Chinese: process). Then, the user-mode Daemon sends the access request to the backend of the distributed file storage through the network to complete the data access. However, in this way, the file access request needs to be transferred from the user mode Daemon and then sent out through the network. In this process, operations such as multiple copies, system calls and context switching will be involved, which will affect the data access. Access performance.

发明内容SUMMARY OF THE INVENTION

提供该部分内容以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该部分内容并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。This section is provided to introduce in a simplified form concepts that are described in detail in the detailed description that follows. This section is not intended to identify key features or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.

第一方面,本公开提供一种数据访问装置,所述数据访问装置包括用户空间文件系统Fuse模块、多个第一套接字接口以及存储器,所述Fuse模块通过多个所述第一套接字接口与所述存储器进行通信,所述Fuse模块和所述第一套接字接口位于内核空间;In a first aspect, the present disclosure provides a data access device, the data access device includes a user space file system Fuse module, a plurality of first socket interfaces, and a memory, the Fuse module uses a plurality of the first sockets A word interface communicates with the memory, and the Fuse module and the first socket interface are located in kernel space;

所述Fuse模块,用于接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;The Fuse module is used to receive a data access request from a target application to target data, and from a plurality of the first socket interfaces, determine a target socket interface corresponding to the data access request;

所述Fuse模块,还用于利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。The Fuse module is further configured to obtain the target data from the memory by using the target socket interface, and send the target data to the target application to complete data access.

第二方面,本公开提供一种数据访问方法,应用于第一方面所述的装置,所述方法包括:In a second aspect, the present disclosure provides a data access method, which is applied to the device of the first aspect, and the method includes:

通过所述Fuse模块接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;Receive, through the Fuse module, a data access request from a target application to target data, and determine a target socket interface corresponding to the data access request from the plurality of first socket interfaces;

通过所述Fuse模块利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。Obtain the target data from the memory by using the target socket interface through the Fuse module, and send the target data to the target application, so as to complete the data access.

第三方面,本公开提供一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现本公开第二方面所述方法的步骤。In a third aspect, the present disclosure provides a computer-readable medium on which a computer program is stored, and when the program is executed by a processing apparatus, implements the steps of the method described in the second aspect of the present disclosure.

第四方面,本公开提供一种电子设备,包括:In a fourth aspect, the present disclosure provides an electronic device, comprising:

存储装置,其上存储有至少一个计算机程序;a storage device having at least one computer program stored thereon;

至少一个处理装置,用于执行所述存储装置中的所述至少一个计算机程序,以实现本公开第二方面所述方法的步骤。At least one processing device is configured to execute the at least one computer program in the storage device to implement the steps of the method in the second aspect of the present disclosure.

通过上述技术方案,本公开中的数据访问装置包括Fuse模块、多个第一套接字接口以及存储器,Fuse模块通过多个第一套接字接口与存储器进行通信,Fuse模块和第一套接字接口位于内核空间,Fuse模块,用于先接收目标应用程序对目标数据的数据访问请求,之后从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口,再利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。本公开可以通过Fuse模块,根据数据访问请求,利用目标套接字接口从存储器中获取目标数据,不需要在用户空间进行中转,能够直接在内核空间将数据访问请求发送到存储器,提高了对目标数据的访问性能。Through the above technical solutions, the data access device in the present disclosure includes a Fuse module, a plurality of first socket interfaces and a memory, the Fuse module communicates with the memory through the plurality of first socket interfaces, and the Fuse module and the first socket interface The word interface is located in the kernel space, and the Fuse module is used to first receive the data access request of the target application for the target data, and then determine the target socket interface corresponding to the data access request from the multiple first socket interfaces, and then Use the target socket interface to obtain the target data from the memory, and send the target data to the target application to complete the data access. In the present disclosure, the target data can be obtained from the memory by using the target socket interface according to the data access request through the Fuse module, without the need for transfer in the user space, and the data access request can be directly sent to the memory in the kernel space, thereby improving the target data access requirements. Data access performance.

本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。Other features and advantages of the present disclosure will be described in detail in the detailed description that follows.

附图说明Description of drawings

结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent when taken in conjunction with the accompanying drawings and with reference to the following detailed description. Throughout the drawings, the same or similar reference numbers refer to the same or similar elements. It should be understood that the drawings are schematic and that the originals and elements are not necessarily drawn to scale. In the attached image:

图1是根据一示例性实施例示出的一种数据访问装置的框图;1 is a block diagram of a data access device according to an exemplary embodiment;

图2是根据一示例性实施例示出的另一种数据访问装置的框图;FIG. 2 is a block diagram of another data access apparatus according to an exemplary embodiment;

图3是根据一示例性实施例示出的一种数据访问方法的流程图;3 is a flowchart of a data access method according to an exemplary embodiment;

图4是根据图3所示实施例示出的一种步骤201的流程图;Fig. 4 is a flow chart ofstep 201 according to the embodiment shown in Fig. 3;

图5是根据图3所示实施例示出的又一种步骤201的流程图;Fig. 5 is a flow chart of anotherstep 201 shown according to the embodiment shown in Fig. 3;

图6是根据一示例性实施例示出的一种电子设备的框图。Fig. 6 is a block diagram of an electronic device according to an exemplary embodiment.

具体实施方式Detailed ways

下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for the purpose of A more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes, and are not intended to limit the protection scope of the present disclosure.

应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and/or in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this regard.

本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。As used herein, the term "including" and variations thereof are open-ended inclusions, ie, "including but not limited to". The term "based on" is "based at least in part on." The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions of other terms will be given in the description below.

需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。It should be noted that concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or interdependence.

需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。It should be noted that the modifications of "a" and "a plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless the context clearly indicates otherwise, they should be understood as "one or a plurality of". multiple".

本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。The names of messages or information exchanged between multiple devices in the embodiments of the present disclosure are only for illustrative purposes, and are not intended to limit the scope of these messages or information.

本公开中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。All actions of obtaining signals, information or data in this disclosure are carried out under the premise of complying with the corresponding data protection laws and policies of the country where they are located and authorized by the corresponding device owner.

图1是根据一示例性实施例示出的一种数据访问装置的框图。如图1所示,该数据访问装置100包括Fuse模块101、多个第一套接字接口102以及存储器103,Fuse模块101通过多个第一套接字接口102与存储器103进行通信,Fuse模块101和第一套接字接口102位于内核空间。Fig. 1 is a block diagram of a data access apparatus according to an exemplary embodiment. As shown in FIG. 1 , the data access device 100 includes a Fuse module 101 , a plurality of first socket interfaces 102 and a memory 103 , the Fuse module 101 communicates with the memory 103 through the plurality of first socket interfaces 102 , and the Fuse module 101 and the first socket interface 102 are located in kernel space.

Fuse模块101,用于接收目标应用程序对目标数据的数据访问请求,并从多个第一套接字接口102中,确定与数据访问请求对应的目标套接字接口。The Fuse module 101 is configured to receive a data access request for target data from a target application, and determine a target socket interface corresponding to the data access request from the plurality of first socket interfaces 102 .

示例地,对于分布式文件存储来说,计算节点上呈现的一个文件通常会以分片的形式,以将不同文件区段存储在不同的存储后端节点上。也就是说,对某个文件区段的读写实际上可以通过某个特定的Socket(中文:套接字)接口来进行收发。因此,可以通过使Fuse模块感知文件区段与Socket之间的映射关系,从而绕过用户态Daemon,直接在内核中将文件的读写请求通过Socket接口发送到存储后端节点上,以改善对数据的访问性能。For example, for distributed file storage, a file presented on a computing node is usually in the form of shards to store different file segments on different storage backend nodes. That is to say, the reading and writing of a file segment can actually be sent and received through a specific Socket (Chinese: Socket) interface. Therefore, by making the Fuse module aware of the mapping relationship between the file segment and the Socket, the user mode Daemon can be bypassed, and the read and write requests of the file can be directly sent to the storage back-end node through the Socket interface in the kernel, so as to improve the performance of the database. Data access performance.

具体地,在计算存储分离架构下,数据存储在远端的存储器103,当目标应用程序需要在本地对目标文件中的目标数据进行数据访问时,首先可以通过目标应用程序的挂载点(英文:Mount Point),将对目标数据的数据访问请求发送给内核中的VFS(英文:VirtualFile System,中文:虚拟文件系统),并由VFS将该数据访问请求发送给Fuse模块101。然后,Fuse模块101可以根据该数据访问请求,从内核中的多个第一套接字接口102中,确定目标套接字接口。例如,在数据访问请求为目标数据在目标文件中所处的文件区段时,可以预先建立该文件区段与第一套接字接口102之间的对应关系,在接收到数据访问请求后,Fuse模块101可以根据目标数据在目标文件中的位置,利用该对应关系从多个第一套接字接口102中,确定目标套接字接口。Specifically, under the computing-storage separation architecture, data is stored in the remote storage 103. When the target application needs to locally access the target data in the target file, it can first access the target application's mount point (English) : Mount Point), the data access request to the target data is sent to the VFS (English: Virtual File System, Chinese: Virtual File System) in the kernel, and the VFS sends the data access request to the Fuse module 101 . Then, the Fuse module 101 may determine the target socket interface from the plurality of first socket interfaces 102 in the kernel according to the data access request. For example, when the data access request is the file segment where the target data is located in the target file, the corresponding relationship between the file segment and the first socket interface 102 may be established in advance, and after receiving the data access request, The Fuse module 101 can use the corresponding relationship to determine the target socket interface from the plurality of first socket interfaces 102 according to the position of the target data in the target file.

Fuse模块101,还用于利用目标套接字接口从存储器103中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。The Fuse module 101 is further configured to obtain the target data from the memory 103 by using the target socket interface, and send the target data to the target application, so as to complete the data access.

举例来说,Fuse模块101可以将数据访问请求,利用目标套接字接口通过网络直接发送至远端的存储器103。其中,存储器103可以是远程存储器(英文:Remote Storage)。存储器103在接收到数据访问请求之后,可以根据数据访问请求获取存储的目标数据,并将目标数据通过目标套接字接口返回给Fuse模块101。之后Fuse模块101可以将接收到的目标数据发送给VFS,并由VFS将目标数据返回给目标应用程序,以完成数据的访问。For example, the Fuse module 101 can directly send the data access request to the remote storage 103 through the network using the target socket interface. The storage 103 may be a remote storage (English: Remote Storage). After receiving the data access request, the memory 103 can acquire the stored target data according to the data access request, and return the target data to the Fuse module 101 through the target socket interface. Afterwards, the Fuse module 101 can send the received target data to the VFS, and the VFS returns the target data to the target application to complete the data access.

需要说明的是,Fuse模块101通过目标套接字接口直接将数据访问请求发送至存储器103,实际上是建立了一条由VFS、Fuse模块101、第一套接字接口102以及存储器103组成的快速路径,该快速路径不需要再由用户态Daemon进行中转,能够避免在用户态Daemon中转的过程中涉及到的多次拷贝、系统调用和上下文切换等操作,从而降低对数据的访问性能。It should be noted that the Fuse module 101 directly sends the data access request to the memory 103 through the target socket interface, which actually establishes a fast connection consisting of the VFS, the Fuse module 101, the first socket interface 102 and the memory 103. The fast path does not need to be transferred by the user-mode Daemon, which can avoid operations such as multiple copies, system calls, and context switching involved in the user-mode Daemon transfer process, thereby reducing the access performance to data.

综上所述,本公开中的数据访问装置包括Fuse模块、多个第一套接字接口以及存储器,Fuse模块通过多个第一套接字接口与存储器进行通信,Fuse模块和第一套接字接口位于内核空间,Fuse模块,用于先接收目标应用程序对目标数据的数据访问请求,之后从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口,再利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。本公开可以通过Fuse模块,根据数据访问请求,利用目标套接字接口从存储器中获取目标数据,不需要在用户空间进行中转,能够直接在内核空间将数据访问请求发送到存储器,提高了对目标数据的访问性能。To sum up, the data access device in the present disclosure includes a Fuse module, a plurality of first socket interfaces, and a memory, the Fuse module communicates with the memory through the plurality of first socket interfaces, and the Fuse module and the first socket interface The word interface is located in the kernel space, and the Fuse module is used to first receive the data access request of the target application for the target data, and then determine the target socket interface corresponding to the data access request from the multiple first socket interfaces, and then Use the target socket interface to obtain the target data from the memory, and send the target data to the target application to complete the data access. In the present disclosure, the target data can be obtained from the memory by using the target socket interface according to the data access request through the Fuse module, without the need for transfer in the user space, and the data access request can be directly sent to the memory in the kernel space, thereby improving the target data access requirements. Data access performance.

可选地,数据访问请求可以包括目标数据在目标应用程序所要进行数据访问的目标文件中所处的文件区段。其中,Fuse模块101,用于根据文件区段,利用预设对应关系,从多个第一套接字接口102中,确定是否存在与文件区段对应的目标套接字接口,并在确定存在目标套接字接口的情况下,利用目标套接字接口将数据访问请求发送至存储器103。其中,预设对应关系为文件区段与第一套接字接口之间的对应关系。Optionally, the data access request may include a file section where the target data is located in the target file to be accessed by the target application. Among them, the Fuse module 101 is used to determine whether there is a target socket interface corresponding to the file segment from the plurality of first socket interfaces 102 by using a preset correspondence according to the file segment, and when determining that there is a target socket interface corresponding to the file segment In the case of the target socket interface, a data access request is sent to the memory 103 using the target socket interface. The preset corresponding relationship is the corresponding relationship between the file segment and the first socket interface.

举例来说,数据访问请求实际上是用于告诉存储器103目标应用程序所要获取的目标数据在目标文件中的位置。为了提高对数据的访问性能,可以预先在内核建立多条快速路径,并通过构建预设对应关系的方式去记录这些建立好的快速路径。其中,该预设对应关系可以是映射表,例如该映射表可以包括文件区段与第一套接字接口之间的对应关系。在数据访问请求包括目标数据在目标文件中所处的文件区段的情况下,当数据访问请求经过内核的Fuse模块101时,Fuse模块101可以根据文件区段,利用预设对应关系,从多个第一套接字接口102中,确定是否存在与文件区段对应的目标套接字接口。如果存在目标套接字接口,Fuse模块101可以根据目标套接字接口对应的通信协议,利用目标套接字接口,将数据访问请求发送至存储器103。其中,通信协议可以是TCP/IP(英文:Transmission ControlProtocol/Internet Protocol,中文:传输控制协议/网际协议)协议。For example, the data access request is actually used to tell the memory 103 the location of the target data to be acquired by the target application in the target file. In order to improve the access performance to the data, multiple fast paths can be established in the kernel in advance, and these established fast paths can be recorded by constructing a preset corresponding relationship. The preset correspondence may be a mapping table, for example, the mapping table may include a correspondence between the file segment and the first socket interface. In the case where the data access request includes the file segment where the target data is located in the target file, when the data access request passes through the Fuse module 101 of the kernel, the Fuse module 101 can use the preset correspondence according to the file segment to select from multiple In the first socket interface 102, it is determined whether there is a target socket interface corresponding to the file segment. If there is a target socket interface, the Fuse module 101 can send the data access request to the memory 103 by using the target socket interface according to the communication protocol corresponding to the target socket interface. The communication protocol may be TCP/IP (English: Transmission Control Protocol/Internet Protocol, Chinese: Transmission Control Protocol/Internet Protocol) protocol.

需要说明的是,Fuse模块101确定是否存在目标套接字接口的过程,实际上是Fuse模块101通过查询预设对应关系(例如映射表)来确定是否存在快速路径的过程,如果存在目标套接字接口,则说明存在快速路径,那么可以将能够执行快速路径的文件区段的数据访问请求单独通过目标套接字接口发送到存储器103。也就是说,本公开实际上是通过在内核建立预设对应关系,生成Fuse模块101进行数据访问的快速路径,并将对目标文件的数据访问请求直接在内核通过套接字接口发送到存储器103,而不再转发到用户态的Daemon,提高了对目标数据的访问性能。It should be noted that the process in which the Fuse module 101 determines whether there is a target socket interface is actually a process in which the Fuse module 101 determines whether there is a fast path by querying a preset correspondence (such as a mapping table). If there is a target socket If the word interface is used, it means that there is a fast path, then the data access request for the file segment capable of executing the fast path can be sent to the memory 103 through the target socket interface alone. That is to say, the present disclosure actually generates a fast path for data access by the Fuse module 101 by establishing a preset correspondence in the kernel, and directly sends the data access request to the target file to the memory 103 through the socket interface in the kernel. , instead of forwarding to the user-mode Daemon, which improves the access performance to the target data.

图2是根据一示例性实施例示出的另一种数据访问装置的框图。如图2所示,数据访问装置100还包括Fuse Daemon模块104和第二套接字接口105,Fuse Daemon模块104通过第二套接字接口105与存储器103进行通信,Fuse Daemon模块104和第二套接字接口105位于用户空间。Fig. 2 is a block diagram of another data access apparatus according to an exemplary embodiment. As shown in FIG. 2 , the data access device 100 further includes a Fuse Daemon module 104 and a second socket interface 105, the Fuse Daemon module 104 communicates with the memory 103 through the second socket interface 105, the Fuse Daemon module 104 and the second socket interface 105 The socket interface 105 is located in user space.

Fuse模块101,还用于在确定不存在目标套接字接口的情况下,将数据访问请求发送至Fuse Daemon模块104。The Fuse module 101 is further configured to send a data access request to the Fuse Daemon module 104 when it is determined that the target socket interface does not exist.

Fuse Daemon模块104,用于利用第二套接字接口105从存储器103中获取目标数据,并将目标数据发送至目标应用程序。The Fuse Daemon module 104 is used to obtain target data from the memory 103 by using the second socket interface 105, and send the target data to the target application.

在一种场景中,如果不存在目标套接字接口,说明数据访问请求所包括的文件区段为不能执行快速路径的文件区段,那么可以按照原本的处理方式将数据访问请求转发到用户态的Daemon进行处理。也就是说,Fuse模块101可以在确定不存在目标套接字接口时,将数据访问请求发送至Fuse Daemon模块104进行中转。之后可以由Fuse Daemon模块104利用与数据访问请求对应的第二套接字接口105,通过该第二套接字接口105对应的TCP/IP协议将数据访问请求发送至存储器103。存储器103在接收到数据访问请求之后,可以根据数据访问请求获取存储的目标数据,并将目标数据通过该第二套接字接口105、Fuse Daemon模块104、Fuse模块101以及VFS原路返回给目标应用程序,以完成数据的访问。另外,如果内核的多个第一套接字接口102的通信流程出现异常(例如,连接被关闭或者请求超时),Fuse模块101也需要将能够执行快速路径的文件区段的数据访问请求,转发到Fuse Daemon模块104进行处理。In one scenario, if there is no target socket interface, it means that the file segment included in the data access request is a file segment that cannot execute the fast path, then the data access request can be forwarded to the user mode according to the original processing method. Daemon for processing. That is to say, the Fuse module 101 can send the data access request to the Fuse Daemon module 104 for relay when it is determined that the target socket interface does not exist. Afterwards, the Fuse Daemon module 104 can use the second socket interface 105 corresponding to the data access request to send the data access request to the memory 103 through the TCP/IP protocol corresponding to the second socket interface 105 . After receiving the data access request, the memory 103 can obtain the stored target data according to the data access request, and return the target data to the target through the second socket interface 105, the Fuse Daemon module 104, the Fuse module 101 and the VFS. application to complete data access. In addition, if the communication process of the multiple first socket interfaces 102 of the kernel is abnormal (for example, the connection is closed or the request times out), the Fuse module 101 also needs to forward the data access request of the file segment capable of executing the fast path to to the Fuse Daemon module 104 for processing.

需要说明的是,通过Fuse Daemon模块104对数据访问请求进行中转,实际上是建立了一条由VFS、Fuse模块101、Fuse Daemon模块104、第二套接字接口105以及存储器103组成的慢速路径。并且,本公开区分了快速路径的套接字接口和慢速路径的套接字接口,这样便于兼容原有的通信方式,不需要将慢速路径收发的数据格式改成Fuse的请求格式。It should be noted that the transfer of data access requests through the Fuse Daemon module 104 actually establishes a slow path consisting of the VFS, the Fuse module 101 , the Fuse Daemon module 104 , the second socket interface 105 and the memory 103 . Moreover, the present disclosure distinguishes the socket interface of the fast path and the socket interface of the slow path, which facilitates compatibility with the original communication mode, and does not need to change the data format sent and received in the slow path to the request format of Fuse.

可选地,Fuse Daemon模块104还用于在将目标数据发送至目标应用程序后,从存储器103中获取数据访问请求对应的通信信息,并根据通信信息构建新的第一套接字接口102,并将新的第一套接字接口102注册到内核空间中。其中,通信信息包括通信地址和通信端口。Optionally, the Fuse Daemon module 104 is also used to obtain communication information corresponding to the data access request from the memory 103 after sending the target data to the target application, and construct a new first socket interface 102 according to the communication information, And register the new first socket interface 102 into the kernel space. The communication information includes a communication address and a communication port.

示例地,在内核中建立对应关系是完成数据访问的核心,也就是说,需要在内核中建立新的第一套接字接口102。具体地,可以在Fuse Daemon模块104执行完一次数据访问后,从存储器103中获取此次数据访问请求对应的通信信息,再根据通信信息,在内核中建立新的第一套接字接口102,即建立新的Socket连接。For example, establishing a corresponding relationship in the kernel is the core of completing data access, that is, a new first socket interface 102 needs to be established in the kernel. Specifically, after the Fuse Daemon module 104 performs a data access, the communication information corresponding to the data access request can be obtained from the memory 103, and then a new first socket interface 102 is established in the kernel according to the communication information, That is, a new Socket connection is established.

然后Fuse Daemon模块104可以通知存储器103,这些新连接用于快速路径。在存储器103同意新连接用于快速路径后,Fuse Daemon模块104可以将新的第一套接字接口102注册到内核空间中。其中,通信信息可以包括通信地址和通信端口,通信地址例如可以是IP地址,通信端口例如可以是TCP端口。The Fuse Daemon module 104 can then notify the memory 103 that these new connections are for the fast path. After the memory 103 agrees to the new connection for the fast path, the Fuse Daemon module 104 can register the new first socket interface 102 into kernel space. The communication information may include a communication address and a communication port, the communication address may be, for example, an IP address, and the communication port may be, for example, a TCP port.

进一步地,可以在Fuse模块101中设置多种类型的用于建立快速路径的用户态接口。例如,可以在Fuse模块101中提供了四个用户态接口来建立或调整快速路径,具体可以包括以下4个用户态接口:Further, various types of user mode interfaces for establishing a fast path can be set in the Fuse module 101 . For example, four user-mode interfaces may be provided in the Fuse module 101 to establish or adjust the fast path, and may specifically include the following four user-mode interfaces:

1)FUSE_ADD_FAST_PATH,用于向内核注册新的快速路径。其输入为:打开的目标文件对应的file handle(中文:文件句柄),需要映射的目标文件的起始位置,映射的目标文件的文件长度,需要映射的Socket fd(英文:file descriptor)数组以及需要映射的Socket fd的数组长度。其输出为:如果成功的话,返回一个id标识该快速路径,失败则返回错误码。需要说明的是,这里是以目标文件的file handle为对象建立快速路径,而不是以目标文件的inode,这样主要便于进行进程级别的控制(如:只允许某些用户进程能够使用快速路径)。同时,还允许为同一文件区段,注册多个Socket fd,这种情况,内核需要将文件请求往所有对应的Socket上发送。1) FUSE_ADD_FAST_PATH, used to register a new fast path with the kernel. The input is: the file handle (Chinese: file handle) corresponding to the open target file, the starting position of the target file to be mapped, the file length of the mapped target file, the Socket fd (English: file descriptor) array to be mapped, and The length of the array of Socket fds that need to be mapped. The output is: if successful, an id is returned to identify the fast path, and an error code is returned on failure. It should be noted that the fast path is established with the file handle of the target file as the object, rather than the inode of the target file, which is mainly convenient for process-level control (for example, only certain user processes are allowed to use the fast path). At the same time, it is also allowed to register multiple Socket fds for the same file segment. In this case, the kernel needs to send file requests to all corresponding Sockets.

2)FUSE_REMOVE_FAST_PATH,用于向删掉内核注册的快速路径。其输入为:快速路径对应的id。其输出为:如果成功的话,返回0,失败则返回错误码。需要说明的是,对应目标文件被close之后,相应的快速路径会被内核自动删除。2) FUSE_REMOVE_FAST_PATH, used to delete the fast path registered with the kernel. Its input is: the id corresponding to the fast path. The output is: if successful, it returns 0, if it fails, it returns an error code. It should be noted that after the corresponding target file is closed, the corresponding fast path will be automatically deleted by the kernel.

3)FUSE_UPDATE_FAST_PATH,用于更新内核建立的预设对应关系,其输入为:快速路径对应的id,需要映射的Socket fd数组,需要映射的Socket fd的数组长度。其输出为:如果成功的话,返回0,失败则返回错误码。3) FUSE_UPDATE_FAST_PATH, used to update the preset correspondence established by the kernel, its input is: the id corresponding to the fast path, the Socket fd array to be mapped, and the array length of the Socket fd to be mapped. The output is: if successful, it returns 0, if it fails, it returns an error code.

4)FUSE_QUERY_FAST_PATH,用于向查询内核注册的快速路径。其输入为:目标文件对应的file handle,需要映射的目标文件的起始位置,映射的目标文件的文件长度。其输出为:如果存在相应快速路径,则返回快速路径对应的id、实际映射的目标文件的起始位置、实际映射的目标文件的长度以及Socket fd列表,不存在则返回-1。4) FUSE_QUERY_FAST_PATH, for the fast path registered with the query kernel. The input is: the file handle corresponding to the target file, the starting position of the target file to be mapped, and the file length of the mapped target file. The output is: if there is a corresponding fast path, return the id corresponding to the fast path, the starting position of the actual mapped target file, the length of the actual mapped target file, and the Socket fd list, and return -1 if it does not exist.

综上所述,本公开中的数据访问装置包括Fuse模块、多个第一套接字接口以及存储器,Fuse模块通过多个第一套接字接口与存储器进行通信,Fuse模块和第一套接字接口位于内核空间,Fuse模块,用于先接收目标应用程序对目标数据的数据访问请求,之后从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口,再利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。本公开可以通过Fuse模块,根据数据访问请求,利用目标套接字接口从存储器中获取目标数据,不需要在用户空间进行中转,能够直接在内核空间将数据访问请求发送到存储器,提高了对目标数据的访问性能。To sum up, the data access device in the present disclosure includes a Fuse module, a plurality of first socket interfaces, and a memory, the Fuse module communicates with the memory through the plurality of first socket interfaces, and the Fuse module and the first socket interface The word interface is located in the kernel space, and the Fuse module is used to first receive the data access request of the target application for the target data, and then determine the target socket interface corresponding to the data access request from the multiple first socket interfaces, and then Use the target socket interface to obtain the target data from the memory, and send the target data to the target application to complete the data access. The present disclosure can obtain target data from the memory by using the target socket interface according to the data access request through the Fuse module, without the need for transfer in the user space, and can directly send the data access request to the memory in the kernel space, thereby improving the target data access requirements. Data access performance.

图3是根据一示例性实施例示出的一种数据访问方法的流程图。如图3所示,应用于上述任一的数据访问装置,该方法可以包括以下步骤:Fig. 3 is a flow chart of a data access method according to an exemplary embodiment. As shown in Figure 3, applied to any of the above-mentioned data access devices, the method may include the following steps:

步骤201,通过Fuse模块接收目标应用程序对目标数据的数据访问请求,并从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口。Step 201: Receive a data access request for target data from a target application through a Fuse module, and determine a target socket interface corresponding to the data access request from a plurality of first socket interfaces.

步骤202,通过Fuse模块利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。Instep 202, the target data is obtained from the memory by using the target socket interface through the Fuse module, and the target data is sent to the target application, so as to complete the data access.

可选地,步骤201可以通过以下方式实现:Optionally, step 201 can be implemented in the following manner:

通过Fuse模块根据文件区段,利用预设对应关系,从多个第一套接字接口中,确定是否存在与文件区段对应的目标套接字接口,并在确定存在目标套接字接口的情况下,利用目标套接字接口将数据访问请求发送至存储器。其中,预设对应关系为文件区段与第一套接字接口之间的对应关系。According to the file segment, the Fuse module uses the preset correspondence to determine whether there is a target socket interface corresponding to the file segment from a plurality of first socket interfaces, and when it is determined that there is a target socket interface In this case, data access requests are sent to memory using the target socket interface. The preset corresponding relationship is the corresponding relationship between the file segment and the first socket interface.

可选地,步骤201可以通过以下方式实现:Optionally, step 201 can be implemented in the following manner:

通过Fuse模块根据目标套接字接口对应的通信协议,利用目标套接字接口,将数据访问请求发送至存储器。According to the communication protocol corresponding to the target socket interface, the Fuse module uses the target socket interface to send the data access request to the memory.

图4是根据图3所示实施例示出的另一种步骤201的流程图。如图4所示,步骤201可以包括以下步骤:FIG. 4 is a flowchart of anotherstep 201 according to the embodiment shown in FIG. 3 . As shown in FIG. 4, step 201 may include the following steps:

步骤2011,通过Fuse模块在确定不存在目标套接字接口的情况下,将数据访问请求发送至Fuse Daemon模块。Instep 2011, the Fuse module sends a data access request to the Fuse Daemon module when it is determined that the target socket interface does not exist.

步骤2012,通过Fuse Daemon模块利用第二套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序。Instep 2012, the Fuse Daemon module uses the second socket interface to obtain the target data from the memory, and sends the target data to the target application.

图5是根据图3所示实施例示出的又一种步骤201的流程图。如图5所示,步骤201还可以包括以下步骤:FIG. 5 is a flowchart of anotherstep 201 according to the embodiment shown in FIG. 3 . As shown in FIG. 5, step 201 may further include the following steps:

步骤2013,通过Fuse Daemon模块在将目标数据发送至目标应用程序后,从存储器中获取数据访问请求对应的通信信息,并根据通信信息构建新的第一套接字接口,并将新的第一套接字接口注册到内核空间中。其中,通信信息包括通信地址和通信端口。Step 2013, after the target data is sent to the target application through the Fuse Daemon module, the communication information corresponding to the data access request is obtained from the memory, and a new first socket interface is constructed according to the communication information, and the new first socket interface is The socket interface is registered in kernel space. The communication information includes a communication address and a communication port.

综上所述,本公开中的数据访问装置包括Fuse模块、多个第一套接字接口以及存储器,Fuse模块通过多个第一套接字接口与存储器进行通信,Fuse模块和第一套接字接口位于内核空间,Fuse模块,用于先接收目标应用程序对目标数据的数据访问请求,之后从多个第一套接字接口中,确定与数据访问请求对应的目标套接字接口,再利用目标套接字接口从存储器中获取目标数据,并将目标数据发送至目标应用程序,以完成数据的访问。本公开可以通过Fuse模块,根据数据访问请求,利用目标套接字接口从存储器中获取目标数据,不需要在用户空间进行中转,能够直接在内核空间将数据访问请求发送到存储器,提高了对目标数据的访问性能。To sum up, the data access device in the present disclosure includes a Fuse module, a plurality of first socket interfaces, and a memory, the Fuse module communicates with the memory through the plurality of first socket interfaces, and the Fuse module and the first socket interface The word interface is located in the kernel space, and the Fuse module is used to first receive the data access request of the target application for the target data, and then determine the target socket interface corresponding to the data access request from the multiple first socket interfaces, and then Use the target socket interface to obtain the target data from the memory, and send the target data to the target application to complete the data access. The present disclosure can obtain target data from the memory by using the target socket interface according to the data access request through the Fuse module, without the need for transfer in the user space, and can directly send the data access request to the memory in the kernel space, thereby improving the target data access requirements. Data access performance.

下面参考图6,其示出了适于用来实现本公开实施例的电子设备(例如图1中的终端设备或服务器)600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。Referring next to FIG. 6 , it shows a schematic structural diagram of an electronic device (eg, the terminal device or server in FIG. 1 ) 600 suitable for implementing an embodiment of the present disclosure. Terminal devices in the embodiments of the present disclosure may include, but are not limited to, such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablets), PMPs (portable multimedia players), vehicle-mounted terminals (eg, mobile terminals such as in-vehicle navigation terminals), etc., and stationary terminals such as digital TVs, desktop computers, and the like. The electronic device shown in FIG. 6 is only an example, and should not impose any limitation on the function and scope of use of the embodiments of the present disclosure.

如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。As shown in FIG. 6, anelectronic device 600 may include a processing device (eg, a central processing unit, a graphics processor, etc.) 601 that may be loaded into random access according to a program stored in a read only memory (ROM) 602 or from astorage device 608 Various appropriate actions and processes are executed by the programs in the memory (RAM) 603 . In theRAM 603, various programs and data necessary for the operation of theelectronic device 600 are also stored. Theprocessing device 601 , theROM 602 , and theRAM 603 are connected to each other through abus 604 . An input/output (I/O)interface 605 is also connected tobus 604 .

通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。Typically, the following devices can be connected to the I/O interface 605:input devices 606 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; including, for example, a liquid crystal display (LCD), speakers, vibration Anoutput device 607 of a computer, etc.; astorage device 608 including, for example, a magnetic tape, a hard disk, etc.; and acommunication device 609. Communication means 609 may allowelectronic device 600 to communicate wirelessly or by wire with other devices to exchange data. While FIG. 6 showselectronic device 600 having various means, it should be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。In particular, according to embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated in the flowchart. In such an embodiment, the computer program may be downloaded and installed from the network via thecommunication device 609 , or from thestorage device 608 , or from theROM 602 . When the computer program is executed by theprocessing apparatus 601, the above-mentioned functions defined in the methods of the embodiments of the present disclosure are executed.

需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。It should be noted that the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or a combination of any of the above. More specific examples of computer readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable Programmable read only memory (EPROM or flash memory), fiber optics, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing. In this disclosure, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In the present disclosure, however, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave with computer-readable program code embodied thereon. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device . Program code embodied on a computer readable medium may be transmitted using any suitable medium including, but not limited to, electrical wire, optical fiber cable, RF (radio frequency), etc., or any suitable combination of the foregoing.

在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。In some embodiments, the client and server can communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and can communicate with digital data in any form or medium (eg, a communications network) interconnected. Examples of communication networks include local area networks ("LAN"), wide area networks ("WAN"), the Internet (eg, the Internet), and peer-to-peer networks (eg, ad hoc peer-to-peer networks), as well as any currently known or future development network of.

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。The above-mentioned computer-readable medium may be included in the above-mentioned electronic device; or may exist alone without being assembled into the electronic device.

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:通过所述Fuse模块接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;通过所述Fuse模块利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。The above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device: receives a data access request from the target application program to the target data through the Fuse module, and From the plurality of first socket interfaces, determine a target socket interface corresponding to the data access request; obtain the target socket interface from the memory by using the target socket interface through the Fuse module data, and send the target data to the target application to complete data access.

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言——诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing operations of the present disclosure may be written in one or more programming languages, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and This includes conventional procedural programming languages - such as the "C" language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (eg, using an Internet service provider to via Internet connection).

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more logical functions for implementing the specified functions executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It is also noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented in dedicated hardware-based systems that perform the specified functions or operations , or can be implemented in a combination of dedicated hardware and computer instructions.

描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,Fuse模块还可以被描述为“接收对目标数据的数据访问请求的模块”。The modules involved in the embodiments of the present disclosure may be implemented in software or hardware. Wherein, the name of the module does not constitute a limitation of the module itself under certain circumstances, for example, the Fuse module can also be described as "a module that receives a data access request for target data".

本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), Systems on Chips (SOCs), Complex Programmable Logical Devices (CPLDs) and more.

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in connection with the instruction execution system, apparatus or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media may include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media would include one or more wire-based electrical connections, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), fiber optics, compact disk read only memory (CD-ROM), optical storage, magnetic storage, or any suitable combination of the foregoing.

根据本公开的一个或多个实施例,示例1提供了一种数据访问装置,所述数据访问装置包括用户空间文件系统Fuse模块、多个第一套接字接口以及存储器,所述Fuse模块通过多个所述第一套接字接口与所述存储器进行通信,所述Fuse模块和所述第一套接字接口位于内核空间;所述Fuse模块,用于接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;所述Fuse模块,还用于利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。According to one or more embodiments of the present disclosure, Example 1 provides a data access apparatus, the data access apparatus includes a user space file system Fuse module, a plurality of first socket interfaces, and a memory, the Fuse module is configured by A plurality of the first socket interfaces communicate with the memory, the Fuse module and the first socket interfaces are located in the kernel space; the Fuse module is used to receive data from the target application program on the target data access request, and from the plurality of first socket interfaces, determine a target socket interface corresponding to the data access request; the Fuse module is further configured to use the target socket interface from all socket interfaces The target data is obtained from the memory, and the target data is sent to the target application to complete the data access.

根据本公开的一个或多个实施例,示例2提供了示例1的装置,所述数据访问请求包括所述目标数据在所述目标应用程序所要进行数据访问的目标文件中所处的文件区段;所述Fuse模块,用于根据所述文件区段,利用预设对应关系,从多个所述第一套接字接口中,确定是否存在与所述文件区段对应的目标套接字接口,并在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器;所述预设对应关系为所述文件区段与所述第一套接字接口之间的对应关系。According to one or more embodiments of the present disclosure, Example 2 provides the apparatus of Example 1, and the data access request includes a file section where the target data is located in a target file to be accessed by the target application. The Fuse module is used to determine whether there is a target socket interface corresponding to the file segment from a plurality of the first socket interfaces by using a preset correspondence according to the file segment , and when it is determined that the target socket interface exists, use the target socket interface to send the data access request to the memory; the preset correspondence is that the file segment and all Describe the correspondence between the first socket interfaces.

根据本公开的一个或多个实施例,示例3提供了示例2的装置,所述Fuse模块,用于根据所述目标套接字接口对应的通信协议,利用所述目标套接字接口,将所述数据访问请求发送至所述存储器。According to one or more embodiments of the present disclosure, Example 3 provides the apparatus of Example 2, the Fuse module is configured to use the target socket interface according to the communication protocol corresponding to the target socket interface, The data access request is sent to the memory.

根据本公开的一个或多个实施例,示例4提供了示例2的装置,所述数据访问装置还包括Fuse Daemon模块和第二套接字接口,所述Fuse Daemon模块通过所述第二套接字接口与所述存储器进行通信,所述Fuse Daemon模块和所述第二套接字接口位于用户空间;所述Fuse模块,还用于在确定不存在所述目标套接字接口的情况下,将所述数据访问请求发送至所述Fuse Daemon模块;所述Fuse Daemon模块,用于利用所述第二套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序。According to one or more embodiments of the present disclosure, Example 4 provides the apparatus of Example 2, the data access apparatus further comprising a Fuse Daemon module and a second socket interface, the Fuse Daemon module passing through the second socket The word interface communicates with the memory, and the Fuse Daemon module and the second socket interface are located in the user space; the Fuse module is also used to determine that the target socket interface does not exist in the case of, Send the data access request to the Fuse Daemon module; the Fuse Daemon module is used to obtain the target data from the memory by using the second socket interface, and send the target data to the target application.

根据本公开的一个或多个实施例,示例5提供了示例4所述的装置,所述FuseDaemon模块还用于在将所述目标数据发送至所述目标应用程序后,从所述存储器中获取所述数据访问请求对应的通信信息,并根据所述通信信息构建新的第一套接字接口,并将所述新的第一套接字接口注册到所述内核空间中;所述通信信息包括通信地址和通信端口。According to one or more embodiments of the present disclosure, Example 5 provides the apparatus of Example 4, and the FuseDaemon module is further configured to obtain from the memory after sending the target data to the target application the communication information corresponding to the data access request, and constructing a new first socket interface according to the communication information, and registering the new first socket interface in the kernel space; the communication information Including the communication address and communication port.

根据本公开的一个或多个实施例,示例6提供了一种数据访问方法,应用于示例1至示例5中任一项所述的装置,所述方法包括:通过所述Fuse模块接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;通过所述Fuse模块利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。According to one or more embodiments of the present disclosure, Example 6 provides a data access method, which is applied to the apparatus of any one of Examples 1 to 5, the method comprising: receiving a target application through the Fuse module The program makes a data access request for target data, and determines a target socket interface corresponding to the data access request from a plurality of the first socket interfaces; utilizes the target socket through the Fuse module The interface obtains the target data from the memory, and sends the target data to the target application to complete data access.

根据本公开的一个或多个实施例,示例7提供了示例6的方法,所述从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口,包括:通过所述Fuse模块根据所述文件区段,利用预设对应关系,从多个所述第一套接字接口中,确定是否存在与所述文件区段对应的目标套接字接口,并在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器;所述预设对应关系为所述文件区段与所述第一套接字接口之间的对应关系。According to one or more embodiments of the present disclosure, Example 7 provides the method of Example 6, the target socket interface corresponding to the data access request is determined from a plurality of the first socket interfaces, The method includes: determining whether there is a target socket interface corresponding to the file segment from the plurality of first socket interfaces by using a preset correspondence relationship by the Fuse module according to the file segment, and when it is determined that the target socket interface exists, use the target socket interface to send the data access request to the memory; the preset correspondence is the file segment and the Correspondence between the first socket interfaces.

根据本公开的一个或多个实施例,示例8提供了示例7的方法,所述在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器,包括:通过所述Fuse模块根据所述目标套接字接口对应的通信协议,利用所述目标套接字接口,将所述数据访问请求发送至所述存储器。According to one or more embodiments of the present disclosure, Example 8 provides the method of Example 7, wherein in the case of determining that the target socket interface exists, using the target socket interface to request the data access Sending to the memory includes: using the target socket interface to send the data access request to the memory through the Fuse module according to a communication protocol corresponding to the target socket interface.

根据本公开的一个或多个实施例,示例9提供了示例7的方法,所述从多个所述套接字接口中,确定与所述数据访问请求对应的目标套接字接口,包括:通过所述Fuse模块在确定不存在所述目标套接字接口的情况下,将所述数据访问请求发送至所述Fuse Daemon模块;通过所述Fuse Daemon模块利用所述第二套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序。According to one or more embodiments of the present disclosure, Example 9 provides the method of Example 7, wherein the determining a target socket interface corresponding to the data access request from a plurality of the socket interfaces includes: When it is determined that the target socket interface does not exist, the data access request is sent to the Fuse Daemon module through the Fuse module; the Fuse Daemon module uses the second socket interface from The target data is acquired from the memory, and the target data is sent to the target application.

根据本公开的一个或多个实施例,示例10提供了示例7的方法,所述所述从多个所述套接字接口中,确定与所述数据访问请求对应的目标套接字接口,还包括:通过所述FuseDaemon模块在将所述目标数据发送至所述目标应用程序后,从所述存储器中获取所述数据访问请求对应的通信信息,并根据所述通信信息构建新的第一套接字接口,并将所述新的第一套接字接口注册到所述内核空间中;所述通信信息包括通信地址和通信端口。According to one or more embodiments of the present disclosure, Example 10 provides the method of Example 7, the determining a target socket interface corresponding to the data access request from a plurality of the socket interfaces, It also includes: after the target data is sent to the target application by the FuseDaemon module, the communication information corresponding to the data access request is obtained from the memory, and a new first is constructed according to the communication information. socket interface, and register the new first socket interface in the kernel space; the communication information includes a communication address and a communication port.

根据本公开的一个或多个实施例,示例11提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现示例6至示例10中所述方法的步骤。According to one or more embodiments of the present disclosure, Example 11 provides a computer-readable medium having stored thereon a computer program that, when executed by a processing apparatus, implements the steps of the methods described in Examples 6 to 10.

根据本公开的一个或多个实施例,示例12提供了一种电子设备,包括:存储装置,其上存储有至少一个计算机程序;至少一个处理装置,用于执行所述存储装置中的所述计算机程序,以实现示例6至示例10中所述方法的步骤。According to one or more embodiments of the present disclosure, Example 12 provides an electronic device, including: a storage device on which at least one computer program is stored; and at least one processing device for executing the said storage device A computer program to implement the steps of the methods described in Examples 6 to 10.

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。The above description is merely a preferred embodiment of the present disclosure and an illustration of the technical principles employed. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by the specific combination of the above-mentioned technical features, and should also cover, without departing from the above-mentioned disclosed concept, the technical solutions formed by the above-mentioned technical features or Other technical solutions formed by any combination of its equivalent features. For example, a technical solution is formed by replacing the above-mentioned features with the technical features disclosed in the present disclosure (but not limited to) with similar functions.

此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。Additionally, although operations are depicted in a particular order, this should not be construed as requiring that the operations be performed in the particular order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, although the above discussion contains several implementation-specific details, these should not be construed as limitations on the scope of the present disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.

尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。Although the subject matter has been described in language specific to structural features and/or logical acts of method, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims. Regarding the apparatus in the above-mentioned embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be described in detail here.

Claims (10)

Translated fromChinese
1.一种数据访问装置,其特征在于,所述数据访问装置包括用户空间文件系统Fuse模块、多个第一套接字接口以及存储器,所述Fuse模块通过多个所述第一套接字接口与所述存储器进行通信,所述Fuse模块和所述第一套接字接口位于内核空间;1. A data access device, characterized in that the data access device comprises a user space file system Fuse module, a plurality of first socket interfaces and a memory, and the Fuse module passes through a plurality of the first sockets. The interface communicates with the memory, and the Fuse module and the first socket interface are located in the kernel space;所述Fuse模块,用于接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;The Fuse module is used to receive a data access request from a target application to target data, and from a plurality of the first socket interfaces, determine a target socket interface corresponding to the data access request;所述Fuse模块,还用于利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。The Fuse module is further configured to obtain the target data from the memory by using the target socket interface, and send the target data to the target application to complete data access.2.根据权利要求1所述的装置,其特征在于,所述数据访问请求包括所述目标数据在所述目标应用程序所要进行数据访问的目标文件中所处的文件区段;2. The apparatus according to claim 1, wherein the data access request comprises a file section where the target data is located in a target file to be accessed by the target application;所述Fuse模块,用于根据所述文件区段,利用预设对应关系,从多个所述第一套接字接口中,确定是否存在与所述文件区段对应的目标套接字接口,并在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器;所述预设对应关系为所述文件区段与所述第一套接字接口之间的对应关系。The Fuse module is configured to determine whether there is a target socket interface corresponding to the file segment from the plurality of first socket interfaces by using a preset correspondence according to the file segment, and when it is determined that the target socket interface exists, use the target socket interface to send the data access request to the memory; the preset correspondence is the file segment and the Correspondence between the first socket interfaces.3.根据权利要求2所述的装置,其特征在于,所述Fuse模块,用于根据所述目标套接字接口对应的通信协议,利用所述目标套接字接口,将所述数据访问请求发送至所述存储器。3 . The device according to claim 2 , wherein the Fuse module is configured to use the target socket interface to request the data access according to a communication protocol corresponding to the target socket interface. 4 . sent to the memory.4.根据权利要求2所述的装置,其特征在于,所述数据访问装置还包括Fuse Daemon模块和第二套接字接口,所述Fuse Daemon模块通过所述第二套接字接口与所述存储器进行通信,所述Fuse Daemon模块和所述第二套接字接口位于用户空间;4. The device according to claim 2, wherein the data access device further comprises a Fuse Daemon module and a second socket interface, and the Fuse Daemon module communicates with the said Fuse Daemon module through the second socket interface. The memory communicates, and the Fuse Daemon module and the second socket interface are located in the user space;所述Fuse模块,还用于在确定不存在所述目标套接字接口的情况下,将所述数据访问请求发送至所述Fuse Daemon模块;The Fuse module is further configured to send the data access request to the Fuse Daemon module when it is determined that the target socket interface does not exist;所述Fuse Daemon模块,用于利用所述第二套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序。The Fuse Daemon module is configured to obtain the target data from the memory by using the second socket interface, and send the target data to the target application.5.根据权利要求4所述的装置,其特征在于,所述Fuse Daemon模块还用于在将所述目标数据发送至所述目标应用程序后,从所述存储器中获取所述数据访问请求对应的通信信息,并根据所述通信信息构建新的第一套接字接口,并将所述新的第一套接字接口注册到所述内核空间中;所述通信信息包括通信地址和通信端口。5. The apparatus according to claim 4, wherein the Fuse Daemon module is further configured to obtain the corresponding data access request from the memory after the target data is sent to the target application. communication information, and construct a new first socket interface according to the communication information, and register the new first socket interface in the kernel space; the communication information includes a communication address and a communication port .6.一种数据访问方法,其特征在于,应用于权利要求1-5中任一项所述的装置,所述方法包括:6. A data access method, characterized in that, applied to the device according to any one of claims 1-5, the method comprising:通过所述Fuse模块接收目标应用程序对目标数据的数据访问请求,并从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口;Receive, through the Fuse module, a data access request from a target application to target data, and determine a target socket interface corresponding to the data access request from the plurality of first socket interfaces;通过所述Fuse模块利用所述目标套接字接口从所述存储器中获取所述目标数据,并将所述目标数据发送至所述目标应用程序,以完成数据的访问。Obtain the target data from the memory by using the target socket interface through the Fuse module, and send the target data to the target application, so as to complete the data access.7.根据权利要求6所述的方法,其特征在于,所述从多个所述第一套接字接口中,确定与所述数据访问请求对应的目标套接字接口,包括:7. The method according to claim 6, wherein the determining a target socket interface corresponding to the data access request from the plurality of first socket interfaces comprises:通过所述Fuse模块根据所述文件区段,利用预设对应关系,从多个所述第一套接字接口中,确定是否存在与所述文件区段对应的目标套接字接口,并在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器;所述预设对应关系为所述文件区段与所述第一套接字接口之间的对应关系。According to the file segment, the Fuse module determines whether there is a target socket interface corresponding to the file segment from a plurality of the first socket interfaces by using a preset correspondence relationship, and in the When it is determined that the target socket interface exists, use the target socket interface to send the data access request to the memory; the preset corresponding relationship is the file segment and the first Correspondence between socket interfaces.8.根据权利要求7所述的方法,其特征在于,所述在确定存在所述目标套接字接口的情况下,利用所述目标套接字接口将所述数据访问请求发送至所述存储器,包括:8 . The method according to claim 7 , wherein the data access request is sent to the memory by using the target socket interface when it is determined that the target socket interface exists. 9 . ,include:通过所述Fuse模块根据所述目标套接字接口对应的通信协议,利用所述目标套接字接口,将所述数据访问请求发送至所述存储器。The data access request is sent to the memory by using the target socket interface according to the communication protocol corresponding to the target socket interface by the Fuse module.9.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现权利要求6-8中任一项所述方法的步骤。9. A computer-readable medium on which a computer program is stored, characterized in that, when the program is executed by a processing device, the steps of the method according to any one of claims 6-8 are implemented.10.一种电子设备,其特征在于,包括:10. An electronic device, comprising:存储装置,其上存储有至少一个计算机程序;a storage device having at least one computer program stored thereon;至少一个处理装置,用于执行所述存储装置中的所述至少一个计算机程序,以实现权利要求6-8中任一项所述方法的步骤。At least one processing device for executing the at least one computer program in the storage device to implement the steps of the method of any one of claims 6-8.
CN202210307683.XA2022-03-252022-03-25Data access device, method, readable medium and electronic equipmentActiveCN114637703B (en)

Priority Applications (2)

Application NumberPriority DateFiling DateTitle
CN202210307683.XACN114637703B (en)2022-03-252022-03-25Data access device, method, readable medium and electronic equipment
PCT/CN2023/082366WO2023179509A1 (en)2022-03-252023-03-18Data access apparatus and method, and readable medium and electronic device

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN202210307683.XACN114637703B (en)2022-03-252022-03-25Data access device, method, readable medium and electronic equipment

Publications (2)

Publication NumberPublication Date
CN114637703Atrue CN114637703A (en)2022-06-17
CN114637703B CN114637703B (en)2023-09-01

Family

ID=81949214

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN202210307683.XAActiveCN114637703B (en)2022-03-252022-03-25Data access device, method, readable medium and electronic equipment

Country Status (2)

CountryLink
CN (1)CN114637703B (en)
WO (1)WO2023179509A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN114979305A (en)*2022-06-302022-08-30京东方科技集团股份有限公司Communication method, device, equipment, storage medium and program product
WO2023179509A1 (en)*2022-03-252023-09-28北京有竹居网络技术有限公司Data access apparatus and method, and readable medium and electronic device
CN119179430A (en)*2023-11-272024-12-24北京小米移动软件有限公司Data reading and writing method and device, electronic equipment and storage medium
WO2025044080A1 (en)*2023-08-312025-03-06华为云计算技术有限公司Network connection live-migration method and corresponding apparatus

Citations (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN104301442A (en)*2014-11-172015-01-21浪潮电子信息产业股份有限公司Method for realizing client of access object storage cluster based on fuse
CN107329838A (en)*2017-05-232017-11-07努比亚技术有限公司A kind of service interaction method, terminal and computer-readable recording medium
CN107479991A (en)*2017-08-252017-12-15郑州云海信息技术有限公司Object methods of storage operating, apparatus and system based on kernel file system
CN109857545A (en)*2018-12-292019-06-07华为技术有限公司A kind of data transmission method and device
CN112653740A (en)*2020-12-112021-04-13北京金山云网络技术有限公司Load balancing method and device supporting QUIC connection migration and computer product
CN113591139A (en)*2021-10-082021-11-02北京海誉动想科技股份有限公司File access control method and device
CN114089920A (en)*2021-11-252022-02-25北京字节跳动网络技术有限公司 Data storage method, device, readable medium and electronic device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6963905B1 (en)*1997-09-292005-11-08Emc CorporationSystem and method including a communication interface for transferring information between at least two processes
US10705952B2 (en)*2015-11-042020-07-07Sandisk Technologies LlcUser space data storage management
CN108268609B (en)*2017-12-292022-01-28星潮闪耀移动网络科技(中国)有限公司File path establishing and accessing method and device
CN114637703B (en)*2022-03-252023-09-01北京有竹居网络技术有限公司Data access device, method, readable medium and electronic equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN104301442A (en)*2014-11-172015-01-21浪潮电子信息产业股份有限公司Method for realizing client of access object storage cluster based on fuse
CN107329838A (en)*2017-05-232017-11-07努比亚技术有限公司A kind of service interaction method, terminal and computer-readable recording medium
CN107479991A (en)*2017-08-252017-12-15郑州云海信息技术有限公司Object methods of storage operating, apparatus and system based on kernel file system
CN109857545A (en)*2018-12-292019-06-07华为技术有限公司A kind of data transmission method and device
CN112653740A (en)*2020-12-112021-04-13北京金山云网络技术有限公司Load balancing method and device supporting QUIC connection migration and computer product
CN113591139A (en)*2021-10-082021-11-02北京海誉动想科技股份有限公司File access control method and device
CN114089920A (en)*2021-11-252022-02-25北京字节跳动网络技术有限公司 Data storage method, device, readable medium and electronic device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
WO2023179509A1 (en)*2022-03-252023-09-28北京有竹居网络技术有限公司Data access apparatus and method, and readable medium and electronic device
CN114979305A (en)*2022-06-302022-08-30京东方科技集团股份有限公司Communication method, device, equipment, storage medium and program product
CN114979305B (en)*2022-06-302024-03-22京东方科技集团股份有限公司Communication method, device, equipment, storage medium and program product
WO2025044080A1 (en)*2023-08-312025-03-06华为云计算技术有限公司Network connection live-migration method and corresponding apparatus
CN119179430A (en)*2023-11-272024-12-24北京小米移动软件有限公司Data reading and writing method and device, electronic equipment and storage medium

Also Published As

Publication numberPublication date
WO2023179509A1 (en)2023-09-28
CN114637703B (en)2023-09-01

Similar Documents

PublicationPublication DateTitle
US12346269B2 (en)Computing storage separation system and data access method therefor, medium, and electronic device
CN114637703B (en)Data access device, method, readable medium and electronic equipment
CN112035529A (en)Caching method and device, electronic equipment and computer readable storage medium
CN111400625B (en)Page processing method and device, electronic equipment and computer readable storage medium
CN114089920B (en)Data storage method and device, readable medium and electronic equipment
CN115344688B (en)Business data display method and device, electronic equipment and computer readable medium
WO2023202276A1 (en)Domain name resolution request processing method and apparatus, and device, medium and program product
CN113918659A (en) Data manipulation method, device, storage medium and electronic device
CN111752644A (en)Interface simulation method, device, equipment and storage medium
CN112099982A (en)Collapse information positioning method, device, medium and electronic equipment
CN111753238A (en)Data mapping method and device and electronic equipment
CN111241137A (en)Data processing method and device, electronic equipment and storage medium
CN113032808B (en)Data processing method and device, readable medium and electronic equipment
WO2022184037A1 (en)Document processing method, apparatus and device, and medium
CN114780263A (en)Service calling method, device, equipment and storage medium
CN114861106A (en)Information processing method, device, electronic equipment and storage medium
CN114611483A (en) Method and device for automatic upgrade of nuclear power DCS control logic diagram and function diagram
CN115269645A (en)Information query method and device, electronic equipment and computer readable medium
CN118093218A (en) Device driver management method, device, equipment and storage medium
CN115113787A (en) A message processing method, apparatus, device and medium
CN115587090A (en)Data storage method, device, equipment and medium based on Doris
CN113420400A (en)Routing relation establishing method, request processing method, device and equipment
CN112115154A (en)Data processing and data query method, device, equipment and computer readable medium
CN116360710B (en) Data storage method, electronic device and readable medium applied to server cluster
CN110764995A (en)Method, device, medium and electronic equipment for detecting file access abnormity

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp