CN112286897A - Method for communication between PNFS server and client - Google Patents

Method for communication between PNFS server and client Download PDF

Info

Publication number
CN112286897A
CN112286897A CN202011080089.9A CN202011080089A CN112286897A CN 112286897 A CN112286897 A CN 112286897A CN 202011080089 A CN202011080089 A CN 202011080089A CN 112286897 A CN112286897 A CN 112286897A
Authority
CN
China
Prior art keywords
client
layout
server
file
communication
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
CN202011080089.9A
Other languages
Chinese (zh)
Other versions
CN112286897B (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011080089.9A priority Critical patent/CN112286897B/en
Publication of CN112286897A publication Critical patent/CN112286897A/en
Application granted granted Critical
Publication of CN112286897B publication Critical patent/CN112286897B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/183Provision of network file services by network file servers, e.g. by using NFS, CIFS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The invention provides a method for communication between a PNFS server and a client, which comprises the following steps: the method comprises the steps that a client caches the layout of a communication file sent by a metadata server, and detects the relevance between the file before and after communication; when a plurality of communication files have relevance, setting a metadata server to send a plurality of layouts with relevance to a client once, and increasing the communication time between the client and the metadata server; setting layout effective time for each file, stopping the target communication file which is processed and reaches the layout effective time by the client, and retransmitting the latest layout of the target communication file by the metadata server; the client continues to communicate with the metadata server according to the latest layout. The method provided by the invention optimizes risks which can exist during the reading and writing operations of the PNFS server to a certain extent, exerts the capability of the PNFS server to process data in parallel as much as possible, and improves the performance of the PNFS server to a certain extent.

Description

Method for communication between PNFS server and client
Technical Field
The invention belongs to the technical field of server communication, and particularly relates to a method for communication between a PNFS server and a client.
Background
The NFS (Network File System) allows a System to share directories and files with others on the Network, and even can access files on a remote System like local files, the NFS protocol now generates multiple versions of V1, V2, V3, V4, etc., PNFS (Parallel Network File System) is included in NFS V4.1, and has a distinctive advantage of distributing metadata and data on a machine, connecting a client, a server and a data storage server together, and the client can directly access the data storage server, so that the bottleneck problem of the traditional NFS in performance can be well solved, and thus the storage System can be provided with high performance and high extensibility. With the rapid development of high-performance computing and high-performance data centers, the original NFS V3 is hard to overcome the requirement, and how to break through the parallel computing bottleneck and break through the parallel capability of storage I/O caused by the parallel computing bottleneck is the focus of the current research.
In a conventional NFS server, three clients as shown in fig. 1 access a server through an NFS service, and generally, the server can provide the NFS service for client mount access and is also a data storage place. When a client needs to access a server for data reading and writing, connection must be established between the client and the server, and the server plays a role in receiving a client request and managing data transmitted by the client at the moment, the number of the clients is small, the service and the structure of the server are simple through network connection, a common scene can be well met, but with the increase of the number of the clients and the data processing amount, the traditional NFS is difficult to avoid having a certain worry, the NFS server reaches the bottleneck of the server quickly, and various performances of the system cannot be fully exerted. PNFS can solve such problems well because it is directly connected to the data storage server, which can structurally alter the difficulties encountered by conventional NFS servers.
In summary, compared with the conventional NFS server and the PNFS server, it is obvious that the performance of the conventional NFS server in the specific fields of modern increasing data volume, high-performance computing and the like is very important, and under the pressure of real business, a server type capable of retaining the advantages of the conventional NFS server and breaking through the disadvantages of the conventional NFS server is urgently needed, but under the pressure of real business, a scheme capable of exerting the characteristics of the PNFS to the maximum extent and efficiently improving the IO processing capability of the PNFS is still needed.
Disclosure of Invention
In view of the above-mentioned deficiencies of the prior art, the present invention provides a method for a PNFS server to communicate with a client, so as to solve the above-mentioned technical problems.
In a first aspect, the present invention provides a method for a PNFS server to communicate with a client, including:
the method comprises the steps that a client caches the layout of a communication file sent by a metadata server, and detects the relevance between the file before and after communication;
when a plurality of communication files have relevance, setting a metadata server to send a plurality of layouts with relevance to a client once, and increasing the communication time between the client and the metadata server;
setting layout effective time for each file, stopping the target communication file which is processed and reaches the layout effective time by the client, and retransmitting the latest layout of the target communication file by the metadata server;
the client continues to communicate with the metadata server according to the latest layout.
Further, the method further comprises:
the client sends a communication request to the metadata server, and the metadata server returns the handle and the state information of the corresponding communication file;
the client sends a layout request, and the metadata server returns the layout of the communication file after receiving the request.
Further, the method further comprises:
after receiving the layout of the file, the client sends a read or write request to the metadata memory;
when the client completes the read or write operation, a command is sent to indicate that the operation is finished.
Further, the method further comprises:
when the client performs a write operation to the metadata server, the client needs to perform a layout commit operation before the send command indicates the end of the operation.
Further, the method further comprises:
when a client side carries out read-write operation from a metadata memory, judging whether the read-write operation follows a parallel data path storage access protocol: if not, stopping the current read-write operation and reporting to the client.
Further, the method further comprises:
setting layout effective time for each file, and confirming whether the layout of the communication file is due or not according to the layout effective time;
if the layout effective time is determined to be due, setting the expired communication file processed by the current client as a target communication file;
the metadata server resends the latest layout of the target communication file.
The beneficial effect of the invention is that,
the method for communication between the PNFS server and the client pays attention to the advantages of the PNFS server aiming at the bottleneck point of the traditional NFS in terms of performance, ensures that IO operation stop caused by file layout failure is reduced as much as possible when the client performs data reading operation, avoids the risk of service interruption, can ensure that files are written into the data storage server in parallel during writing operation, and greatly improves the performance of the PNFS.
In addition, the invention has reliable design principle, simple structure and very wide application prospect.
Drawings
In order to more clearly illustrate the embodiments or technical solutions in the prior art of the present invention, the drawings used in the description of the embodiments or prior art will be briefly described below, and it is obvious for those skilled in the art that other drawings can be obtained based on these drawings without creative efforts.
Fig. 1 is a schematic flow chart of NFS server communication in the prior art according to an embodiment of the present invention.
FIG. 2 is a schematic flow diagram of a method of one embodiment of the invention.
Fig. 3 is a schematic flow diagram of a prior art PNFS server communication according to one embodiment of the present invention.
Detailed Description
In order to make those skilled in the art better understand the technical solution of the present invention, the technical solution in the embodiment of the present invention will be clearly and completely described below with reference to the drawings in the embodiment of the present invention, and it is obvious that the described embodiment is only a part of the embodiment of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
FIG. 2 is a schematic flow diagram of a method of one embodiment of the invention.
As shown in fig. 2, the method includes:
step 110, caching the layout of the communication file sent by the metadata server by the client, and detecting the relevance between the file before and after communication;
step 120, when a plurality of communication files have relevance, setting a metadata server to send a plurality of layouts with relevance to a client once, and increasing the communication time between the client and the metadata server;
step 140, setting a layout effective time for each file, stopping the target communication file which is processed by the client and reaches the layout effective time, and retransmitting the latest layout of the target communication file by the metadata server;
the client continues to communicate with the metadata server according to the latest layout, step 140.
Optionally, as an embodiment of the present invention, the method further includes:
the client sends a communication request to the metadata server, and the metadata server returns the handle and the state information of the corresponding communication file;
the client sends a layout request, and the metadata server returns the layout of the communication file after receiving the request.
Optionally, as an embodiment of the present invention, the method further includes:
after receiving the layout of the file, the client sends a read or write request to the metadata memory;
when the client completes the read or write operation, a command is sent to indicate that the operation is finished.
Optionally, as an embodiment of the present invention, the method further includes:
when the client performs a write operation to the metadata server, the client needs to perform a layout commit operation before the send command indicates the end of the operation.
Optionally, as an embodiment of the present invention, the method further includes:
when a client side carries out read-write operation from a metadata memory, judging whether the read-write operation follows a parallel data path storage access protocol: if not, stopping the current read-write operation and reporting to the client.
Optionally, as an embodiment of the present invention, the method further includes:
setting layout effective time for each file, and confirming whether the layout of the communication file is due or not according to the layout effective time;
if the layout effective time is determined to be due, setting the expired communication file processed by the current client as a target communication file;
the metadata server resends the latest layout of the target communication file.
In order to facilitate understanding of the present invention, the following further describes a method for a PNFS server to communicate with a client according to the principle of the method for a PNFS server to communicate with a client in the present invention, in combination with a process of managing between the server and the client in the embodiment.
The performance of the traditional NFS server has increasingly obvious disadvantages under the requirements of rapidly-advanced data volume and high performance, under the pressure of real services, a server type which can retain the advantages of the traditional NFS server and break through the disadvantages of the traditional NFS server is urgently needed to be found, PNFS brings a new idea, the PNFS changes the composition structure of the traditional NFS server, a client does not need to access a data storage through the server, and a metadata server is changed into out-of-band access through a separated means, so that the client can directly communicate with a data storage server, the bottleneck problem caused by other factors such as bandwidth is greatly reduced, and the performance of the server is effectively improved.
1. As shown in fig. 3, the PNFS comprises the following components, the left side is a PNFS server, the upper side is a plurality of clients, and the lower side is a data storage, and the protocol contents referred in the figure are: the PNFS protocol passes metadata between the server and the client as well as a layout, which includes: file write location, file attributes, etc.; a storage access protocol is used to specify the manner in which a client accesses the data repository, and a control protocol is used to synchronize the state between the metadata server and the data server, the synchronization being hidden from the client, such as reorganizing files on the medium. Furthermore, nfsv4.1 does not specify a control protocol, so it has multiple forms, which competition in terms of performance, cost and characteristics provides flexibility for the suppliers.
According to the components of the PNFS, we can obtain that the approximate flow of accessing by the client is as follows:
1) the client requests a layout for manipulating a file;
2) the client obtains the access right of the file by accessing the metadata server;
3) after the client obtains the access right and the layout, the client can directly access data from the data storage, and the access is also to comply with the protocol required by the storage type;
4) if the client changes the operated file and simultaneously changes the file layout example on the client, the changed file layout also needs to be submitted to the metadata server;
5) after the client operation is completed, the remaining modifications are submitted, and a copy of the corresponding file layout is submitted to the metadata server, followed by closing the operated file.
2. PNFS read-write operation flow and corresponding optimization
2.1, according to the above process, the read operation of the client accessing the PNFS server can be divided into the following processes:
1) the client sends a lookup request and an open request to the metadata server, and the metadata server returns file handles and state information;
2) the client side sends a layout request, and the metadata server returns the layout of the file after receiving the request;
3) after receiving the layout of the file, the client can send a read request to the data memory
4) After the client finishes the reading operation, a layout is sent to indicate that the operation is finished;
5) when the file layout taken by the client side has failed, the metadata server sends a cb _ layout command to inform that the layout has failed and needs to be re-acquired or cleared.
Generally, the layout of the related files is cached on the client to achieve the maximum improvement of the performance, when a certain client is disconnected and is not used any more, the held file layout is released, it needs to be noted that in order to avoid the overdue layout cache, the metadata server will recover the failed layout, and after the layout is recovered, the related client will stop the IO operation until the correct file layout is obtained from the metadata server again.
2.2, aiming at the condition that when the file layout fails, the related client stops the IO operation, which causes possible service interruption, the document provides an optimization strategy aiming at the IO stop caused by the file layout failure when the client reads, and the main optimization is divided into the following two parts:
1) in order to confirm whether the file layout cached by the client is invalid or not, a layout invalid time can be set for each file, the client and the metadata server communicate regularly to confirm the file layout held by the client, and if the layout valid time of the file is about to expire, the metadata server actively sends the latest layout of the file to the client regardless of whether the client reads multiple files or single files, and the client can communicate with the data server by using the new file layout.
2) When a certain client side carries out a large number of file reading operations and related files have strong relevance and continuity, the metadata server can be requested to send a plurality of file layouts to the client side at a time, meanwhile, the communication time between the client side and the metadata server is increased, and the efficiency of reading data between the client side and the data storage can be increased as much as possible.
3. The write operation and read operation flow are basically similar, the difference is that the client needs to execute the layout commit t before the layout return at the time of the write operation. In file storage, a data storage server usually consists of multiple NFS servers, and each file may be distributed on all servers or on some number of servers, which has the advantage that clients can simultaneously obtain each part of the relevant file. When a file is written, a client can segment the file into different parts, then write all the parts of the file into the data storage server at the same time, and update the file layout information on the metadata server in time after the writing operation is completed. .
Therefore, the defects of the conventional NFS server of the present invention are more prominent, and the PNFS server can concurrently perform read/write IO, but the PNFS server also has certain disadvantages and problems to be solved urgently.
Although the present invention has been described in detail by referring to the drawings in connection with the preferred embodiments, the present invention is not limited thereto. Various equivalent modifications or substitutions can be made on the embodiments of the present invention by those skilled in the art without departing from the spirit and scope of the present invention, and these modifications or substitutions are within the scope of the present invention/any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (6)

