Method, electronic device, and computer program product for storage management

US11422698B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11422698-B2
Application numberUS-202017094430-A
CountryUS
Kind codeB2
Filing dateNov 10, 2020
Priority dateOct 15, 2020
Publication dateAug 23, 2022
Grant dateAug 23, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments include a method, an electronic device, and a computer program product for storage management. According to one embodiment of the present disclosure, a method for storage management includes: determining at a kernel of a storage server whether a first system call related to a target file is initiated by a thread executed in the storage server, wherein the target file is a file targeted by an accessing operation executed by a client terminal with respect to a storage device; determining a first connection and a second connection that are associated with the target file if the first system call is initiated, wherein the first connection is a connection between the client terminal and the storage server, and the second connection is a connection between the storage server and the storage device; and causing the client terminal to access the target file via the first connection and the second connection.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for storage management, including: determining at a kernel of a storage server whether a first system call related to a target file is initiated by a thread executed in the storage server, wherein the target file is a file targeted by an accessing operation executed by a client terminal with respect to a storage device; determining a first connection and a second connection that are associated with the target file if the first system call is initiated, wherein the first connection is a connection between the client terminal and the storage server, and the second connection is a connection between the storage server and the storage device; and causing the client terminal to access the target file via the first connection and the second connection. 2. The method according to claim 1 , further including: determining whether a second system call related to starting the thread is initiated by a main thread used to manage the storage server; and storing an identifier of the first connection and an identifier of the thread into a storage region of the kernel if the second system call is initiated. 3. The method according to claim 2 , wherein the second system call is selected from multiple idle threads and initiated by the main thread in response to receiving a request from the client terminal for establishing the first connection. 4. The method according to claim 1 , further including: determining whether a third system call related to opening the target file is initiated by the thread; and storing an identifier of the target file into a storage region of the kernel if the third system call is initiated. 5. The method according to claim 4 , wherein the third system call is initiated by the thread in response to receiving a request from the client terminal for accessing the target file, the request including the identifier of the target file, a size of the target file, and a position of the target file. 6. The method according to claim 1 , wherein determining the first connection and the second connection includes: determining an identifier of the second connection based on the first system call; storing the identifier of the second connection into a storage region of the kernel; and determining the first connection and the second connection based on an identifier of the first connection and the identifier of the second connection that are stored in the storage region. 7. The method according to claim 1 , wherein causing the client terminal to access the target file via the first connection and the second connection includes: determining whether the target file is received from the storage device via the second connection; and sending the target file to the client terminal via the first connection if it is determined that the target file is received. 8. The method according to claim 1 , wherein causing the client terminal to access the target file via the first connection and the second connection includes: determining whether the target file is received from the client terminal via the first connection; and sending the target file to the storage device via the second connection if it is determined that the target file is received. 9. The method according to claim 1 , further including: updating metadata, in a persistent memory, that is associated with the target file if it is determined that the client terminal accesses the target file via the first connection and the second connection. 10. The method according to claim 9 , wherein the metadata includes at least one of the following: an identifier of the client terminal, a time when the target file is accessed, an identifier of the target file, a size of the target file, a position of the target file, and an index node for retrieving the target file. 11. The method according to claim 1 , wherein the target file is stored in the storage device, and the method further includes: determining whether a fourth system call related to moving the target file from the storage device to another storage device is initiated; reading, if it is determined that the fourth system call is initiated, the target file from a first group of storage blocks in the storage device that are used to store the target file; and moving the target file to a second group of storage blocks in the other storage device. 12. The method according to claim 11 , wherein the fourth system call includes: a type of movement, an identifier of the storage device, positions of storage blocks in the first group of storage blocks, an identifier of the other storage device, positions of storage blocks in the second group of storage blocks, and a size of the target file. 13. The method according to claim 11 , further including: generating a set of records associated with the target file, wherein one record in the set of records includes: a position of a first storage block in the first group of storage blocks, a position of a second storage block corresponding to the first storage block and in the second group of storage blocks, and a movement state indicator which indicates that a part of the target file on the first storage block has not been moved to the second storage block. 14. The method according to claim 13 , further including: changing, if it is determined that the part of the target file on the first storage block has been moved to the second storage block, the movement state indicator to one indicating that the part of the target file on the first storage block has been moved to the second storage block. 15. The method according to claim 11 , further including: releasing the first group of storage blocks after the target file is moved to the second group of storage blocks. 16. An electronic device, including: at least one processing unit; and at least one memory which is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, wherein the instructions, when executed by the at least one processing unit, cause the device to perform actions including: determining at a kernel of a storage server whether a first system call related to a target file is initiated by a thread executed in the storage server, wherein the target file is a file targeted by an accessing operation executed by a client terminal with respect to a storage device; determining a first connection and a second connection that are associated with the target file if the first system call is initiated, wherein the first connection is a connection between the client terminal and the storage server, and the second connection is a connection between the storage server and the storage device; and causing the client terminal to access the target file via the first connection and the second connection. 17. The device according to claim 16 , wherein the actions further include: determining whether a second system call related to starting the thread is initiated by a main thread used to manage the storage server; and storing an identifier of the first connection and an identifier of the thread into a storage region of the kernel if the second system call is initiated. 18. The device according to claim 17 , wherein the second system call is selected from multiple idle threads and initiated by the main thread in response to receiving a request from the client terminal for establishing the first connection. 19. The device according to claim 16 , wherein the actions further include: determining whether a third system call re

Assignees

Inventors

Classifications

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Management of files · CPC title

  • G06F3/061Primary

    Improving I/O performance · CPC title

  • G06F3/0604Primary

    Improving or facilitating administration, e.g. storage management · CPC title

  • Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11422698B2 cover?
Embodiments include a method, an electronic device, and a computer program product for storage management. According to one embodiment of the present disclosure, a method for storage management includes: determining at a kernel of a storage server whether a first system call related to a target file is initiated by a thread executed in the storage server, wherein the target file is a file targe…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 23 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).