EP0518311A2 - File store method, file access method, and distributed processing system using such methods - Google Patents

File store method, file access method, and distributed processing system using such methods Download PDF

Info

Publication number
EP0518311A2
EP0518311A2 EP92109810A EP92109810A EP0518311A2 EP 0518311 A2 EP0518311 A2 EP 0518311A2 EP 92109810 A EP92109810 A EP 92109810A EP 92109810 A EP92109810 A EP 92109810A EP 0518311 A2 EP0518311 A2 EP 0518311A2
Authority
EP
European Patent Office
Prior art keywords
file
data
units
storage
storing
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.)
Withdrawn
Application number
EP92109810A
Other languages
German (de)
French (fr)
Other versions
EP0518311A3 (en
Inventor
Hidenori Ito
Hitoshi Suzuki
Shoji Iwamoto
Masayuki Orimo
Kinji Mori
Shigeki Hirasawa
Hiroshi Fujise
Masuyuki Takeuchi
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of EP0518311A2 publication Critical patent/EP0518311A2/en
Publication of EP0518311A3 publication Critical patent/EP0518311A3/en
Withdrawn legal-status Critical Current

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

Definitions

  • the present invention relates to a file store method, file access method, and distributed processing system using such methods. More particularly, the present invention relates to a file store method and file access method, to be used in a distributed processing system having a plurality of data processing units capable of efficient parallel processing and system extension.
  • this system is changed to a distributed processing system such as a multi computer system by using a plurality of data processing units (hereinafter called "DPU").
  • DPU data processing units
  • the former file multiplexing approach is basically a technique dealing with failure of file storage units, and does not consider therefore an improvement on system performance through parallel processing and feasibility of system extension.
  • the latter distributed relational data base approach has a possibility of improving the processing performance such that DPUs process in parallel their own data of each file constituting the virtual file.
  • This approach does not also consider feasibility of system extension from the following reasons. If additional DPUs are to be provided in order to take partial charge of data processing, files of the already existing DPU are distributed to the additional DPUs, requiring a complicated work. Furthermore, a file cannot be divided more than the number of original files constituting the virtual file, so that this approach is not applicable to the system having DPUs more than that number.
  • a method of storing a file in a distributed processing system having a plurality of data processing units with storage units, the data processing units being interconnected by a transmission medium includes the step of dividing a file having a set of data in accordance with a physical minimum file division unit, and storing the divided file in the storage units.
  • At least one of the data processing units is provided with a memory unit (e.g., a file management table) for storing correspondence information between a logical store position of data of the file recognized by a program running on the distributed processing system, and a physical store position of the data actually stored in the storage unit.
  • a memory unit e.g., a file management table
  • each file is divided into extents each having at least one block and stored in file storage devices of DPUs of the distributed system.
  • a file store method can be provided which has an ability to expand the system and process files efficiently.
  • Each DPU in a preferred form has a memory unit (file management table) storing information of extents of all storage media.
  • file management table file management table
  • the logical block number of each file can be related to a physical block number.
  • each DPU having files upon reception of a file access request, each DPU having files checks from its file management table whether the requested file is present in its own storage unit. If present, a file access process is executed, and if not present, the request is discarded or a notice indicating that the file is not present is sent back, to thereafter prepare for reception of the next access request. In this manner, DPUs in the system can execute different processings in parallel. It is also possible to increase the number of DPUs and improve the system performance.
  • Fig. 1 shows an example of the structure of a distributed data processing system, applied to which are a method of storing a file and a method of accessing a file according to the first embodiment of the present invention.
  • this system has a plurality of DPUs, e.g., two DPUs 10 and 20, at least one memory, e.g., two memories such as fixed or hard disc devices 11 and 12 (hereinafter simply called disc) connected to the DPU 10, and at least one memory, e.g., two memories such as discs 21 and 22 connected to DPU 20.
  • Each DPU 10, 20 is connected to N (N is an integer not less than one) workstations (WS) 1 to N via a transmission medium such as a local area network (LAN).
  • N is an integer not less than one
  • WS workstations
  • LAN local area network
  • a file A is divided, for example, into four extents A1, A2, A3 and A4 as shown in Fig. 2A, each extent being assigned to at least one block or two or more consecutive blocks.
  • a block is a physical minimum unit of file division.
  • the file A is divided into four extents A1, A2, A3 and A4 which are stored in the discs 11, 12, 21 and 22, respectively.
  • Extents A1 to A4 have been stored discretely in different blocks of one memory (e.g., disc) as shown in Fig. 2B.
  • Fig. 1 Storing a file as shown in Fig. 1 is only an illustrative purpose, and it may be stored for example as shown in Fig. 2C.
  • Each DPU has a central processing unit (CPU), a random access memory (RAM), a read-only memory (ROM), and the like.
  • Each DPU 10, 20 also has another memory, e.g., a file management table 15, 25 such as shown in Fig. 3.
  • the file management table stores correspondence information between a logical store position, e.g., logical block number (LBN), a DPU number, a disc number and a physical store position, e.g., physical block number (PBN), respectively for all data of the file A.
  • the workstation broadcasts a file access request message to the network. Described in this file access request message are information representing that this message is an access request message to the file A, information representing the type of access (one of data retrieval, overwrite, and addition), information regarding the access (contents of overwrite or addition, and other information), and the access requesting workstation number.
  • each DPU checks from the type of access described in the message whether the access request is data addition (step 302).
  • each DPU judges from a predetermined algorithm whether the data is stored in its own disc or a disc connected to another DPU (step 303). In the case of the latter judgment, the message is discarded (step 304). In the case of the former judgment, an area of its own disk to which the data is added is secured (step 305), and the data is written in this area (step 306) to complete the data addition operation.
  • a response message representing a data addition operation completion is transmitted to the access requesting workstation (step 307). It is also judged whether the file management tables are required to be updated because of the data addition (step 308).
  • file management table updating data is transmitted to all other DPUs (step 309).
  • the algorithm determining a necessity of updating the file management tables will be later described when describing the algorithm determining the disc in which data is stored.
  • the type of access is not data addition at the judgment step 302, it is checked from the logical block number (LBN) and DPU number in its own file management table, whether the logical block containing a record requested to access is present in its own disk (step 310). If it is judged as not present, the message is discarded (step 311), and if it is judged as present, the following steps are executed.
  • LBN logical block number
  • DPU number DPU number in its own file management table
  • a record requested to access is present in its own disk, it is then checked whether the type of access is data retrieval or overwrite (step 312).
  • the access requested record is read from the disc (step 313), and the contents of the record is transmitted back to the access requesting workstation (step 314).
  • the overwrite contents are written to the access requested record (step 315), and a response message representing a data overwrite completion report is transmitted to the access requesting workstation (step 316).
  • each DPU terminates the operation which has been executed upon reception of a data retrieval or overwrite request.
  • each DPU can discard a file access request message basing upon a judgment by the store algorithm or a reference to the file management table, thereby allowing each CPU to receive and process the next file access request message. It is therefore possible for DPUs 10 and 20 to access different files at the same time, namely, to perform parallel processing.
  • the data store disk determining algorithm and file management table updating algorithm respectively used by each DPU when adding data will be described.
  • a data addition request makes an issue of to which disk of which DPU the data is added.
  • the following procedure is performed. Namely, a new DPU or DPUs are provided with copies of file management tables of other DPUs, to supply the information of other DPUs to the new DPU or DPUs. In this manner, a new system becomes operable without changing application programs of workstations and without changing the contents of already existing files.
  • the number of DPUs and discs to be increased can be set as desired.
  • the number of workstations to be increased can be set freely.
  • a plurality number of files may be stored.
  • each DPU has a file management table storing correspondence information between a logical block number (LBN), a DPU number, a disc number and a physical block number (PBN), respectively for all data of the file A.
  • LBN logical block number
  • PBN physical block number
  • each DPU has a file management table storing data regarding discs connected only to its own DPU.
  • the other structure is the same shown in Fig. 1, so the drawing of this embodiment system is omitted.
  • DPU 10 has a file management table such as shown in Fig. 5.
  • the file access method of this embodiment is different from that of the first embodiment in the following points.
  • each DPU in the data addition operation responsive to a file access request, each DPU has initially no data allocation information of blocks of discs connected to other DPUs, and cannot make a judgment without this information. Therefore, in order to determine a DPU which performs the data addition operation, basing upon the data allocation information of respective DPUs, it is necessary to exchange such information between DPUs in advance and have a consensus of all DPUs as to unanimously identification of a DPU performing the data addition operation.
  • a process of receiving information of file management tables of other DPUs is provided between the steps 302 and 303 shown in Fig. 4.
  • each DPU executes the step 303.
  • the step 309 shown in Fig. 4 is not necessary.
  • the third embodiment of the present invention will be described.
  • only a particular DPU has a file management table, and this DPU responds to a file access request and passes it to another CPU.
  • Fig. 6 shows an example of the system arrangement of this embodiment. Elements having identical reference numerals to those shown in Fig. 1 have similar functions described with Fig. 1.
  • DPU 110 is a main DPU having a file management table 115.
  • DPUs 120 and 130 are sub DPUs without a file management table.
  • the table 115 stores data regarding all discs 11, 12, 21, 22, 31 and 32 of all DPUs.
  • Fig. 7 shows the processes to be executed by the main DPU 110.
  • the main DPU 110 upon reception of a file access request message from a workstation (step 701), judges from the type of access described in the message, whether the access request is a data addition request (step 702). If not, the steps 310 to 316 shown in Fig. 4 are executed. If data addition request, the main DPU 110 judges using a predetermined one of the above-described algorithms, to which disc of which DPU the addition data is stored (step 703).
  • the request message is transferred to this sub DPU (step 704).
  • step 705 If it is judged that the addition data is to be stored in its own disc, the steps 305 to 307 shown in Fig. 4 are executed using the information of the received message (step 705).
  • step 706 It is also judged whether the data addition has necessitated to update the file management table 115 (step 706). If updating is necessary, the table 115 is updated (step 707).
  • each sub DPU 120, 130 upon reception of a file access request message (step 801), each sub DPU 120, 130 first judges from the type of access described in the message, whether the access request is a data addition request (step 802). If not, the steps 310 to 316 shown in Fig. 4 are executed. If data addition request, the message is discarded (step 803).
  • the main DPU transfers the access request to the sub DPU, and this sub DPU receives it (step 804).
  • step 805 the steps 305 to 307 shown in Fig. 4 are executed.
  • step 806 It is also judged whether the data addition has necessitated to update the file management table 115 (step 806). If updating is necessary, file management table updating data is transmitted to the main DPU 110 (step 807).
  • each workstation has application programs.
  • each DPU may have application programs and issue by itself a file access request. In this case, it is first checked whether the file access request message issued by DPU itself is an access request to its own disc. If Yes, an access to the disc is performed. If No, the file access request message is broadcast to other DPUs to cause one of DPUs to perform a disc access operation.
  • the file access request message is broadcast from a workstation to LAN.
  • the present invention is applicable to message transmission other than broadcasting. Interconnection of workstations and DPUs may be realized by busses other than LAN.
  • the file storage medium is not limited to hard discs, but other medium such as flexible discs, magnetic tapes, CPU memories may also be used.
  • the file access request is executed in units of record number. Instead, other access unit such as key, block, address or the like may be used.
  • each file is stored in division as extents each having at least one block, in file storage media of DPUs of the distributed processing system.
  • a file store method can be provided which has an ability to expand the system and process files efficiently.
  • Each DPU in a preferred form has a file management table storing information of extents of all storage media.
  • the logical block number of each file can be related to a physical block number.

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

A method of storing a file in a distributed processing system having a plurality of data processing units (10, 20) with storage units (11 - 22), the data processing units being interconnected by a transmission medium (LAN), wherein a file having a set of data is divided in accordance with a physical minimum file division unit, and stored in the storage units. At least one of the data processing units is provided with a memory unit (file management table) (15, 25) for storing correspondence information between a logical store position of data of the file recognized by a program running on the distributed processing system, and a physical store position of the data actually stored in the storage unit.

Description

    BACKGROUND OF THE INVENTION FIELD OF THE INVENTION
  • The present invention relates to a file store method, file access method, and distributed processing system using such methods. More particularly, the present invention relates to a file store method and file access method, to be used in a distributed processing system having a plurality of data processing units capable of efficient parallel processing and system extension.
  • DESCRIPTION OF THE RELATED ART
  • As the amount of data to be processed increases in a computer system, this system is changed to a distributed processing system such as a multi computer system by using a plurality of data processing units (hereinafter called "DPU"). In this manner, the increased amount of data can be processed by a plurality of DPUs in parallel, while improving the system performance.
  • It is essential in this case that the system can be easily extended without requiring complicated operations when DPUs are increased in number.
  • The following two approaches have been proposed in allocating a file to a plurality of file storage units connected to DPUs.
    • (1) One approach is a method of multiplexing a file to store the same contents of the file in different file storage units. This method is disclosed, for example, in JP-A-3-92942.
    • (2) The other approach is a method which uses a distributed relational database, wherein a number of files distributed in file storage units of different DPUs are arranged to be recognized as a single file (called "virtual file"), to thereby facilitate development of application programs.
    SUMMARY OF THE INVENTION
  • Of the two conventional approaches, the former file multiplexing approach is basically a technique dealing with failure of file storage units, and does not consider therefore an improvement on system performance through parallel processing and feasibility of system extension.
  • The latter distributed relational data base approach has a possibility of improving the processing performance such that DPUs process in parallel their own data of each file constituting the virtual file. This approach does not also consider feasibility of system extension from the following reasons. If additional DPUs are to be provided in order to take partial charge of data processing, files of the already existing DPU are distributed to the additional DPUs, requiring a complicated work. Furthermore, a file cannot be divided more than the number of original files constituting the virtual file, so that this approach is not applicable to the system having DPUs more than that number.
  • It is therefore an object of the present invention to solve the above-described problems of the related art, and provide a file store method, file access method, and distributed processing system using such methods, capable of efficient data processing and easy system extending, in a distributed processing system.
  • According to an aspect of the present invention, a method of storing a file in a distributed processing system having a plurality of data processing units with storage units, the data processing units being interconnected by a transmission medium, includes the step of dividing a file having a set of data in accordance with a physical minimum file division unit, and storing the divided file in the storage units.
  • According to an example of the present invention, at least one of the data processing units is provided with a memory unit (e.g., a file management table) for storing correspondence information between a logical store position of data of the file recognized by a program running on the distributed processing system, and a physical store position of the data actually stored in the storage unit.
  • Using a file store method of the present invention, each file is divided into extents each having at least one block and stored in file storage devices of DPUs of the distributed system. As a result, a file store method can be provided which has an ability to expand the system and process files efficiently.
  • Each DPU in a preferred form has a memory unit (file management table) storing information of extents of all storage media. As a result, the logical block number of each file can be related to a physical block number.
  • According to an example of a file access method of the present invention, upon reception of a file access request, each DPU having files checks from its file management table whether the requested file is present in its own storage unit. If present, a file access process is executed, and if not present, the request is discarded or a notice indicating that the file is not present is sent back, to thereafter prepare for reception of the next access request. In this manner, DPUs in the system can execute different processings in parallel. It is also possible to increase the number of DPUs and improve the system performance.
  • BRIEF DESCRIPTION OF THE DRAWINGS
    • Fig. 1 shows an example of the structure of a distributed data processing system, applied to which are a method of storing a file and a method of accessing a file according to a first embodiment of the present invention;
    • Fig. 2A is a diagram showing an example of file division used with the embodiment shown in Fig. 1;
    • Fig. 2B is a diagram showing conventional file allocation to a memory;
    • Fig. 2C is a diagram showing another example of file allocation to discs according to an embodiment of the present invention;
    • Fig. 3 shows an example of a file management table provided in a DPU shown in Fig. 1;
    • Fig. 4 is a flow chart showing an example of processes to be executed by the DPU of the embodiment shown in Fig. 1;
    • Fig. 5 shows an example of a file management table provided in a DPU according to another embodiment of the present invention;
    • Fig. 6 shows an example of the arrangement of a distributed processing system according to another embodiment of the present invention;
    • Fig. 7 is a flow chart showing an example of processes to be executed by the main DPU of the embodiment shown in Fig. 6; and
    • Fig. 8 is a flow chart showing an example of processes to be executed by a sub DPU of the embodiment shown in Fig. 6.
    DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
  • Fig. 1 shows an example of the structure of a distributed data processing system, applied to which are a method of storing a file and a method of accessing a file according to the first embodiment of the present invention. In Fig. 1, this system has a plurality of DPUs, e.g., two DPUs 10 and 20, at least one memory, e.g., two memories such as fixed or hard disc devices 11 and 12 (hereinafter simply called disc) connected to the DPU 10, and at least one memory, e.g., two memories such as discs 21 and 22 connected to DPU 20. Each DPU 10, 20 is connected to N (N is an integer not less than one) workstations (WS) 1 to N via a transmission medium such as a local area network (LAN).
  • In this embodiment, a file A is divided, for example, into four extents A₁, A₂, A₃ and A₄ as shown in Fig. 2A, each extent being assigned to at least one block or two or more consecutive blocks. A block is a physical minimum unit of file division. In this example, the file A is divided into four extents A₁, A₂, A₃ and A₄ which are stored in the discs 11, 12, 21 and 22, respectively.
  • Extents A₁ to A₄ have been stored discretely in different blocks of one memory (e.g., disc) as shown in Fig. 2B.
  • Storing a file as shown in Fig. 1 is only an illustrative purpose, and it may be stored for example as shown in Fig. 2C.
  • Each DPU has a central processing unit (CPU), a random access memory (RAM), a read-only memory (ROM), and the like. Each DPU 10, 20 also has another memory, e.g., a file management table 15, 25 such as shown in Fig. 3. The file management table stores correspondence information between a logical store position, e.g., logical block number (LBN), a DPU number, a disc number and a physical store position, e.g., physical block number (PBN), respectively for all data of the file A. The logical position is a data store position recognized by an application program, and the correspondence information indicates at which block, which disc and DPU, data is being stored. For example, it can be known from this table that the data having LBN = 1 is being stored in the disk 11 connected to DPU 10 at the physical block No. 1.
  • A description will be given below for a method of accessing a file in the distributed processing system of this embodiment constructed as shown in Figs. 1 and 3.
  • Consider that an application program running on a workstation requests an access to some record on the file A. First, the workstation broadcasts a file access request message to the network. Described in this file access request message are information representing that this message is an access request message to the file A, information representing the type of access (one of data retrieval, overwrite, and addition), information regarding the access (contents of overwrite or addition, and other information), and the access requesting workstation number.
  • The operation of the operating system of each DPU 10, 20 when receiving the file access request message will be described with reference to the flow chart shown in Fig. 4. Upon reception of the file access request message (step 301), each DPU checks from the type of access described in the message whether the access request is data addition (step 302). In the case of the data addition, each DPU judges from a predetermined algorithm whether the data is stored in its own disc or a disc connected to another DPU (step 303). In the case of the latter judgment, the message is discarded (step 304). In the case of the former judgment, an area of its own disk to which the data is added is secured (step 305), and the data is written in this area (step 306) to complete the data addition operation.
  • The algorithm determining the disc in which data is stored, will be later detailed.
  • When the data was added, a response message representing a data addition operation completion is transmitted to the access requesting workstation (step 307). It is also judged whether the file management tables are required to be updated because of the data addition (step 308).
  • If updating is necessary, file management table updating data is transmitted to all other DPUs (step 309). The algorithm determining a necessity of updating the file management tables will be later described when describing the algorithm determining the disc in which data is stored.
  • If the type of access is not data addition at the judgment step 302, it is checked from the logical block number (LBN) and DPU number in its own file management table, whether the logical block containing a record requested to access is present in its own disk (step 310). If it is judged as not present, the message is discarded (step 311), and if it is judged as present, the following steps are executed.
  • If a record requested to access is present in its own disk, it is then checked whether the type of access is data retrieval or overwrite (step 312). In the case of data retrieval, the access requested record is read from the disc (step 313), and the contents of the record is transmitted back to the access requesting workstation (step 314). In the case of data overwrite, the overwrite contents are written to the access requested record (step 315), and a response message representing a data overwrite completion report is transmitted to the access requesting workstation (step 316). In the above manner, each DPU terminates the operation which has been executed upon reception of a data retrieval or overwrite request.
  • In this embodiment, the operation upon reception of an access request performs the above-described processes. Each DPU can discard a file access request message basing upon a judgment by the store algorithm or a reference to the file management table, thereby allowing each CPU to receive and process the next file access request message. It is therefore possible for DPUs 10 and 20 to access different files at the same time, namely, to perform parallel processing.
  • The data store disk determining algorithm and file management table updating algorithm respectively used by each DPU when adding data, will be described.
  • A data addition request makes an issue of to which disk of which DPU the data is added. There are various types of algorithms solving this issue. Some of them realizing parallel processing efficiently will be described.
    • (1) When a data addition request is received for the file A, a data addition area is ensured at the position next to the already written record of the file A within blocks storing extents of the file A, if there is any block containing such an area allowing to add a record.
      If such a block is not present, a disk having the largest number of empty blocks is identified from the file management table (i.e., disk number and PBN), to ensure an area on the empty blocks of the identified disc.
      In order to deal with the case where all discs have the same number of empty blocks, the priority order of all discs of all DPUs is provided to unambiguously identify one disc with the highest priority order and write data in the identified disc.
      If data is added sequentially following this algorithm, there is one block at most, if any, which has data partially written and an area for writing an additional record. When the whole area of the block is completely filled with added data and there is no area to add a record, DPU carried out such a data addition operation transmits file management table updating data to other DPUs, the updating data including LBN, DPU number, disc number and PBN, respectively of the block to which the data was added.
      The other DPUs receiving this updating data update their own file management tables. For example, assuming that the whole area of the physical block No. 4 of the disc 11 connected to DPU 10 is filled with added data, DPU 10 transmits to the other DPU 20 the updating data containing LBN = 7, DPU number = 10, disc number = 11, and PBN = 4. The table contents of each DPU 10, 20 are therefore updated as indicated by broken line numbers shown in Fig. 3.
      Upon reception of a new data addition request, each DPU can unambiguously identify by itself a disc in which addition data is to be stored, by referring to the updated file management table and following the above-described algorithm.
    • (2) According to the algorithm (1) described above, the disc in which addition data is to be stored is a disc having the largest number of empty blocks. Instead, the disc may be a disk having a smallest access occurrence frequency. The access occurrence frequency can be judged from the use factor of a disc controller. If other algorithm parameters are made same as the algorithm (1), a disc in which addition data is to be stored can be unambiguously identified. Similar to the algorithm (1), this algorithm (2) operates to transmit file management table updating data when necessary, to thereby update file management tables.
    • (3) If the amount of expected addition data is small to the extent that a load of a particular disc in which the addition data is to be stored, will not become large, then the addition data may be stored in only one particular disc so long as there arises no performance difference between DPUs.
  • Using one of the algorithms (1), (2) and (3), a disk for data addition is identified and the file management tables are supervised.
  • If the number of DPUs and discs are increased in the above-described system which deals with a file access request by the above-described file access method, the following procedure is performed. Namely, a new DPU or DPUs are provided with copies of file management tables of other DPUs, to supply the information of other DPUs to the new DPU or DPUs. In this manner, a new system becomes operable without changing application programs of workstations and without changing the contents of already existing files.
  • The number of DPUs and discs to be increased can be set as desired. The number of workstations to be increased can be set freely. A plurality number of files may be stored.
  • Another embodiment of the present invention will be described.
  • In the first embodiment, each DPU has a file management table storing correspondence information between a logical block number (LBN), a DPU number, a disc number and a physical block number (PBN), respectively for all data of the file A. In the second embodiment, each DPU has a file management table storing data regarding discs connected only to its own DPU. The other structure is the same shown in Fig. 1, so the drawing of this embodiment system is omitted. For example, DPU 10 has a file management table such as shown in Fig. 5.
  • The file access method of this embodiment is different from that of the first embodiment in the following points. In this embodiment, in the data addition operation responsive to a file access request, each DPU has initially no data allocation information of blocks of discs connected to other DPUs, and cannot make a judgment without this information. Therefore, in order to determine a DPU which performs the data addition operation, basing upon the data allocation information of respective DPUs, it is necessary to exchange such information between DPUs in advance and have a consensus of all DPUs as to unanimously identification of a DPU performing the data addition operation.
  • Specifically, a process of receiving information of file management tables of other DPUs is provided between the steps 302 and 303 shown in Fig. 4. In accordance with the received information and the information of its own file management table, each DPU executes the step 303. The step 309 shown in Fig. 4 is not necessary.
  • With the above procedure, it is possible to execute parallel processing of file accesses by a plurality of DPUs and expand the system, like the manner described with the first embodiment.
  • The third embodiment of the present invention will be described. In this embodiment, only a particular DPU has a file management table, and this DPU responds to a file access request and passes it to another CPU.
  • Fig. 6 shows an example of the system arrangement of this embodiment. Elements having identical reference numerals to those shown in Fig. 1 have similar functions described with Fig. 1. DPU 110 is a main DPU having a file management table 115. DPUs 120 and 130 are sub DPUs without a file management table. The table 115 stores data regarding all discs 11, 12, 21, 22, 31 and 32 of all DPUs.
  • An illustrative operation of this embodiment will be described with reference to the flow charts shown in Figs. 7 and 8. Fig. 7 shows the processes to be executed by the main DPU 110. Referring to Fig. 7, upon reception of a file access request message from a workstation (step 701), the main DPU 110 judges from the type of access described in the message, whether the access request is a data addition request (step 702). If not, the steps 310 to 316 shown in Fig. 4 are executed. If data addition request, the main DPU 110 judges using a predetermined one of the above-described algorithms, to which disc of which DPU the addition data is stored (step 703).
  • If it is judged that the addition data is to be stored in a disc of a certain sub DPU, the request message is transferred to this sub DPU (step 704).
  • If it is judged that the addition data is to be stored in its own disc, the steps 305 to 307 shown in Fig. 4 are executed using the information of the received message (step 705).
  • It is also judged whether the data addition has necessitated to update the file management table 115 (step 706). If updating is necessary, the table 115 is updated (step 707).
  • The processes to be executed by each sub DPU are shown in Fig. 8.
  • Referring to Fig. 8, upon reception of a file access request message (step 801), each sub DPU 120, 130 first judges from the type of access described in the message, whether the access request is a data addition request (step 802). If not, the steps 310 to 316 shown in Fig. 4 are executed. If data addition request, the message is discarded (step 803).
  • If the access request is a data addition request to a disc of a sub DPU, the main DPU transfers the access request to the sub DPU, and this sub DPU receives it (step 804).
  • Next, in accordance with the message, the steps 305 to 307 shown in Fig. 4 are executed (step 805).
  • It is also judged whether the data addition has necessitated to update the file management table 115 (step 806). If updating is necessary, file management table updating data is transmitted to the main DPU 110 (step 807).
  • In the above embodiments, each workstation has application programs. Instead, each DPU may have application programs and issue by itself a file access request. In this case, it is first checked whether the file access request message issued by DPU itself is an access request to its own disc. If Yes, an access to the disc is performed. If No, the file access request message is broadcast to other DPUs to cause one of DPUs to perform a disc access operation.
  • Alternatively, the similar processes are also executed if a workstation is directly connected to a DPU and has application programs.
  • In the above embodiments, the file access request message is broadcast from a workstation to LAN. The present invention is applicable to message transmission other than broadcasting. Interconnection of workstations and DPUs may be realized by busses other than LAN.
  • Needless to say, the file storage medium is not limited to hard discs, but other medium such as flexible discs, magnetic tapes, CPU memories may also be used. In the above embodiments, although the file access request is executed in units of record number. Instead, other access unit such as key, block, address or the like may be used.
  • As described so far, in the file store method of the present invention, each file is stored in division as extents each having at least one block, in file storage media of DPUs of the distributed processing system. As a result, a file store method can be provided which has an ability to expand the system and process files efficiently.
  • Each DPU in a preferred form has a file management table storing information of extents of all storage media. As a result, the logical block number of each file can be related to a physical block number.

Claims (19)

  1. A method of storing a file in a distributed processing system having a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN), comprising the step of:
       dividing a file having a set of data, in accordance with a physical minimum file division unit, and storing the divided file into said storage units.
  2. A method of storing a file according to Claim 1, wherein each said data processing unit has at least one said storage unit.
  3. A method of storing a file according to Claim 1, further comprising the step of:
       providing each said data processing unit with storage means (15, 25) for storing correspondence information between a logical store position of data of said file recognized by a program running on said distributed processing system, and a physical store position of said data actually stored in each said storage unit.
  4. A method of storing a file according to Claim 3, wherein said storage means stores information of the data stored only in said storage unit connected to a corresponding one of said data processing units.
  5. A method of storing a file according to Claim 1, further comprising the step of:
       providing one of said data processing units with storage means (115) for storing correspondence information between a logical store position of data of said file recognized by a program running on said distributed processing system, and a physical store position of said data actually stored in each said storage unit.
  6. A method of accessing a file in a distributed processing system having a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN), comprising the steps of:
       dividing a file having a set of data, in accordance with a physical minimum file division unit, and storing said divided file into said storage units;
       providing each said data processing unit with storage means (15, 25) for storing correspondence information between a logical store position of data of said file recognized by a program running on said distributed processing system, and a physical store position of said data actually stored in each said storage unit; and
       accessing one of said storage units upon reception of an access request to said file, in accordance with the information in said storage means.
  7. A method of accessing a file according to Claim 6, wherein:
       said physical minimum file division unit is a block; and
       if said access request is a data addition request, said accessing step writes said to be added, in an empty block of one of said storage units having the largest number of empty blocks.
  8. A method of accessing a file according to Claim 6, wherein:
       said physical minimum file division unit is a block; and
       said accessing step includes a step of, if said access request is a data addition request, writing said data to be added, in an empty block of one of said storage units, and
       a step of, when said empty block in which said data to be added having been written has no empty area, updating the information in said storage means.
  9. A method of accessing a file in a distributed processing system having a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN), comprising the steps of:
       dividing a file having a set of data, in accordance with a physical minimum file division unit, and storing said divided file into said storage units; and
       when there is a request of writing addition data in said file, writing said addition data in one of said storage units.
  10. A method of accessing a file according to Claim 9, wherein said physical minimum file division unit is a block.
  11. A method of accessing a file according to Claim 10, wherein said writing step writes said addition data in one of the blocks of said storage units, said one block storing said file and having an area capable of writing additional data.
  12. A method of accessing a file according to Claim 10, wherein said writing step writes said addition data in an empty block of one of said storage units having the largest number of empty blocks.
  13. A method of accessing a file according to Claim 10, wherein said writing step writes said addition data in one of said storage units in accordance with a priority order.
  14. A method of accessing a file according to Claim 10, wherein said writing step writes said addition data in one of said storage units having a smallest access occurrence frequency.
  15. A method of accessing a file according to Claim 10, wherein said writing step writes said addition data in a predetermined one of said storage units.
  16. A distributed processing system comprising:
       a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN); and
       said storage units storing a file having a set of data and divided in accordance with a physical minimum file division unit.
  17. A distributed processing system according to Claim 16, further comprising:
       storage means (15, 25) provided to at least one of said data processing units, for storing correspondence information between a logical store position of data of said file recognized by a program running on said distributed processing system, and a physical store position of said data actually stored in each said storage unit.
  18. A distributed processing system comprising:
       a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN);
       said storage units storing a file having a set of data and divided in accordance with a physical minimum file division unit; and
       storage means (15, 25) provided to at least one of said data processing units, for storing correspondence information between a logical store position of data of said file recognized by a program running on said distributed processing system, and a physical store position of said data actually stored in each said storage unit,
       wherein each said data processing unit has means for accessing one of said storage units upon reception of an access request to said file, in accordance with the information in said storage means.
  19. A distributed processing system comprising:
       a plurality of data processing units (10, 20) with storage units (11 - 22), said data processing units being interconnected by a transmission medium (LAN); and
       said storage units storing a file having a set of data and divided in accordance with a physical minimum file division unit,
       wherein each said data processing unit has means for accessing one of said storage units in accordance with the information in said storage means, when there is a request of accessing to said file.
