WO2011061869A1 - データベース管理方法、データベース管理システム及びデータベース管理プログラム - Google Patents

データベース管理方法、データベース管理システム及びデータベース管理プログラム Download PDF

Info

Publication number
WO2011061869A1
WO2011061869A1 PCT/JP2010/001527 JP2010001527W WO2011061869A1 WO 2011061869 A1 WO2011061869 A1 WO 2011061869A1 JP 2010001527 W JP2010001527 W JP 2010001527W WO 2011061869 A1 WO2011061869 A1 WO 2011061869A1
Authority
WO
WIPO (PCT)
Prior art keywords
database
data
database management
management device
storage location
Prior art date
Application number
PCT/JP2010/001527
Other languages
English (en)
French (fr)
Inventor
熊谷昌大
原憲宏
Original Assignee
株式会社日立製作所
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 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to US13/389,548 priority Critical patent/US9002796B2/en
Publication of WO2011061869A1 publication Critical patent/WO2011061869A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Definitions

  • the present invention relates to a database management method, a database management system, and a database management program, and is particularly suitable for application to data linkage between an in-memory database and a disk type database.
  • an in-memory database (hereinafter referred to as “in-memory DB”) is a method in which data is resident in, for example, a volatile memory to provide a high-speed response to an access request. Output is not performed or restricted.
  • the in-memory DB backs up data to a disk-type database (hereinafter referred to as “disk-type DB”) that holds data in an external storage device because data is lost from the memory when the system is stopped. Like to do.
  • Non-Patent Document 4 uses a unique index defined in the tables of two databases to be linked, and records corresponding to each record in the database data are stored in the other database. A technique for uniquely identifying data is disclosed.
  • the unique index used in the data linkage technology described above may not exist in the user's database design. In this case, there are problems such as an increase in time and effort of a user adding a unique index to the database, an increase in usage of the external storage device by storing the unique index, and an increase in processing overhead associated with the update of the unique index.
  • Patent Document 1 discloses a technique that eliminates the need to define a unique index by creating a mapping table of physical storage position information between different databases.
  • Non-Patent Document 3 is a Japanese translation of Non-Patent Document 2
  • the information on the free area is held in the database, so the record is added to This is because the information on the free area is referred to in order to determine the physical storage location information.
  • Patent Document 1 in preparation for re-execution at the time of data linkage failure due to a failure of an external storage device at the data linkage destination, information used at the time of data linkage such as SQL executed at the data linkage destination, It cannot be deleted until data linkage is completed.
  • the in-memory DB is used in a system that processes a large amount of data at a high speed as described above, it is often required to continuously add records. Therefore, if data linkage is delayed, information used during data linkage cannot be deleted and accumulated, and as a result of compressing the capacity of the external storage device, new information cannot be output and records can be added to the in-memory DB. Disappear.
  • the present invention has been made in consideration of the above points, and performs data linkage at a high speed during data linkage when a record is added to the in-memory DB, and continuously accepts addition of records to the in-memory DB.
  • a database management method, a database management system, and a database management program are proposed.
  • one aspect of the present invention provides a first database management device having a main memory in which a first database is arranged, and a second database management device having a secondary storage in which a second database is arranged.
  • a database management method for a system that is connected via a network and reflects data stored in the first and second database management devices to each other, the first database management device adding to the first database A first list that holds storage location information indicating a write destination of data in the second database, and when the first database management device adds arbitrary data to the first database, the data A first step of appending the storage location information from the first list to the first database; A second step of transmitting the data to which the storage location information is added to the second database management device, and requesting the second database management device to add the data; and the second database management In response to a request for addition of the data from the second database management device, a device adds the data to the storage location of the second database indicated by the storage location information added to the data.
  • a database management method comprising the
  • a first database management device having a main memory for arranging a first database and a second database management device having a secondary storage for arranging a second database are connected via a network.
  • a database management method of a system that is connected and reflects data stored in the first and second database management devices to each other, wherein the first database management device includes the second of data to be added to the first database.
  • the data is added to the storage location of the second database.
  • the first database is connected to a second database management apparatus having a secondary storage for arranging the second database, and has a main memory for arranging the first database.
  • a second database management apparatus having a secondary storage for arranging the second database, and has a main memory for arranging the first database.
  • the present invention it is possible to provide a database management method, a database management system, and a database management program that can continuously accept record additions to the first database.
  • reference numeral 1 denotes a database management system according to this embodiment as a whole.
  • the database management system 1 includes an in-memory DB management device 2 (corresponding to “first database management device”), a disk-type DB management device 3 (corresponding to “second database management device”), and a terminal device 4. Are connected via the network 5.
  • a disk-type DB management device 3 is connected to the external storage device 6.
  • the in-memory DB management device 2 is a disk type DB 63 (corresponding to the second database) when there is a request for access from the terminal device 4 to the in-memory database 236 or when the data in the in-memory database 236 is changed. )).
  • the in-memory DB management device 2 includes a CPU 21, an interface 22, and a memory 23.
  • the CPU 21 is a processor that controls the operation of the entire in-memory DB management device 2, and executes necessary processes based on various control programs stored in the memory 23.
  • the interface 22 is connected to the network 5 and performs protocol control during communication between the disk-type DB management device 3 or the terminal device 4 and the in-memory DB management device 2.
  • the memory 23 is composed of a semiconductor memory, a hard disk, and the like, and is used for holding a control program such as an OS (Operating System) and also used as a work memory for the CPU 21.
  • the memory 23 includes a DB access request unit 231, a DB access processing unit 232, a location information management unit 233, a reserved list 235 (corresponding to “first list”), and an in-memory DB 236 (“first database”). ").) Is stored.
  • the DB access request analysis unit 231 analyzes a request from the terminal device 4 or the disk-type DB management device 3, and requests the DB access processing unit 232 to access the in-memory DB 236 according to the analyzed request.
  • the DB access processing unit 232 accesses the in-memory DB 236 in response to a request from the DB access request analysis unit 231.
  • the position information management unit 233 acquires physical storage position information indicating the write destination in the disk type DB 63 of the record to be added to the in-memory DB 236 from the reserved list 235. To do.
  • a physical storage location for example, a physical address of an HDD
  • logical storage location information for example, an HDD or the like is used.
  • the logical address of the logical volume to be stored may be used as data storage location information.
  • the data linkage request unit 234 reflects the update, addition, and deletion in the disk type DB 63 (“corresponds to the second database”). Requests to the DB management device 3.
  • the reserved list 235 stores physical storage position information indicating the reflection destination in the disk type DB 63 of the record to be added to the in-memory DB 236. More specifically, as shown in FIG. 2, the reserved list 235 includes a reserved physical storage location information column 2351 indicating a reflection destination in the disk type DB 63 of a record to be added to the in-memory DB 236 in a table format, and its state.
  • the status field 2352 indicating (in use or unused), a reserved physical storage position information number field 2353, and a used physical storage position information number field 2354 are configured.
  • the reserved list 235 is created based on a reservation instruction list 61 described later.
  • the in-memory DB 236 is a database formed in the semiconductor memory, and includes a table 2361 and an index 2362 as shown in FIGS.
  • the table 2361 includes data and information on physical storage positions of data in the disk type DB 63 corresponding to the data.
  • the index 2362 is used to search the data of the table 2361, and here, information on the physical storage position of the data in the disk type DB 63 is used.
  • the disk-type DB management device 3 manages the entire disk-type DB 63 such as an inquiry to the disk-type DB 63 stored in the external storage device 6 and resource management.
  • the disk-type DB management device 3 includes a CPU 31, an interface 32, a memory 33, and an external storage device input / output interface 34.
  • the CPU 31 is a processor that controls the operation of the entire disk-type DB management device 3, and executes necessary processing based on various control programs stored in the memory 33.
  • the interface 32 is connected to the network 5 and performs protocol control during communication between the in-memory DB management device 2 or the terminal device 4 and the disk-type DB management device 3.
  • the memory 33 is composed of a semiconductor memory, a hard disk, and the like, and is used for holding a control program such as an OS (Operating System) and also used as a work memory for the CPU 31.
  • the memory 33 stores a DB access request unit 331, a DB access processing unit 332, a location information management unit 333, a data linkage request unit 334, a reservation instruction list buffer 335, and a DB buffer 336.
  • the DB access request analysis unit 331 analyzes a request from the terminal device 4 or the in-memory DB management device 2, and requests the DB access processing unit 332 to access the disk type DB 63.
  • the DB access processing unit 332 accesses the disk type DB 63 via the DB buffer 336 in response to a request from the DB access request analysis unit 331.
  • the location information management unit 333 refers to the reservation instruction list 61 via the reservation instruction list buffer 335 and sets the reservation instruction list 61 (“second list”). Corresponding physical storage location information that is not registered.
  • the data linkage request unit 334 requests the in-memory DB management device 2 to reflect the update in the in-memory DB 236.
  • the disk type DB management device 3 is connected to the external storage device 6 via the input / output interface 250.
  • the external storage device 6 stores a reservation instruction list 61, a position information reservation parameter file 62, and a disk type DB 63.
  • the reservation instruction list 61 includes a physical storage position information column 611 indicating a reflection destination in the disk type DB 63 of a record reserved by the user and added to the in-memory DB 236, and a reservation unit indicating a unit of the size.
  • the disk-type DB management device 3 refers to the reservation instruction list 61 via the reservation instruction list buffer 335.
  • the reservation unit is a unit in which a user reserves a physical storage position, and is any one of a file, an extent, a page, and a record.
  • the file is a unit for storing the data of the database in the external storage device 6 as one chunk, and is composed of one or more extents.
  • An extent is a unit for allocating an area in a file and is composed of one or more pages.
  • a page is an input / output unit of an external storage device, and is composed of one or more records.
  • the location information reservation parameter file 62 is a file created in advance for the user to reserve physical storage location information.
  • the reservation instruction list 61 is created by reading a plurality of position information reservation parameter files 62.
  • the position information reservation parameter file 62 reserved physical storage position information is registered for each table.
  • the reservation unit may be specified in a unit in which a plurality of records such as a file, an extent, and a page are collected. For example, in the example shown in FIG. 4, in the location information reservation parameter file 62 named “Table 1”, “# 3-1”, “# 3-2”, and “# 3-3” are reserved in record units. Then, “# 5” and “# 6” are reserved in page units, “EXT3” is reserved in extent units, and “FILE2” is reserved in file units.
  • the disk type DB 63 is formed in the hard disk device and includes a table 631 as shown in FIGS.
  • the table 631 holds each data in each storage position indicated by the physical storage position 632.
  • the present invention provides, for example, a case where the memory 23 of the in-memory DB management device 2 is positioned as the main memory.
  • Various storage devices can be applied as long as they function as a storage area as a storage memory.
  • an optical disk, a non-volatile semiconductor device for example, SSD (Solid state disk) or the like may be used.
  • the “disk” includes these rotating magnetic disks (HDD and the like), optical disks, and nonvolatile semiconductor devices.
  • the in-memory DB 236 When the in-memory DB 236 receives a request for adding a record (“CCC” in the example of FIG. 5), the in-memory DB 236 stores the reserved information acquired by referring to the record “CCC”, the index 2362, and the reserved list 235 in the table 2361. Physical storage location information “# 3-1” is added.
  • the in-memory DB 236 adds the physical storage location information “# 3-1” to the record “CCC” and transmits it to the disk type DB 63, and makes a record addition request to the disk type DB 63.
  • the disk-type DB 63 receives the record addition request and adds the record “CCC” to the position indicated by the physical storage position information “# 3-1” in the table 112.
  • the database management system 1 when the database management system 1 adds a record to the in-memory DB 236, the database management system 1 refers to the reserved list 235 and determines the physical storage location information 632 of the disk type DB 63 that is the data linkage destination. As a result, even if the table 631 of the disk type DB 63 is not referred to, the in-memory DB management device 236 that is the data linkage source can determine the linkage destination, and the data linkage performance can be improved.
  • the disk-type DB 63 receives a request for adding a record (“DDD” in the example of FIG. 6), the record “DDD” is added to the table 631.
  • the physical storage locations registered in the reservation instruction list 61 (“# 3-1”, “# 3-2” in the example of FIG. 6) "And” # 3-3 ") do not store records.
  • the disk-type DB 63 adds the physical storage position information 113 (“# 4-1” in the example of FIG. 6) indicating the position where the record “DDD” is stored to the record “DDD” and transmits it to the in-memory DB 236.
  • the in-memory DB 236 is requested to add the record “DDD”.
  • the in-memory DB 236 receives the request for adding the record “DDD”, and adds the record “DDD” and the physical storage location information “# 4-1” to the free area of the table 2361.
  • the in-memory DB 236 adds the physical storage location information “# 4-1” to the index 2362.
  • the database management system 1 sets the physical storage location information 632 of the disk type DB 63 to which the record is added in the table 2361 of the in-memory DB 236. Since the record added to the in-memory DB 236 does not use the reserved physical storage position information, it is not necessary to change the reserved list 235.
  • the DB access request analysis unit 231 of the in-memory DB management device 2 analyzes the update request SQL for the in-memory DB 236 from the terminal device 4.
  • the SQL type is determined (SP101), and it is determined whether the SQL type is addition, update, or deletion (SP102).
  • step SP102 when the SQL type is added, the DB access processing unit 232 determines a record addition destination (SP103).
  • the location information management unit 233 refers to the reserved list 235 and acquires one reserved physical storage location information from the head of the reserved list 104 (SP104), and the DB access processing unit 232 acquires the table 2361.
  • the reserved physical storage position information and the record are added (SP105), and the process proceeds to step SP114.
  • step SP102 when the SQL type is update, the DB access processing unit 232 selects a record to be updated (SP106), and determines whether or not there is a record to be selected (SP107). If a negative result is obtained in step SP107 (SP107: NO), the process is terminated.
  • SP107: YES When a positive result is obtained in step SP107 (SP107: YES), the location information management unit 233 refers to the index 2362 to acquire physical storage location information (SP108), and the DB access processing unit 232 uses the table 2361.
  • the record at is updated (SP109), and the process proceeds to step SP114.
  • step SP102 when the SQL type is deletion, the DB access processing unit 262 selects a record to be deleted (SP110), and determines whether or not there is a record to be selected (SP111). If a negative result is obtained in step SP111 (SP111: NO), the process is terminated. If a positive result is obtained in step SP111 (SP111: YES), the location information management unit 263 refers to the index 2362 to acquire physical storage location information (SP112), and the DB access processing unit 262 displays the table 2361. Is deleted (SP113), and the process proceeds to step SP114.
  • the data linkage request unit 234 After adding, updating, or deleting records in steps SP105, SP109, and SP113, the data linkage request unit 234 generates data linkage SQL for data linkage to the disk type DB 111 (SP114). However, the data linkage SQL includes a record to which the acquired physical storage position information is added. Then, the data linkage request unit 234 transmits the data linkage SQL to the disk-type DB management device 3 and requests the execution thereof (SP115).
  • step SP116 determines whether or not the processing has been completed for all records described in the SQL (SP116). If a positive result is obtained in step SP116 (SP116: YES), the process is terminated. If a negative result is obtained in step SP116 (SP116: NO), the processing is repeated from step SP102.
  • the DB access request analysis unit 331 of the disk type DB management device 3 receives the data linkage SQL transmitted by the in-memory DB management device 2 in step SP115 (SP201), the DB access request analysis unit 331 performs the processing for the disk type DB 63.
  • the data linkage SQL is analyzed to determine the SQL type (SP202), and it is determined whether the SQL type is addition, update, or deletion (SP203).
  • step SP203 when the type of the data linkage SQL is added, the DB access processing unit 332 determines the addition destination of the record included in the data linkage SQL from the physical storage location information included in the data linkage SQL (SP204). Then, the DB access processing unit 332 adds a record to the addition destination determined in step SP204 in the table 631 (SP205), and proceeds to step SP212.
  • step SP203 when the SQL type is update, the DB access processing unit 332 selects a record to be updated (SP206), and determines whether or not a record to be selected exists (SP207). If a negative result is obtained in step SP207 (SP207: NO), the process ends. When an affirmative result is obtained in step SP207 (SP207: YES), the DB access processing unit 332 updates the record stored in the storage location indicated by the physical storage location information included in the data linkage SQL in the table 631 (SP208). ), The process proceeds to step SP212.
  • step SP203 when the SQL type is deletion, the DB access processing unit 332 selects a record to be deleted (SP209), and determines whether or not a record to be selected exists (SP210). If a negative result is obtained in step SP210, the process ends (SP210: NO). When an affirmative result is obtained in step SP210 (SP210: YES), the DB access processing unit 332 deletes the record stored in the storage location indicated by the physical storage location information included in the data linkage SQL in the table 631 (SP211). ), The process proceeds to step SP212.
  • the disk-type DB management device 3 determines whether or not the processing has been completed for all records described in SQL (SP212). If an affirmative result is obtained in step SP212 (SP212: YES), the process is terminated. If a negative result is obtained in step SP212 (SP212: NO), the processing is repeated from step SP203. In this way, the update of the in-memory DB 236 is linked to the disk type DB 63.
  • disk type DB 63 update processing when an update request is made from the terminal device 4 to the disk type DB 63 will be described with reference to FIG.
  • the DB access request analysis unit 331 of the disk-type DB management device 3 analyzes the received update request SQL, The SQL type is determined (SP301), and it is determined whether the SQL type is addition, update, or deletion (SP302).
  • step SP302 when the SQL type is added, the DB access processing unit 332 determines the addition destination of the record (SP303).
  • the position information management unit 263 refers to the reservation instruction list 61 to determine whether or not the addition destination matches the physical storage position information with the reservation instruction (SP304). If a positive result is obtained in step SP304 (SP304: YES), the process returns to step SP303. When a negative result is obtained in step SP304 (SP304: NO), a record is added to the addition destination determined in step SP303 (SP305), and the process proceeds to step SP314.
  • step SP302 when the SQL type is update, the DB access processing unit 332 selects a record to be updated (SP306), and determines whether there is a record to be selected (SP307). If a negative result is obtained in step SP307 (SP307: NO), the process ends. If a positive result is obtained in step SP307 (SP307: YES), the location information management unit 333 acquires physical storage location information (SP308), and the DB access processing unit 332 updates the record (SP309). .
  • step SP302 when the SQL type is deletion, the DB access processing unit 332 selects a record to be deleted (SP310), and determines whether there is a record to be selected (SP311). If a negative result is obtained in step SP311 (SP311: NO), the process ends.
  • step SP311 when a positive result is obtained (SP311: YES), the location information management unit 333 acquires physical storage location information (SP312), and the DB access processing unit 332 deletes the record (SP313). .
  • the data linkage request unit 334 In steps SP305, SP309, and SP313, after adding, updating, or deleting a record, the data linkage request unit 334 generates a data linkage SQL for data linkage to the in-memory DB 236 (SP314).
  • the data linkage SQL includes a record to which the physical storage information of the addition destination or the acquired physical storage information is added. Then, the data linkage request unit 334 transmits the data linkage SQL to the in-memory DB management device 2 and requests the execution thereof (SP315).
  • the disk-type DB management device 3 determines whether or not the processing has been completed for all the records described in SQL (SP316). If a positive result is obtained in step SP316 (SP316: YES), the process is terminated. If a negative result is obtained in step SP316 (SP316: NO), the processing is repeated from step SP302.
  • the DB access request analysis unit 231 of the in-memory DB management device 2 receives the data linkage SQL transmitted by the disk-type DB management device 3 in step SP315 (SP401), the DB access request analysis unit 231 performs the process for the in-memory DB 236.
  • the data linkage SQL is analyzed to determine the SQL type (SP402), and it is determined whether the SQL type is addition, update, or deletion (SP403).
  • step SP403 when the type of the data linkage SQL is added, the DB access processing unit 232 determines the addition destination of the record included in the data linkage SQL from the physical storage location information included in the data linkage SQL (SP404). Then, the DB access processing unit 232 adds a record to the addition destination determined in step SP404 in the table 2361 (SP405), and proceeds to step SP412.
  • step SP403 if the SQL type is update, the DB access processing unit 232 selects a record to be updated (SP406), and determines whether there is a record to be selected (SP407). If a negative result is obtained in step SP407 (SP407: NO), the process ends. If an affirmative result is obtained in step SP407 (SP407: YES), the DB access processing unit 232 updates the record stored in the storage location indicated by the physical storage location information included in the data linkage SQL in the table 2361 (SP408). ), And proceeds to step SP412.
  • step SP403 if the SQL type is deletion, the DB access processing unit 232 selects a record to be deleted (SP409), and determines whether or not there is a record to be selected (SP410). If a negative result is obtained in step SP410 (SP410: NO), the process is terminated. When an affirmative result is obtained in step SP410 (SP410: YES), the DB access processing unit 232 deletes the record stored in the storage position indicated by the physical storage position information included in the data linkage SQL in the table 2361 (SP411). ), The process proceeds to step SP412.
  • step SP412 After adding, updating, or deleting records in steps SP405, SP408, and SP411, the in-memory DB management device 2 determines whether or not processing has been completed for all records described in SQL (SP412). In step SP412, when a positive result is obtained (SP412: YES), the process is terminated. If a negative result is obtained in step SP412 (SP412: NO), the processing is repeated from step SP403. In this way, the update of the disk type DB 63 is linked to the in-memory DB 236.
  • the in-memory DB management device 2 creates the in-memory DB 236, the in-memory DB management device 2 notifies the disk-type management device 3 that the in-memory DB 236 has been created.
  • the DB access processing unit 332 exports the data of the disk type DB 63 via the DB buffer 336 (SP501).
  • the location information management unit 333 exports the reserved physical storage location information of the reservation instruction list 61 via the reservation instruction list buffer 335 (SP502), and the data linkage request unit 334 outputs the in-memory DB management device 2 Then, a request for reading the exported data is made (SP503).
  • the disk type DB device 3 determines whether or not all data of the disk type DB 63 and all reserved physical storage position information of the reservation instruction list 61 have been read (SP504). If a positive result is obtained in step SP504, the process ends. If a negative result is obtained in step SP504, the process returns to step SP501.
  • the disk-type DB device 3 exports all the data in the disk-type DB 63 and all the reserved physical storage position information in the reservation instruction list 61, and makes a read request for the exported data to the in-memory DB 236.
  • the DB access processing unit 262 displays the table in the in-memory DB 236.
  • the data of the disk type DB 63 is imported to 2361 (SP602).
  • the location information management unit 263 creates an index 2362 (SP603), creates a reserved list 235 based on the read reserved physical storage location information (SP604), and ends the processing.
  • the location information management unit 333 of the disk type DB management device 3 reads the location information reservation parameter file 62 created by the user (SP701), and registers the contents of the parameter file in the reservation instruction list 61 (SP702).
  • the disk-type DB management device 3 determines whether or not all the location information reservation parameter files 62 have been read (SP703). If an affirmative result (SP703: YES) is obtained in step SP703, the process ends. If a negative result is obtained in step SP703 (SP703: NO), the process returns to step SP701.
  • the user can create a plurality of location information reservation parameter files 62 and can create a reservation instruction list 61 from the plurality of location information reservation parameter files 62.
  • the location information management unit 233 of the in-memory DB management device 2 acquires the reserved physical storage location information from the reserved list 235, the top information among the unused location information in the reserved list 235. Is changed to in use (SP801).
  • the location information management unit 233 subtracts “1” from the number of used physical storage location information 2354 in the reserved list 104 (SP802).
  • the location information management unit 233 determines whether the usage rate, which is the ratio of the number of physical storage location information in use to the number of reserved physical storage location information, is 80% or more (SP803).
  • step SP803 When a negative result is obtained in step SP803 (that is, when the usage rate is 80% or more (SP803: YES)), it is determined that replenishment is not necessary, and the process is terminated at that point.
  • step SP803 if a positive result is obtained (that is, if the usage rate is less than 80% (SP803: NO)), the location information management unit 233 supplements the disk type DB management device 3 with reserved physical storage location information. (SP804), a reserved list link request from the disk-type DB management apparatus 3 is accepted (SP805), the reserved list 235 is linked and supplemented (SP806), and the process is terminated.
  • the position information management unit 333 of the disk-type DB management apparatus 3 calculates the replenishment size (SP902).
  • the position information management unit 333 secures physical storage positions in the disk type DB 63 by the calculated replenishment size, replenishes the reserved physical storage position information in the reservation instruction list 61 (SP903), and the in-memory DB management device 2 makes a request for interlocking with the reserved list 235 (SP904), and the processing is terminated.
  • the reserved physical storage position information in use increases, the reserved physical storage position information that is not in use can always be secured by securing and supplementing the physical storage position information. it can.
  • FIG. 14 is a diagram illustrating an example of a display result of reserved physical storage location information.
  • the reserved physical storage location information can be classified for each table in the in-memory DB 236. For example, the user displays the table name, the usage rate of the reserved physical storage location information, and the location information in use for each table using an interface such as a command.
  • the reserved physical storage position information is obtained from the reservation instruction list 61 by the position information management unit 333 of the disk type DB management apparatus 3.
  • the position information is composed of a file, an extent, a page, and a record.
  • the usage rate of the reserved physical storage location information is obtained from the reserved list 235 by the following formula using the location information management unit 233 of the in-memory DB management device 2.
  • Usage rate of reserved physical storage location information number of physical storage location information in use ⁇ number of reserved physical storage location information
  • the reserved list 235 is held in a table format, but may be held in an index format.
  • the reserved physical storage position information is held as the index key 2356 in the index entry 2355 constituting the index, and the physical storage position information 2357 is held together with the index key 2356. it can.
  • the index key 2356 indicates the storage position of the record in the disk type DB 63
  • the physical storage position information 2357 indicates the storage position of the corresponding record in the in-memory DB 236.
  • the physical storage location information 2357 is “0”, it indicates that the storage location of the in-memory DB 236 indicated by the reserved physical storage location information is unused.
  • the physical storage position information 632 in the disk type DB 63 is used as an index.
  • uniqueness can be ensured between the data stored in the in-memory DB 236 and the data stored in the disk type DB 63. If an index exists, the unique index may be used.
  • FIG. 16 is a conceptual diagram showing an update process of the in-memory DB in which a unique key exists.
  • the in-memory DB 236 accepts a record (“CCC” in the example of FIG. 16) addition request, and stores the record “CCC” in the table 2363 and a unique key (“0004” in the example of FIG. 16) acquired from the reserved list 235. to add.
  • the unique key “0004” is added to the record “CCC”, and a record addition request is made to the disk type DB 63. Thereafter, the disk-type DB 63 stores the record “CCC” in the physical storage position to which the unique key “0004” is added.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】第1のデータベースを配置する主記憶を有する第1データベース管理装置へのレコード追加を継続的に受け付けることのできるデータベース管理方法、データベース管理システム及びデータベース管理プログラムを提供する。 【解決手段】データベース管理方法において、第1データベース管理装置は、第1のデータベースに追加するデータの第2のデータベースにおける書き出し先を示す格納位置情報を保持するリストを有し、第1データベース管理装置が、第1のデータベースに任意のデータが追加された時に、当該データにリストから格納位置情報を付加する第1のステップと、格納位置情報を付加したデータを第2のデータベース管理装置に送信し、当該データの追加を要求する第2のステップとを、第2データベース管理装置が、該データの追加の要求に応じて、データに付加された格納位置情報が示す第2のデータベースの格納位置にデータを追加する第3のステップと、を有する。