1. A method for a PNFS server to communicate with a client, comprising:
the method comprises the steps that a client caches the layout of a communication file sent by a metadata server, and detects the relevance between the file before and after communication;
when a plurality of communication files have relevance, setting a metadata server to send a plurality of layouts with relevance to a client once, and increasing the communication time between the client and the metadata server;
setting layout effective time for each file, stopping the target communication file which is processed and reaches the layout effective time by the client, and retransmitting the latest layout of the target communication file by the metadata server;
the client continues to communicate with the metadata server according to the latest layout.
2. A PNFS server to client communication method according to claim 1, further comprising:
the client sends a communication request to the metadata server, and the metadata server returns the handle and the state information of the corresponding communication file;
the client sends a layout request, and the metadata server returns the layout of the communication file after receiving the request.
3. A PNFS server to client communication method according to claim 1, further comprising:
after receiving the layout of the file, the client sends a read or write request to the metadata memory;
when the client completes the read or write operation, a command is sent to indicate that the operation is finished.
4. A PNFS server to client communication method according to claim 3, further comprising:
when the client performs a write operation to the metadata server, the client needs to perform a layout commit operation before the send command indicates the end of the operation.
5. A PNFS server to client communication method according to claim 1, further comprising:
when a client side carries out read-write operation from a metadata memory, judging whether the read-write operation follows a parallel data path storage access protocol: if not, stopping the current read-write operation and reporting to the client.
6. A PNFS server to client communication method according to claim 1, further comprising:
setting layout effective time for each file, and confirming whether the layout of the communication file is due or not according to the layout effective time;
if the layout effective time is determined to be due, setting the expired communication file processed by the current client as a target communication file;
the metadata server resends the latest layout of the target communication file.
CN202011080089.9A 2020-10-10 2020-10-10 Method for communication between PNFS server and client Active CN112286897B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011080089.9A CN112286897B (en) 2020-10-10 2020-10-10 Method for communication between PNFS server and client

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011080089.9A CN112286897B (en) 2020-10-10 2020-10-10 Method for communication between PNFS server and client