EP19920109810 1991-06-12 1992-06-11 File store method, file access method, and distributed processing system using such methods Withdrawn EP0518311A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP140006/91 1991-06-12
JP3140006A JPH04364549A (en) 1991-06-12 1991-06-12 File storing system and access system

Publications (2)

Publication Number Publication Date
EP0518311A2 true EP0518311A2 (en) 1992-12-16
EP0518311A3 EP0518311A3 (en) 1993-12-15

Family

ID=15258742

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19920109810 Withdrawn EP0518311A3 (en) 1991-06-12 1992-06-11 File store method, file access method, and distributed processing system using such methods

Country Status (2)

Country Link
EP (1) EP0518311A3 (en)
JP (1) JPH04364549A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4221073A1 (en) * 1991-06-27 1993-01-07 Digital Equipment Corp DATA STORAGE SYSTEM AND METHOD WITH DEVICE INDEPENDENT FILE DIRECTORIES
EP0822504A2 (en) * 1996-07-31 1998-02-04 International Business Machines Corporation Method and system for locating and sampling of data in parallel processing systems
EP0774723A3 (en) * 1995-11-20 1998-07-22 Matsushita Electric Industrial Co., Ltd. Virtual file management system
WO2001098952A2 (en) * 2000-06-20 2001-12-27 Orbidex System and method of storing data to a recording medium
KR100402913B1 (en) * 1994-08-31 2004-03-26 프라이스 워터하우스 엘엘피 Parallel processing system for traversing a data base
EP2833261A3 (en) * 2013-08-02 2015-03-18 Hitachi Ltd. Device driver installation method and computer system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0319147A2 (en) * 1987-11-30 1989-06-07 International Business Machines Corporation Method for storing pre-organised groups of related information files in a data processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0319147A2 (en) * 1987-11-30 1989-06-07 International Business Machines Corporation Method for storing pre-organised groups of related information files in a data processing system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE Proceedings of the 14th Annual International Computer Software & Applications Conference, 2 November 1990, Chicago, Illinois, USA, pages 435-441; WEDDE H.F. et al.: "Distributed management of replicated and partitioned files under dragon slayer". *
Proceedings of the ISMM International Symposium, Computer Applications in Design, Simulation and Analysis, MIMI '90, 7 March 1990, New Orleans, LA, USA, pages 232-235; MILLER L.L.: "File Placement and Processing in the PASS System". *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4221073A1 (en) * 1991-06-27 1993-01-07 Digital Equipment Corp DATA STORAGE SYSTEM AND METHOD WITH DEVICE INDEPENDENT FILE DIRECTORIES
KR100402913B1 (en) * 1994-08-31 2004-03-26 프라이스 워터하우스 엘엘피 Parallel processing system for traversing a data base
EP0774723A3 (en) * 1995-11-20 1998-07-22 Matsushita Electric Industrial Co., Ltd. Virtual file management system
US5873085A (en) * 1995-11-20 1999-02-16 Matsushita Electric Industrial Co. Ltd. Virtual file management system
EP0822504A2 (en) * 1996-07-31 1998-02-04 International Business Machines Corporation Method and system for locating and sampling of data in parallel processing systems
GB2315889A (en) * 1996-07-31 1998-02-11 Ibm Locating and sampling of data in parallel processing systems
US6049861A (en) * 1996-07-31 2000-04-11 International Business Machines Corporation Locating and sampling of data in parallel processing systems
EP0822504A3 (en) * 1996-07-31 2002-05-08 International Business Machines Corporation Method and system for locating and sampling of data in parallel processing systems
WO2001098952A2 (en) * 2000-06-20 2001-12-27 Orbidex System and method of storing data to a recording medium
WO2001098952A3 (en) * 2000-06-20 2003-09-25 Orbidex System and method of storing data to a recording medium
EP2833261A3 (en) * 2013-08-02 2015-03-18 Hitachi Ltd. Device driver installation method and computer system
US9405525B2 (en) 2013-08-02 2016-08-02 Hitachi, Ltd. Computer system and device driver installation method