Description

データベース管理方法、データベース管理システム及びデータベース管理プログラム
 本発明は、データベース管理方法、データベース管理システム及びデータベース管理プログラムに関し、特にインメモリデータベースとディスク型データベースとの間におけるデータ連動に適用して好適なものである。
 従来、インメモリデータベース(以下、「インメモリDB」という。)は、アクセス要求に対する高速なスポンスを提供するために、データを例えば揮発性メモリ上に常駐させ、時間のかかる外部記憶装置への入出力を行わない或いは制限するようになっている。
 ところで、データベース管理システムにおいて、インメモリDBは、データがシステム停止時にメモリ上から消失するため、外部記憶装置にデータを保持するディスク型データベース(以下、「ディスク型DB」という。)にデータをバックアップするようにしている。
 データをディスク型DBにバックアップするためには、インメモリDBとディスク型DBとのデータを一致させるデータ連動の技術が必要となる。
 データ連動の技術において、非特許文献4には、連動させる2つのデータベースのテーブルに定義されたユニークインデクスを利用することで、データベースのデータ内の各レコードに対応するレコードを、もう一方のデータベースのデータから一意に識別する技術が開示されている。
 上述したデータ連動の技術で利用されるユニークインデクスは、ユーザのデータベース設計では存在しない場合がある。この場合、ユニークインデクスをデータベースに追加するユーザの手間の増加、ユニークインデクスを格納することによる外部記憶装置の使用量の増加、ユニークインデクスの更新に伴う処理オーバヘッドの増加という問題がある。
 この問題に対して、特許文献1には、異なるデータベース間の物理格納位置情報のマッピング表を作成することで、ユニークインデクスの定義を不要とする技術が開示されている。
 そして、データ連動元にレコードを追加した際、データ連動元へアクセスするだけでなく、データ連動先にもアクセスし、データ連動先が決定した物理格納位置情報を取得して、当該レコードのデータ連動が完了するようになっている。
 これは、非特許文献2及び3に記述されているように(非特許文献3は非特許文献2の日本語訳)、データベース内に空き領域の情報を保持しているため、レコードの追加先である物理格納位置情報を決定するために、当該空き領域の情報を参照するからである。
特開2001-273175号公報
松浦 龍夫著「日経システム構築2006年3月号 特集 使える!インメモリーDB」、日経BP社、2006年2月26日、P.50-P.52 Jim Gray and Andreas Reuter、Transaction Processing:Concepts and Techniques、Morgan Kaufmann Publishers、1993年、P.757-P.760 ジム・グレイ(著)、アンドレアス・ロイター(著)、喜連川 優(翻訳)「トランザクション処理〈下〉―概念と技法」、日経BP社、2001年10月、P.897-P.900 Marie Buretta著「Data Replication: Tools and Techniques for Managing Distributed Information」WILEY COMPUTER PUBLISHING、1997年、P.144
 しかしながら、特許文献1の技術では、データ連動先の外部記憶装置の障害等を原因とするデータ連動失敗時の再実行に備え、データ連動先で実行するSQLなどのデータ連動時に利用する情報を、データ連動が完了するまで削除することができない。
 ここで、インメモリDBは、前述のように大量のデータを高速に処理するシステムで使用するため、レコードの追加が継続的に要求されることが多い。そのため、データ連動が遅延すると、データ連動時に利用する情報が削除できずに蓄積し、外部記憶装置の容量を圧迫する結果、新たな情報の出力ができなくなり、インメモリDBへレコードの追加ができなくなる。
 本発明は以上の点を考慮してなされたもので、インメモリDBへレコードを追加した際のデータ連動時に高速にデータ連動を行い、インメモリDBへのレコードの追加を継続的に受け付けることのできるデータベース管理方法、データベース管理システム及びデータベース管理プログラムを提案するものである。
 かかる課題を解決するため、本発明の一側面は、第1のデータベースを配置する主記憶を有する第1データベース管理装置と、第2のデータベースを配置する二次記憶を有する第2データベース管理装置とがネットワークを介して接続され、前記第1及び第2データベース管理装置が格納するデータを互いに反映させるシステムのデータベース管理方法であって、前記第1データベース管理装置は、前記第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを備え、前記第1データベース管理装置が、前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加する第1のステップと、前記第1データベース管理装置が、前記格納位置情報を付加した前記データを前記第2データベース管理装置に送信し、該第2データベース管理装置に当該データの追加を要求する第2のステップと、前記第2データベース管理装置が、前記第2データベース管理装置からの前記データの追加の要求に応じて、前記データに付加された前記格納位置情報が示す前記第2のデータベースの格納位置に前記データを追加する第3のステップと、を有することを特徴とするデータベース管理方法。
 さらに、本発明の一側面は、第1のデータベースを配置する主記憶を有する第1データベース管理装置と、第2のデータベースを配置する二次記憶を有する第2データベース管理装置とがネットワークを介して接続され、前記第1及び第2データベース管理装置が格納するデータを互いに反映させるシステムのデータベース管理方法であって、前記第1データベース管理装置は、前記第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを備え、前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加し、当該格納位置情報を付加した当該データを前記第2データベース管理装置に送信し、前記第2データベース管理装置に当該データの追加を要求し、前記第2データベース管理装置は、前記第1データベース管理装置からの前記データの追加の要求に応じて、前記データに付加された前記格納位置情報が示す前記第2のデータベースの格納位置に前記データを追加することを特徴とする。
 さらに、本発明の一側面は、データベース管理プログラムにおいて、第2のデータベースを配置する二次記憶を有する第2データベース管理装置に接続され、第1のデータベースを配置する主記憶を有するとともに該第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを有する第1データベース管理装置に、前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加する第1のステップと、前記格納位置情報を付加した前記データを前記第2データベース管理装置に送信し、該第2データベース管理装置に当該データの追加を要求する第2のステップと、を実行させることを特徴とする。
 本発明によれば、第1のデータベースへのレコード追加を継続的に受け付けることのできるデータベース管理方法、データベース管理システム及びデータベース管理プログラムを提供することができる。
本実施の形態によるデータベース管理システムの構成を示すブロック図である。 予約済みリストを説明するための図である。 予約指示リストを説明するための図である。 位置情報予約パラメタファイルを説明するための図である。 本実施の形態によるデータベース管理システムの動作を説明するための概念図である。 本実施の形態によるデータベース管理システムの動作を説明するための概念図である。 インメモリデータベース更新処理を説明するためのフローチャートである。 ディスク型データベース反映処理を説明するためのフローチャートである。 ディスク型データベース更新処理を説明するためのフローチャートである。 インメモリ型データベース反映処理を説明するためのフローチャートである。 予約済みリスト作成処理を説明するためのフローチャートである。 予約指示リスト作成処理を説明するためのフローチャートである。 予約済みリスト補充処理を説明するためのフローチャートである。 予約済み物理格納位置情報の表示結果の例を示す図である。 他の実施の形態による予約済みリストを説明するための図である。 他の実施の形態によるデータベース管理システムの動作を説明するための概念図である。
 以下、図面を用いて、本発明の一実施の形態を詳述する。
(1)本実施の形態によるデータベース管理システムのハードウェア構成
 図1において、1は全体として本実施の形態によるデータベース管理システムを示す。データベース管理システム1は、インメモリDB管理装置2(「第1データベース管理装置」に相当する。)とディスク型DB管理装置3(「第2のデータベース管理装置」に相当する。)と端末装置4とがネットワーク5を介して接続されている。また、ディスク型DB管理装置3が外部記憶装置6に接続されている。
 インメモリDB管理装置2は、端末装置4からインメモリデータベース236へアクセス要求があった場合の管理やインメモリデータベース236のデータに変更があった場合のディスク型DB63(第2のデータベースに相当する。)への反映等を行う。また、インメモリDB管理装置2は、CPU21とインタフェース22とメモリ23とを備える。
 CPU21は、インメモリDB管理装置2全体の動作制御を司るプロセッサであり、メモリ23に格納された各種制御プログラムに基づいて必要な処理を実行する。インタフェース22は、ネットワーク5に接続され、ディスク型DB管理装置3又は端末装置4とインメモリDB管理装置2との間の通信時にプロトコル制御を行う。
 メモリ23は、半導体メモリ、ハードディスク等から構成され、OS(Operating System)などの制御プログラムを保持するために用いられるほか、CPU21のワークメモリとしても用いられる。また、メモリ23は、DBアクセス要求部231とDBアクセス処理部232と位置情報管理部233と予約済みリスト235(「第1のリスト」に相当する。)とインメモリDB236(「第1のデータベース」に相当する。)とを格納する。
 DBアクセス要求解析部231は、端末装置4又はディスク型DB管理装置3からの要求を解析し、解析した要求に応じて、インメモリDB236へのアクセスをDBアクセス処理部232に要求する。
 DBアクセス処理部232は、DBアクセス要求解析部231の要求に応じて、インメモリDB236にアクセスする。
 位置情報管理部233は、インメモリDB236へのアクセス要求がレコードの追加である場合、予約済みリスト235から、インメモリDB236に追加するレコードのディスク型DB63における書き出し先を示す物理格納位置情報を取得する。
 なお、本実施の形態では、データの格納位置情報として、物理的格納位置(例えば、HDDの物理的なアドレス等を適用する例について説明するが、論理的格納位置情報(例えば、HDD等から構成される論理ボリュームの論理アドレス等)をデータの格納位置情報としてもよい。
 データ連動要求部234は、インメモリDB236に更新、追加及び削除等があった場合、その更新、追加及び削除をディスク型DB63(「第2のデータベースに相当する。」に反映させるようにディスク型DB管理装置3に要求する。
 予約済みリスト235は、インメモリDB236に追加するレコードのディスク型DB63における反映先を示す物理格納位置情報を格納する。詳細に説明すると、予約済みリスト235は、図2に示すように、テーブル形式で、インメモリDB236に追加するレコードのディスク型DB63における反映先を示す予約済み物理格納位置情報欄2351と、その状態(使用中又は未使用)を示す状態欄2352と、予約済み物理格納位置情報数欄2353と、使用中物理格納位置情報数欄2354とから構成される。また、予約済みリスト235は、後述する予約指示リスト61に基づいて作成される。
 インメモリDB236は、半導体メモリ内に形成されるデータベースであり、図5及び6に示すように、テーブル2361とインデクス2362とを備える。
 テーブル2361は、データと、そのデータに対応するディスク型DB63におけるデータの物理格納位置の情報とから構成される。インデクス2362は、テーブル2361のデータを検索するために用いられ、ここでは、ディスク型DB63におけるデータの物理格納位置の情報が用いられている。
 ディスク型DB管理装置3は、外部記憶装置6が格納するディスク型DB63に対する問い合わせやリソース管理などのディスク型DB63全体の管理を行う。また、ディスク型DB管理装置3は、CPU31とインタフェース32とメモリ33と外部記憶装置入出力インタフェース34とを備える。
 CPU31は、ディスク型DB管理装置3全体の動作制御を司るプロセッサであり、メモリ33に格納された各種制御プログラムに基づいて必要な処理を実行する。インタフェース32は、ネットワーク5に接続され、インメモリDB管理装置2又は端末装置4とディスク型DB管理装置3との間の通信時にプロトコル制御を行う。
 メモリ33は、半導体メモリ、ハードディスク等から構成され、OS(Operating System)などの制御プログラムを保持するために用いられるほか、CPU31のワークメモリとしても用いられる。また、メモリ33は、DBアクセス要求部331とDBアクセス処理部332と位置情報管理部333とデータ連動要求部334と予約指示リストバッファ335とDBバッファ336とを格納する。
 DBアクセス要求解析部331は、端末装置4又はインメモリDB管理装置2からの要求を解析し、DBアクセス処理部332に、ディスク型DB63へのアクセスを要求する。
 DBアクセス処理部332は、DBアクセス要求解析部331の要求に応じて、DBバッファ336を介して、ディスク型DB63にアクセスする。
 位置情報管理部333は、ディスク型DB63に対するアクセス要求がレコードの追加である場合、予約指示リストバッファ335を介して、予約指示リスト61を参照し、予約指示リスト61(「第2のリスト」に相当する。)に登録されていない物理格納位置情報を取得する。
 データ連動要求部334は、ディスク型DB63に更新があった場合、その更新をインメモリDB236に反映させるようにインメモリDB管理装置2に要求する。
 ディスク型DB管理装置3は、外部記憶装置6と入出力インタフェース250を介して接続されている。
 外部記憶装置6は、予約指示リスト61と位置情報予約パラメタファイル62とディスク型DB63とを格納する。
 予約指示リスト61は、図3に示すように、ユーザが予約した、インメモリDB236に追加するレコードのディスク型DB63における反映先を示す物理格納位置情報欄611と、そのサイズの単位を示す予約単位欄612とから構成される。ディスク型DB管理装置3は、予約指示リストバッファ335を介して予約指示リスト61を参照する。予約単位は、ユーザが物理格納位置を予約する単位であり、ファイル、エクステント、ページ及びレコードの何れかである。ここで、ファイルは、データベースのデータを外部記憶装置6に1つのかたまりとして格納するため単位であり、1つ以上のエクステントから構成される。エクステントは、ファイル中の領域を割り当てる単位であり、1つ以上のページから構成される。ページは、外部記憶装置の入出力の単位であり、1つ以上のレコードから構成される。
 位置情報予約パラメタファイル62は、ユーザが物理格納位置情報を予約するために、事前に作成するファイルである。予約指示リスト61は、複数の位置情報予約パラメタファイル62を読み込むことによって作成される。位置情報予約パラメタファイル62には、テーブル毎に、予約済み物理格納位置情報を登録する。予約の単位は、レコード単位の他、ファイル、エクステント、ページという複数のレコードをまとめた単位での指定をしても良い。例えば、図4に示す例において、「表1」という名前の位置情報予約パラメタファイル62には、レコード単位で「#3-1」、「#3-2」及び「#3-3」が予約され、ページ単位で「#5」及び「#6」が予約され、エクステント単位で「EXT3」が予約され、ファイル単位で「FILE2」が予約されている。
 ディスク型DB63は、ハードディスク装置内に形成され、図5及び6に示すようにテーブル631を備える。テーブル631は、物理格納位置632が示す各格納位置に各データを保持する。なお、本実施形態では、ディスク型DB63をハードディスク装置内に形成する例について説明するが、本発明は、例えば、インメモリDB管理装置2のメモリ23を主記憶メモリと位置付けた場合に、二次記憶メモリとしての記憶領域として機能するものであれば、種々の記憶デバイスを適用することができる。例えば、光学ディスク、不揮発の半導体デバイス(例えば、SSD(Solid state disk))等でもよい。本実施の形態において、「ディスク」とは、これら回転磁気ディスク(HDD等)、光学ディスク及び不揮発の半導体デバイスを含むものとする。
(2)データベース管理システムの動作の概要
 次に、図5及び6を参照して、データベース管理システム1の動作を簡単に説明する。
 インメモリDB236は、レコード(図5の例では「CCC」)の追加要求を受け付けた場合に、テーブル2361にレコード「CCC」と、インデクス2362と予約済みリスト235を参照して取得した予約済みの物理格納位置情報「#3-1」とを追加する。
 その後、インメモリDB236は、物理格納位置情報「#3-1」をレコード「CCC」に付加してディスク型DB63に送信し、ディスク型DB63に対してレコード追加要求を行う。
 ディスク型DB63は、前記レコード追加要求を受け付け、テーブル112の前記物理格納位置情報「#3-1」が示す位置にレコード「CCC」を追加する。
 以上のように、データベース管理システム1は、インメモリDB236へレコードを追加した際に予約済みリスト235を参照し、データ連動先であるディスク型DB63の物理格納位置情報632を決定する。これにより、ディスク型DB63のテーブル631を参照しなくとも、データ連動元であるインメモリDB管理装置236で連動先を判別することができ、データ連動性能を向上することが可能である。
 また、ディスク型DB63が、レコード(図6の例では「DDD」)追加要求を受け付けた場合、テーブル631にレコード「DDD」を追加する。この時、予約指示リストバッファ335を介して、予約指示リスト61を参照し、予約指示リスト61に登録されている物理格納位置(図6の例では「#3-1」、「#3-2」及び「#3-3」)にはレコードを格納しないようにする。
 その後、ディスク型DB63は、レコード「DDD」を格納した位置を示す物理格納位置情報113(図6の例では「#4-1」)をレコード「DDD」に付加してインメモリDB236に送信し、インメモリDB236に対して、レコード「DDD」の追加を要求する。
 インメモリDB236は、レコード「DDD」の追加要求を受け付け、テーブル2361の空き領域にレコード「DDD」及び物理格納位置情報「#4-1」を追加する。また、インメモリDB236は、インデクス2362に物理格納位置情報「#4-1」を追加する。
 以上のように、データベース管理システム1は、ディスク型DB63へレコードを追加した場合に、当該レコードの追加先であるディスク型DB63の物理格納位置情報632をインメモリDB236のテーブル2361に設定する。インメモリDB236に追加されたレコードは、予約済みの物理格納位置情報を利用しないため、予約済みリスト235を変更する必要が無い。
(3)データベース管理システム1における具体的な処理
(3-1)インメモリデータベース更新処理
 ここで、図7を参照して、端末装置4からインメモリDB236へ更新要求があった場合のインメモリDB236の更新処理を説明する。
 まず、インメモリDB管理装置2が端末装置4から更新要求SQLを受信すると、インメモリDB管理装置2のDBアクセス要求解析部231は、端末装置4からのインメモリDB236に対する更新要求SQLの解析を行いSQLの種別を決定し(SP101)、SQLの種別が追加、更新、削除の何れかであるかを判別する(SP102)。
 ステップSP102において、SQLの種別が追加の場合、DBアクセス処理部232は、レコードの追加先を決定する(SP103)。位置情報管理部233は、予約済みリスト235を参照して、予約済みリスト104の先頭から予約済み物理格納位置情報を1つ取得し(SP104)、DBアクセス処理部232は、テーブル2361に、取得した予約済み物理格納位置情報とレコードとを追加し(SP105)、ステップSP114に進む。
 ステップSP102において、SQLの種別が更新の場合、DBアクセス処理部232は、更新するレコードを選択し(SP106)、選択するレコードが存在するか否かを判別する(SP107)。ステップSP107において、否定結果を得た場合(SP107:NO)、処理を終了する。ステップSP107において、肯定結果を得た場合(SP107:YES)、位置情報管理部233は、インデクス2362を参照して、物理格納位置情報を取得し(SP108)、DBアクセス処理部232は、テーブル2361におけるレコードを更新し(SP109)、ステップSP114に進む。
 ステップSP102において、SQLの種別が削除の場合、DBアクセス処理部262は、削除するレコードを選択し(SP110)、選択するレコードが存在するか否かを判別する(SP111)。ステップSP111において、否定結果を得た場合(SP111:NO)、処理を終了する。ステップSP111において、肯定結果を得た場合(SP111:YES)、位置情報管理部263は、インデクス2362を参照して、物理格納位置情報を取得し(SP112)、DBアクセス処理部262は、テーブル2361におけるレコードを削除し(SP113)、ステップSP114に進む。
 ステップSP105,SP109,SP113において、レコードを追加、更新、又は削除した後に、データ連動要求部234は、ディスク型DB111にデータ連動するためのデータ連動SQLを生成する(SP114)。ただし、データ連動SQLには、取得した物理格納位置情報が付加されたレコードが含まれる。そして、データ連動要求部234は、ディスク型DB管理装置3にデータ連動SQLを送信し、その実行を要求する(SP115)。
 その後、インメモリDB管理装置2は、SQLに記載された全てのレコードについて処理を終了したか否かを判別する(SP116)。ステップSP116において、肯定結果を得た場合(SP116:YES)、処理を終了する。ステップSP116において、否定結果を得た場合(SP116:NO)、ステップSP102から処理を繰り返す。
(3-2)ディスク型データベース反映処理
 次に、図8を参照して、インメモリDB236に更新があった場合のディスク型DB63への反映処理を説明する。
 ディスク型DB管理装置3のDBアクセス要求解析部331が、インメモリDB管理装置2がステップSP115で送信したデータ連動SQLを受信した場合(SP201)、DBアクセス要求解析部331は、ディスク型DB63に対するデータ連動SQLの解析を行いSQLの種別を決定し(SP202)、SQLの種別が追加、更新又は削除の何れかであるかを判別する(SP203)。
 ステップSP203において、データ連動SQLの種別が追加の場合、DBアクセス処理部332は、データ連動SQLに含まれる物理格納位置情報からデータ連動SQLに含まれるレコードの追加先を判別する(SP204)。そして、DBアクセス処理部332は、テーブル631におけるステップSP204で判別した追加先に、レコードを追加し(SP205)、ステップSP212に進む。
 ステップSP203において、SQLの種別が更新の場合、DBアクセス処理部332は、更新するレコードを選択し(SP206)、選択するレコードが存在するか否かを判別する(SP207)。ステップSP207において、否定結果を得た場合(SP207:NO)、処理を終了する。ステップSP207において、肯定結果を得た場合(SP207:YES)、DBアクセス処理部332は、テーブル631におけるデータ連動SQLに含まれる物理格納位置情報が示す格納位置に格納されるレコードを更新し(SP208)、ステップSP212に進む。
 ステップSP203において、SQLの種別が削除の場合、DBアクセス処理部332は、削除するレコードを選択し(SP209)、選択するレコードが存在するか否かを判別する(SP210)。ステップSP210において、否定結果を得た場合、処理を終了する(SP210:NO)。ステップSP210において、肯定結果を得た場合(SP210:YES)、DBアクセス処理部332は、テーブル631におけるデータ連動SQLに含まれる物理格納位置情報が示す格納位置に格納されるレコードを削除し(SP211)、ステップSP212に進む。
 ステップSP205、SP208、SP211において、レコードを追加、更新、又は削除した後に、ディスク型DB管理装置3は、SQLに記載された全てのレコードについて処理を終了したか否かを判別する(SP212)。ステップSP212において、肯定結果を得た場合(SP212:YES)、処理を終了する。ステップSP212において、否定結果を得た場合(SP212:NO)、ステップSP203から処理を繰り返す。
このようにして、ディスク型DB63にインメモリDB236の更新を連動させる。
(3-3)ディスク型データベース更新処理
 次に、図9を参照して、端末装置4からディスク型DB63へ更新要求があった場合のディスク型DB63の更新処理を説明する。
 まず、ディスク型DB管理装置3が端末装置4からのディスク型DB63に対する更新系SQLを受信すると、ディスク型DB管理装置3のDBアクセス要求解析部331は、受信した更新要求SQLの解析を行い、SQLの種別を決定し(SP301)、SQLの種別が追加、更新、削除の何れかであるかを判別する(SP302)。
 ステップSP302において、SQLの種別が追加の場合、DBアクセス処理部332は、レコードの追加先を決定する(SP303)。次に、位置情報管理部263は、予約指示リスト61を参照して、追加先が予約指示のある物理格納位置情報と一致しているか否かを判別する(SP304)。ステップSP304において肯定結果を得た場合には(SP304:YES)、ステップSP303に戻る。ステップSP304において否定結果を得た場合には(SP304:NO)、ステップSP303で決定した追加先にレコードを追加し(SP305)、ステップSP314に進む。
 ステップSP302において、SQLの種別が更新の場合、DBアクセス処理部332は、更新するレコードの選択を行い(SP306)、選択するレコードがあるか否かを判別する(SP307)。ステップSP307において、否定結果を得た場合(SP307:NO)、処理を終了する。ステップSP307において、肯定結果を得た場合(SP307:YES)、位置情報管理部333は、物理格納位置情報を取得して(SP308)、DBアクセス処理部332は、レコードの更新を行う(SP309)。
 ステップSP302において、SQLの種別が削除の場合、DBアクセス処理部332は、削除するレコードの選択を行い(SP310)、選択するレコードがあるか否かを判別する(SP311)。ステップSP311において、否定結果を得た場合(SP311:NO)、処理を終了する。ステップSP311において、肯定結果を得た場合(SP311:YES)、位置情報管理部333は、物理格納位置情報を取得して(SP312)、DBアクセス処理部332は、レコードの削除を行う(SP313)。
 ステップSP305,SP309,SP313において、レコードを追加、更新、又は削除した後に、データ連動要求部334が、インメモリDB236にデータ連動するためのデータ連動SQLを生成する(SP314)。ただし、データ連動SQLには、追加先の物理格納情報又は取得した物理格納情報が付加されたレコードを含む。そして、データ連動要求部334は、インメモリDB管理装置2にデータ連動SQLを送信し、その実行を要求する(SP315)。
 その後、ディスク型DB管理装置3は、SQLに記載された全てのレコードについて処理を終了したか否かを判別する(SP316)。ステップSP316において、肯定結果を得た場合(SP316:YES)、処理を終了する。ステップSP316において、否定結果を得た場合(SP316:NO)、ステップSP302から処理を繰り返す。
(3-4)インメモリデータベース反映処理
 次に、図10を参照して、ディスク型DB63に更新があった場合のインメモリDB236への反映処理を説明する。
 インメモリDB管理装置2のDBアクセス要求解析部231が、ディスク型DB管理装置3がステップSP315で送信したデータ連動SQLを受信した場合(SP401)、DBアクセス要求解析部231は、インメモリDB236に対するデータ連動SQLの解析を行いSQLの種別を決定し(SP402)、SQLの種別が追加、更新又は削除の何れかであるかを判別する(SP403)。
 ステップSP403において、データ連動SQLの種別が追加の場合、DBアクセス処理部232は、データ連動SQLに含まれる物理格納位置情報からデータ連動SQLに含まれるレコードの追加先を判別する(SP404)。そして、DBアクセス処理部232は、テーブル2361におけるステップSP404で判別した追加先に、レコードを追加し(SP405)、ステップSP412に進む。
 ステップSP403において、SQLの種別が更新の場合、DBアクセス処理部232は、更新するレコードを選択し(SP406)、選択するレコードが存在するか否かを判別する(SP407)。ステップSP407において、否定結果を得た場合(SP407:NO)、処理を終了する。ステップSP407において、肯定結果を得た場合(SP407:YES)、DBアクセス処理部232は、テーブル2361におけるデータ連動SQLに含まれる物理格納位置情報が示す格納位置に格納されるレコードを更新し(SP408)、ステップSP412に進む。
 ステップSP403において、SQLの種別が削除の場合、DBアクセス処理部232は、削除するレコードを選択し(SP409)、選択するレコードが存在するか否かを判別する(SP410)。ステップSP410において、否定結果を得た場合(SP410:NO)、処理を終了する。ステップSP410において、肯定結果を得た場合(SP410:YES)、DBアクセス処理部232は、テーブル2361におけるデータ連動SQLに含まれる物理格納位置情報が示す格納位置に格納されるレコードを削除し(SP411)、ステップSP412に進む。
 ステップSP405,SP408,SP411において、レコードを追加、更新、又は削除した後に、インメモリDB管理装置2は、SQLに記載された全てのレコードについて処理を終了したか否かを判別する(SP412)。ステップSP412において、肯定結果を得た場合(SP412:YES)、処理を終了する。ステップSP412において、否定結果を得た場合(SP412:NO)、ステップSP403から処理を繰り返す。このようにして、インメモリDB236にディスク型DB63の更新を連動させる。
(3-5)予約済みリスト作成処理
 ここで、図11を参照して、インメモリDB管理装置2及びディスク型DB管理装置3が協働することによって予約済みリスト235を作成する処理を説明する。インメモリDB管理装置2は、インメモリDB236を作成した後に、予約済みリスト104を作成する。
 先ず、インメモリDB管理装置2は、インメモリDB236を作成した場合、ディスク型管理装置3にインメモリDB236を作成した旨を通知する。
 ディスク型管理装置3がその通知を受信すると、DBアクセス処理部332は、DBバッファ336を介して、ディスク型DB63のデータをエクスポートする(SP501)。次に、位置情報管理部333が、予約指示リストバッファ335を介して、予約指示リスト61の予約済み物理格納位置情報をエクスポートし(SP502)、データ連動要求部334が、インメモリDB管理装置2に、エクスポートしたデータの読み込み要求を行う(SP503)。
 次に、ディスク型DB装置3は、ディスク型DB63の全データ及び予約指示リスト61の全予約済み物理格納位置情報を読み込んだか否かを判別する(SP504)。ステップSP504において、肯定結果を得ると、処理を終了する。ステップSP504において、否定結果を得ると、ステップSP501に戻る。
 このようにして、ディスク型DB装置3は、ディスク型DB63の全データ及び予約指示リスト61の全予約済み物理格納位置情報についてエクスポートし、エクスポートしたデータの読み込み要求をインメモリDB236に対して行う。
 一方、インメモリDB管理装置2のDBアクセス解析部231が、ディスク型DB管理装置3がステップSP503において行った要求を受け付けた場合に(SP601)、DBアクセス処理部262は、インメモリDB236のテーブル2361に対して、ディスク型DB63のデータのインポートを行う(SP602)。その後、位置情報管理部263が、インデクス2362を作成し(SP603)、読み込んだ予約済み物理格納位置情報に基づいて予約済みリスト235を作成し(SP604)、処理を終了する。
(3-6)予約指示リスト作成処理
 ここで、図12を参照して、ディスク型DB管理装置3が予約指示リスト61を作成する処理を説明する。
 まず、ディスク型DB管理装置3の位置情報管理部333が、ユーザが作成した位置情報予約パラメタファイル62を読み込み(SP701)、パラメタファイルの内容を予約指示リスト61に登録する(SP702)。ディスク型DB管理装置3は、全ての位置情報予約パラメタファイル62を読み込んだか否かを判別する(SP703)。ステップSP703において、肯定結果(SP703:YES)を得た場合には、処理を終了する。ステップSP703において、否定結果を得た場合には(SP703:NO)、ステップSP701に戻る。
 このようにして、ユーザは、複数の位置情報予約パラメタファイル62を作成することができ、複数の位置情報予約パラメタファイル62から予約指示リスト61を作成することができる。
(3-7)予約済みリスト補充処理
 ここで、図13を参照して、予約済みリスト235の物理格納位置が少なくなった場合に、物理格納位置を補充する予約済みリスト補充処理を説明する。本処理は、ステップSP104において、位置情報管理部233が、予約済みリスト235から予約済み物理格納位置情報を取得した時に開始される。
 先ず、インメモリDB管理装置2の位置情報管理部233は、予約済みリスト235から予約済み物理格納位置情報を取得した場合に、予約済みリスト235の未使用状態の位置情報のうち、先頭の情報の状態を使用中に変更する(SP801)。
 次に、位置情報管理部233が、予約済みリスト104の使用中物理格納位置情報数2354から「1」を減算する(SP802)。位置情報管理部233は、予約済み物理格納位置情報数における使用中物理格納位置情報数の割合である使用率が8割以上であるか否かを判別する(SP803)。
 ステップSP803において、否定結果が得られた場合(即ち使用率が8割以上の場合(SP803:YES))、補充の必要がないと判断し、その時点で処理を終了する。
 ステップSP803において、肯定結果が得られた場合(即ち使用率が8割未満の場合(SP803:NO))、位置情報管理部233が、ディスク型DB管理装置3に予約済み物理格納位置情報の補充を要求し(SP804)、ディスク型DB管理装置3からの予約済みリスト連動要求を受け付け(SP805)、予約済みリスト235を連動させて補充し(SP806)、処理を終了する。
 一方、ディスク型DB管理装置3の位置情報管理部333は、予約済み物理格納位置情報の補充要求を受け付けると(SP901)、補充サイズを計算する(SP902)。補充サイズの計算は、例えば次の計算式で行う。
補充する予約済み物理格納位置情報数
=補充前の予約済み物理格納位置情報数×0.2
 その後、位置情報管理部333は、計算した補充サイズ分だけ、ディスク型DB63における物理格納位置を確保し、予約指示リスト61の予約済み物理格納位置情報を補充し(SP903)、インメモリDB管理装置2に予約済みリスト235への連動要求を行い(SP904)、処理を終了する。このようにして、使用中の予約済み物理格納位置情報が多くなった場合には、物理格納位置情報を確保して補充することによって、常に未使用の予約済み物理格納位置情報を確保することができる。
 図14は、予約済み物理格納位置情報の表示結果の例を示す図である。予約済み物理格納位置情報は、インメモリDB236のテーブル毎に分類できる。例えば、ユーザはコマンドなどのインタフェースを用いて、テーブル単位に、テーブル名と予約済み物理格納位置情報の使用率、使用中の位置情報を表示させる。予約済み物理格納位置情報は、ディスク型DB管理装置3の位置情報管理部333が、予約指示リスト61から求める。位置情報は、ファイル、エクステント、ページ、レコードから構成される。予約済み物理格納位置情報の使用率は、インメモリDB管理装置2の位置情報管理部233が、予約済みリスト235から以下の計算式で求める。
予約済み物理格納位置情報の使用率
=使用中物理格納位置情報数÷予約済み物理格納位置情報数
(5)他の実施の形態
 なお、上述の実施の形態では、予約済みリスト235をテーブル形式で保持したが、インデクス形式で保持してもよい。
 この場合、図15に示すように、インデクスを構成するインデクスエントリ2355において、予約済み物理格納位置情報をインデクスキー2356として保持し、インデクスキー2356と合わせて物理格納位置情報2357を保持することで実現できる。ここで、インデクスキー2356は、ディスク型DB63におけるレコードの格納位置を示し、これに対応するインメモリDB236のレコードの格納位置を物理格納位置情報2357が示す。物理格納位置情報2357が「0」の場合、予約済み物理格納位置情報が示すインメモリDB236の格納位置が未使用であることを示す。
 また、上述の実施の形態では、ディスク型DB63における物理格納位置情報632をインデクスとして用いたが、インメモリDB236が格納するデータとディスク型DB63が格納するデータとの間に一意性が保証できるユニークインデクスが存在する場合には、そのユニークインデクスを用いてもよい。
 図16は、ユニークキーが存在するインメモリDBの更新処理を示す概念図である。インメモリDB236は、レコード(図16の例では「CCC」)追加要求を受け付け、テーブル2363にレコード「CCC」と、予約済みリスト235から取得したユニークキー(図16の例では「0004」)を追加する。
 その後、ユニークキー「0004」をレコード「CCC」に付加し、ディスク型DB63に対して、レコード追加要求を行う。その後、ディスク型DB63は、ユニークキー「0004」が付加されている物理格納位置にレコード「CCC」を格納する。
 以上のように、テーブルが既にユニークキーを保持している場合、物理格納位置情報として、ユニークキーを使用し、データを連動することが可能である。
 1……データベース管理システム、2……インメモリDB管理装置、3……ディスク型DB管理装置、4……端末装置、5……ネットワーク、6……外部記憶装置、61……予約指示リスト、63……ディスク型データベース、235……予約済みリスト、236……インメモリデータベース。

Claims (10)

  1.  第1のデータベースを配置する主記憶を有する第1データベース管理装置と、第2のデータベースを配置する二次記憶を有する第2データベース管理装置とがネットワークを介して接続され、前記第1及び第2データベース管理装置が格納するデータを互いに反映させるシステムのデータベース管理方法であって、
     前記第1データベース管理装置は、前記第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを備え、
     前記第1データベース管理装置が、前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加する第1のステップと、
     前記第1データベース管理装置が、前記格納位置情報を付加した前記データを前記第2データベース管理装置に送信し、該第2データベース管理装置に当該データの追加を要求する第2のステップと、
     前記第2データベース管理装置が、前記第2データベース管理装置からの前記データの追加の要求に応じて、前記データに付加された前記格納位置情報が示す前記第2のデータベースの格納位置に前記データを追加する第3のステップと、を有する
     ことを特徴とするデータベース管理方法。
  2.  前記第1データベース管理装置は、前記第1のデータベースが格納するデータと前記第2のデータベースが格納するデータとを対応付ける前記第2のデータベースのデータの格納位置を示す格納位置情報からなるインデクスを備え、
     前記第1データベース管理装置が、前記第1のデータベースに格納されるデータを更新又は削除した時に、前記インデクスを参照して、当該データに前記第2のデータベースでの前記格納位置情報を付加して、前記第2データベース管理装置に送信し、当該データの更新又は削除を要求する第4のステップと、
     前記第2データベース管理装置が、前記第1データベース管理装置からの前記データの更新又は削除の要求に応じて、当該格納位置情報が示す第2データベースの格納位置に存在するデータを更新又は削除する第5のステップと、を更に有する
     ことを特徴とする請求項1に記載のデータベース管理方法。
  3.  前記格納位置情報には、前記第1のデータベースのデータと前記第2のデータベースのデータとを対応付け且つ前記第1及び第2のデータベースが格納するデータにユニークキーを使用する
     ことを特徴とする請求項1に記載のデータベース管理方法。
  4.  前記第2データベース管理装置は、
     前記第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報をユーザの操作に応じて保持する第2のリストを備え、
     前記第1のデータベースの作成時に、前記第2のリストが保持する前記格納位置情報を前記第1データベース管理装置に送信し、
     前記第1データベース管理装置は、
     受信した前記格納位置情報に基づいて前記リストを作成する
     ことを特徴とする請求項1に記載のデータベース管理方法。
  5.  前記第1データベース管理装置は、
     前記リストに保持された前記格納位置情報のうちのデータが書き込まれている前記格納位置情報の割合を算出し、
     前記割合が所定の閾値以上の場合に、前記第2データベース管理装置に対して前記第1のリストが保持する前記格納位置情報の補充を要求し、
     前記第2データベース管理装置は、
     前記補充を要求された場合に、前記第1のデータベースに追加するデータの前記第2データベースにおける新たな書き出し先を確保し、
     確保した前記新たな書き出し先の格納位置情報を前記第1データベース管理装置に送信し、
     前記第1データベース管理装置は、
     受信した前記新たな書き出し先の格納位置情報を前記第1のリストに補充する
     ことを特徴とする請求項1に記載のデータベース管理方法。
  6.  前記第2データベース管理装置は、
     前記補充を要求された場合に、前記第1のリストに保持されている前記格納位置情報の数が所定数倍になるように、前記第1のデータベースに追加するデータの前記第2のデータベースにおける新たな書き出し先を確保し、
     確保した前記新たな書き出し先の格納位置情報を前記第1データベース管理装置に送信する
     ことを特徴とする請求項5に記載のデータベース管理方法。
  7.  前記第2データベース管理装置は、
     前記第1のリストに保持された前記格納位置情報を保持する第2のリストを備え、
     前記第2のデータベースに対してデータの追加を要求された場合に、前記第2のリストに保持された前記格納位置情報が示す格納位置以外の格納位置に当該データを追加し、
     前記データに、前記データを追加した格納位置の格納位置情報を付加して前記第1のデータベース管理装置に送信し、
     前記第1データベース管理装置は、
     前記データと前記データに付加された前記格納位置情報とを受信した場合に、前記インデクスに当該格納位置情報を追加して、前記データを前記インメモリデータベースに追加する
     ことを特徴とする請求項2に記載のデータベース管理方法。
  8.  前記第2データベース管理装置は、
     前記第2のデータベースに対してデータを更新又は削除した場合に、当該データに当該データの格納位置情報を付加して、前記第1データベース管理装置に送信し、当該データの更新又は削除を要求し、
     前記第1データベース管理装置は、
     前記データと前記データに付加された前記格納位置情報とを受信した場合に、前記インデクスを参照して、受信した当該格納位置情報に対応する前記第1のデータベースにおけるデータを更新又は削除する
     ことを特徴とする請求項7に記載のデータベース管理方法。
  9.  第1のデータベースを配置する主記憶を有する第1データベース管理装置と、第2のデータベースを配置する二次記憶を有する第2データベース管理装置とがネットワークを介して接続され、前記第1及び第2データベース管理装置が格納するデータを互いに反映させるシステムのデータベース管理方法であって、
     
     前記第1データベース管理装置は、
     前記第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを備え、
     前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加し、当該格納位置情報を付加した当該データを前記第2データベース管理装置に送信し、前記第2データベース管理装置に当該データの追加を要求し、
     前記第2データベース管理装置は、
     前記第1データベース管理装置からの前記データの追加の要求に応じて、前記データに付加された前記格納位置情報が示す前記第2のデータベースの格納位置に前記データを追加する
     ことを特徴とするデータベース管理システム。
  10.  第2のデータベースを配置する二次記憶を有する第2データベース管理装置に接続され、第1のデータベースを配置する主記憶を有するとともに該第1のデータベースに追加するデータの前記第2のデータベースにおける書き出し先を示す格納位置情報を保持する第1のリストを有する第1データベース管理装置に、
     前記第1のデータベースに任意のデータが追加された時に、当該データに前記第1のリストから前記格納位置情報を付加する第1のステップと、
     前記格納位置情報を付加した前記データを前記第2データベース管理装置に送信し、該第2データベース管理装置に当該データの追加を要求する第2のステップと、
     を実行させることを特徴とするデータベース管理プログラム。
PCT/JP2010/001527 2009-11-18 2010-03-04 データベース管理方法、データベース管理システム及びデータベース管理プログラム WO2011061869A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/389,548 US9002796B2 (en) 2009-11-18 2010-03-04 Database management method, database management system and database management program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009263031A JP5256173B2 (ja) 2009-11-18 2009-11-18 データベース管理方法、データベース管理システム及びデータベース管理プログラム
JP2009-263031 2009-11-18

Publications (1)

Publication Number Publication Date
WO2011061869A1 true WO2011061869A1 (ja) 2011-05-26

Family

ID=44059358

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/001527 WO2011061869A1 (ja) 2009-11-18 2010-03-04 データベース管理方法、データベース管理システム及びデータベース管理プログラム

Country Status (3)

Country Link
US (1) US9002796B2 (ja)
JP (1) JP5256173B2 (ja)
WO (1) WO2011061869A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10114908B2 (en) * 2012-11-13 2018-10-30 International Business Machines Corporation Hybrid table implementation by using buffer pool as permanent in-memory storage for memory-resident data
CN105706068B (zh) * 2013-04-30 2019-08-23 慧与发展有限责任合伙企业 路由存储器流量和i/o流量的存储器网络
KR101679011B1 (ko) * 2014-06-26 2016-11-24 주식회사 알티베이스 데이터베이스에서 데이터 이동을 처리하는 방법 및 장치
JP6690829B2 (ja) * 2015-08-28 2020-04-28 国立大学法人 東京大学 計算機システム、省電力化方法及び計算機
CN107704196B (zh) * 2017-03-09 2020-03-27 深圳壹账通智能科技有限公司 区块链数据存储***和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001160942A (ja) * 1999-12-02 2001-06-12 Matsushita Electric Ind Co Ltd サーバシステム
WO2008105098A1 (ja) * 2007-02-28 2008-09-04 Fujitsu Limited メモリミラー化制御方法
JP2008310517A (ja) * 2007-06-13 2008-12-25 Hitachi Ltd データ同一化方法、データ同一化プログラム、および、現用系装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3698947B2 (ja) 2000-03-27 2005-09-21 日立ソフトウエアエンジニアリング株式会社 データベース処理方法およびデータベース処理システム
US7403945B2 (en) * 2004-11-01 2008-07-22 Sybase, Inc. Distributed database system providing data and space management methodology
US7634507B2 (en) * 2006-08-30 2009-12-15 Inmage Systems, Inc. Ensuring data persistence and consistency in enterprise storage backup systems
WO2008049102A2 (en) * 2006-10-19 2008-04-24 Fair Thomas T System and methods for zero-configuration data backup

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001160942A (ja) * 1999-12-02 2001-06-12 Matsushita Electric Ind Co Ltd サーバシステム
WO2008105098A1 (ja) * 2007-02-28 2008-09-04 Fujitsu Limited メモリミラー化制御方法
JP2008310517A (ja) * 2007-06-13 2008-12-25 Hitachi Ltd データ同一化方法、データ同一化プログラム、および、現用系装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
TAKASHI KUWAUCHI ET AL.: "Shinka shita DWH/BI, .NET Muke Kaihatsu Kino In-Memory DB 'TimesTen' no Zenbo", DB MAGAZINE, vol. 15, no. LL, 1 January 2006 (2006-01-01), pages 80 - 88 *
TATSUYA SUGI ET AL.: "Data Shori o Kosokuka suru In-Memory Architecture", IT ARCHITECT, vol. 22, 14 May 2009 (2009-05-14), pages 44 - 55 *
TSUTOMU HOSOKAWA: "Seino Kakuho no Shoheki wa Nanika, Architect ga Shitteoku beki koto wa Nanika", IT ARCHITECT, vol. 22, 14 May 2009 (2009-05-14), pages 26 - 33 *

Also Published As

Publication number Publication date
JP2011108027A (ja) 2011-06-02
JP5256173B2 (ja) 2013-08-07
US9002796B2 (en) 2015-04-07
US20120209891A1 (en) 2012-08-16

Similar Documents

Publication Publication Date Title
JP5082310B2 (ja) データ移行装置及びプログラム
US8103847B2 (en) Storage virtual containers
US7809779B2 (en) Method of creating symbolic link capable of being compatible with file system, and method and apparatus for accessing file or directory by using symbolic link
US8024363B2 (en) Information processing apparatus, information processing method, program and program recording medium
JP5149912B2 (ja) 複数の異種のソリッドステート・ストレージ・ロケーションの選択的利用
KR101644894B1 (ko) 클라우드 스토리지 서비스 장치 및 방법
JP5869661B2 (ja) ネットワークストレージシステムにリンクされるローカルストレージ
JP4837378B2 (ja) データの改竄を防止する記憶装置
JP5256173B2 (ja) データベース管理方法、データベース管理システム及びデータベース管理プログラム
TW201520889A (zh) 混合儲存的控制方法及混合儲存系統
CN103597440A (zh) 用于创建克隆文件的方法以及采用该方法的文件***
KR101365438B1 (ko) Mtp 디바이스가 미디어 파일을 관리하는 방법 및 이를위한 장치
JP4227931B2 (ja) 情報記憶装置、情報格納方法及び情報記憶処理プログラム
US10838641B2 (en) Defragmenting backup objects
CN107172152B (zh) 一种基于ceph集群cap机制统计配额***及方法
JP2010225024A (ja) ストレージ装置とそのファイル制御方法およびストレージシステム
JP4502375B2 (ja) ファイルシステムおよびその制御方法
US8082230B1 (en) System and method for mounting a file system on multiple host computers
JP6470126B2 (ja) ファイルバリアントを作成する方法、計算装置、及びプログラム
WO2014030249A1 (ja) ボリュームのi/o性能の検証システム及び検証方法
JP6874348B2 (ja) ストレージ制御装置、およびストレージ制御プログラム
JP6281333B2 (ja) ストレージシステム
US11537597B1 (en) Method and system for streaming data from portable storage devices
US11495262B1 (en) Duplexing data from multiple file systems onto a shared tape
US11204845B2 (en) Workload coordination on disaster recovery site

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10831269

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13389548

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10831269

Country of ref document: EP

Kind code of ref document: A1