Publications (2)

Publication Number Publication Date
CN112286897A true CN112286897A (en) 2021-01-29
CN112286897B CN112286897B (en) 2023-01-10

Family

ID=74421849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011080089.9A Active CN112286897B (en) 2020-10-10 2020-10-10 Method for communication between PNFS server and client

Country Status (1)

Country Link
CN (1) CN112286897B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102164161A (en) * 2011-01-10 2011-08-24 清华大学 Method and device for performing file layout extraction on parallel file system
CN103902660A (en) * 2014-03-04 2014-07-02 中国科学院计算技术研究所 System and method for prefetching file layout through readdir++ in cluster file system
CN104021009A (en) * 2012-02-28 2014-09-03 托尼安软件开发系统公司 Methods and system for efficient lifecycle management of storage controller

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102164161A (en) * 2011-01-10 2011-08-24 清华大学 Method and device for performing file layout extraction on parallel file system
CN104021009A (en) * 2012-02-28 2014-09-03 托尼安软件开发系统公司 Methods and system for efficient lifecycle management of storage controller
CN103902660A (en) * 2014-03-04 2014-07-02 中国科学院计算技术研究所 System and method for prefetching file layout through readdir++ in cluster file system

Also Published As

Publication number Publication date
CN112286897B (en) 2023-01-10