Also Published As

Publication number Publication date
EP0518311A3 (en) 1993-12-15
JPH04364549A (en) 1992-12-16

Similar Documents

Publication Publication Date Title
US5555371A (en) Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage
US5619690A (en) Computer system including a computer which requests an access to a logical address in a secondary storage system with specification of a local address in the secondary storage system
US7293145B1 (en) System and method for data transfer using a recoverable data pipe
US6675176B1 (en) File management system
US6341341B1 (en) System and method for disk control with snapshot feature including read-write snapshot half
US4961224A (en) Controlling access to network resources
US5276840A (en) Disk caching method for writing data from computer memory including a step of writing a plurality of physically adjacent blocks in a single I/O operation
EP1918836B1 (en) Apparatus and method for a hardware-based file system
EP1569085B1 (en) Method and apparatus for increasing data storage capacity
US7107323B2 (en) System and method of file distribution for a computer system in which partial files are arranged according to various allocation rules
KR100404555B1 (en) Data processor storage systems with dynamic resynchronization of mirrored logical data volumes subsequent to a storage system failure
US5463381A (en) Database system having a plurality of nodes communicating with each other via communication network
US6944726B2 (en) Distributed background track processing
US8046421B2 (en) High performance storage access environment
US6968382B2 (en) Activating a volume group without a quorum of disks in the volume group being active
US6079000A (en) XPC backup for in-process audit
US7392361B2 (en) Generic reallocation function for heap reconstitution in a multi-processor shared memory environment
EP0518311A2 (en) File store method, file access method, and distributed processing system using such methods
EP0694831A2 (en) Computer system having storage unit provided with data compression function andmethod of management of storage area thereof
JPH0773090A (en) Computer system and secondary storage device
US6721901B1 (en) Method and system for recovering mirrored logical data volumes within a data processing system
US6732194B1 (en) Method and apparatus for multi-sequential data operations
CN115168367B (en) Data configuration method and system for big data
JP2008135055A (en) Computer system and secondary storage device
US7437528B1 (en) Gang blocks

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 19920611

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE FR GB

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): DE FR GB

17Q First examination report despatched

Effective date: 19970718

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Withdrawal date: 19971017