Similar Documents

Publication Publication Date Title
US11593319B2 (en) Virtualized data storage system architecture
US10628086B2 (en) Methods and systems for facilitating communications with storage
US7882286B1 (en) Synchronizing volumes for replication
US9459804B1 (en) Active replication switch
US9613048B2 (en) Sending interim notifications to a client of a distributed filesystem
US7627612B2 (en) Methods and apparatus for optimal journaling for continuous data replication
US8521691B1 (en) Seamless migration between replication technologies
US7516287B2 (en) Methods and apparatus for optimal journaling for continuous data replication
US10061666B1 (en) Method and apparatus for adding a director to storage with network-based replication without data resynchronization
US7797358B1 (en) Methods and apparatus for continuous data protection system having journal compression
US9098413B2 (en) Read and write requests to partially cached files
US6883068B2 (en) Methods and apparatus for implementing a chche replacement scheme
CN111124301A (en) Data consistency storage method and system of object storage device
US10657150B2 (en) Secure deletion operations in a wide area network
US20160070741A1 (en) Managing the level of consistency for a file in a distributed filesystem
US20140006687A1 (en) Data Cache Apparatus, Data Storage System and Method
CN103902479A (en) Quick reconstruction mechanism for metadata cache on basis of metadata log
CN107818111B (en) Method for caching file data, server and terminal
CN110807039A (en) Data consistency maintenance system and method in cloud computing environment
EP1566041A2 (en) High-performance lock management for flash copy in n-way shared storage systems
US8650178B2 (en) Systems, methods and software for distributed loading of databases
CN112286897B (en) Method for communication between PNFS server and client
JPH07239808A (en) Distributed data managing system
CN107896248B (en) A kind of parallel file system application method based on client communication
CN113190523B (en) Distributed file system, method and client based on multi-client cooperation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant