WO2015029188A1 - 計算機及びデータ読み出し方法 - Google Patents
計算機及びデータ読み出し方法 Download PDFInfo
- Publication number
- WO2015029188A1 WO2015029188A1 PCT/JP2013/073182 JP2013073182W WO2015029188A1 WO 2015029188 A1 WO2015029188 A1 WO 2015029188A1 JP 2013073182 W JP2013073182 W JP 2013073182W WO 2015029188 A1 WO2015029188 A1 WO 2015029188A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- access
- logical
- logical device
- read
- request
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24539—Query rewriting; Transformation using cached or materialised query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6026—Prefetching based on access pattern detection, e.g. stride based prefetch
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6042—Allocation of cache space to multiple users or processors
- G06F2212/6046—Using a specific cache allocation policy other than replacement policy
Definitions
- the present invention relates to reading data from a storage device.
- DBMS DB management system
- DBMS handles a DB that contains a large amount of data. Therefore, a computer system in which a DBMS operates generally has a computer in which the DBMS operates and a large-capacity storage device connected to the computer, and the storage device stores DB data.
- the storage apparatus includes a plurality of storage devices (for example, HDD (Hard Disk Drive) or SSD (Solid State Device)), and a DB is stored in these storage devices. Since data is stored in the storage device in the storage apparatus, access to the storage device inevitably occurs when processing related to the DB is performed. In particular, in a very large DB of the petabyte class, it takes a lot of time to search for specific data from a large amount of DB data.
- Patent Document 1 a technique for speeding up a search process for searching for specific data from a large amount of data.
- the technique disclosed in Patent Document 1 is a technique for dynamically creating a task each time data is read and multiplexing the data read requests by executing the tasks in parallel. According to a DBMS using this technique, search performance can be improved as compared with a DBMS that executes tasks sequentially in the order of generation.
- Patent Document 2 discloses prefetch processing of a storage apparatus having a cache memory. Specifically, the storage apparatus receives a plurality of read requests, and determines whether or not these read requests are read of data at sequential addresses (sequential read) (read type determination). When the storage apparatus determines that the read is sequential, the storage apparatus reads data at an address further ahead of the address specified by the received read request to the cache memory. Thereby, it is possible to improve the response performance to the read request (shortening the read time).
- JP 2007-34414 A Japanese Patent Publication No. 7-76941
- the storage device cannot perform the above-described prefetch processing when the multiplicity of read requests received from the computer exceeds the allowable level. Specifically, when a read request with a multiplicity exceeding the allowable level is received, the storage apparatus determines that the read type is random read and does not perform prefetch processing.
- the storage device even when multiple read requests for sequential read and multiple read requests for random read are mixed at a multiplicity exceeding the aforementioned tolerance, the storage device always determines that the read is a random read. Do not perform prefetch processing.
- access applications include, for example, a pattern that emphasizes the number of reads per unit time, and a pattern that emphasizes the response time for one read request. is there. Also for this type of access application, it is desired to improve the reading performance of the DBMS.
- the above problems are not limited to the DBMS, but other types of entities that can send a read request to the storage apparatus (for example, a computer that issues a read request to the storage apparatus by executing a computer program different from the DBMS) ) Can also occur.
- a storage apparatus that provides a storage area, has a cache memory, reads data from the storage area to the cache memory in response to a read request, and transmits data from the cache memory
- a computer is connected to the storage apparatus.
- the computer receives the data processing request, determines the access usage based on the data processing request (or information related to the access usage of the data processing request) or information related to the access usage of the data processing request, and determines the access
- a logical device corresponding to the application is selected from a plurality of logical devices assigned to the storage area, and a read request is issued to the selected logical device.
- the logical area is, for example, a logical unit (LU) described later.
- the computer accepts the request, and in executing the accepted request, dynamically creates a task to execute the operation for that request, and reads by executing multiple dynamically generated tasks in parallel Requests can be issued (eg in multiplex). Specifically, in the execution of the request, the computer generates (a) a task for executing an operation for the request, and (b) executes the generated task, and the task is executed as necessary.
- a plurality of logical devices in the computer are allocated to the storage area provided by the storage apparatus, and a read request for the storage area is distributed to the plurality of logical devices according to the access application specified based on the data processing request. For this reason, improvement in the reading performance of the computer can be expected.
- FIG. 1 is a diagram illustrating a configuration example of a DB system according to the embodiment.
- FIG. 2A is a diagram illustrating a configuration of DB management information according to the embodiment.
- FIG. 2B is a diagram illustrating a configuration of DB file information according to the embodiment.
- FIG. 2C is a diagram illustrating a configuration of DB data area information according to the embodiment.
- FIG. 3A is a diagram illustrating a configuration of DB schema management information according to the embodiment.
- FIG. 3B is a diagram illustrating a configuration of DB schema information according to the embodiment.
- FIG. 3C is a diagram illustrating an example of query plan information according to the embodiment.
- FIG. 4A is a diagram illustrating a configuration of OS management information according to the embodiment.
- FIG. 4A is a diagram illustrating a configuration of OS management information according to the embodiment.
- FIG. 4B is a diagram illustrating a configuration of device management information according to the embodiment.
- FIG. 5A is a diagram illustrating a configuration of logical device information according to the embodiment.
- FIG. 5B is a diagram illustrating a configuration of volume group information according to the embodiment.
- FIG. 6A is a diagram illustrating a configuration of storage management information according to the embodiment.
- FIG. 6B is a diagram illustrating a configuration of logical storage area management information according to the embodiment.
- FIG. 6C is a diagram illustrating a configuration of physical storage area management information according to the embodiment.
- FIG. 7A is a diagram illustrating an example of the query according to the embodiment.
- FIG. 7B is a diagram showing the query plan of FIG. 7A.
- FIG. 8 is a flowchart of the query reception process according to the embodiment.
- FIG. 9 is a flowchart of the query execution process according to the embodiment.
- FIG. 10 is a diagram showing an outline of the embodiment.
- FIG. 11A shows an example of associating a plurality of sequential read logical devices with one LU.
- FIG. 11B shows an example of associating a plurality of random read logical devices with one LU.
- FIG. 12 shows an example of controlling the number of sequential read logical devices associated with one LU.
- FIG. 13 shows a configuration of a computer system according to a modification.
- the entity may be a computer program or a computer that executes the computer program.
- the computer program for example, a file system program for reading a file or a DBMS for reading data in a DB can be considered.
- a DBMS for reading data in a DB
- the process may be described using “program” as a subject, but the program is executed by a processor (for example, a CPU (Central Processing Unit)) included in a computer, a storage device, or the like.
- the subject of the process may be a processor in order to perform the determined process appropriately using a storage resource (for example, a memory) and / or a communication interface device (for example, a communication port).
- the processing described with the program as the subject may be processing performed by a processor or a device (computer, storage device, etc.) having the processor.
- the processor may include a hardware circuit that performs part or all of the processing.
- the program may be installed on each controller from a program source.
- the program source may be, for example, a program distribution computer or a storage medium.
- an identifier a number, or a name is used as element identification information.
- the identification information may include other types of information.
- FIG. 10 shows an outline of the embodiment.
- the storage device 150 is connected to the computer 100.
- the computer 100 includes a memory, a processor, and the like, and an OS (Operating System) 140 and a DBMS 120 are executed by the processor.
- the DBMS 120 includes a query reception unit 122, a query plan generation unit 123, and a query execution unit 124.
- the query receiving unit 122 receives a query to the DB 70.
- the query plan generating unit 123 generates a query plan including a processing block that is information representing a DB operation necessary for executing the accepted query.
- the query execution unit 124 executes a query based on the generated query plan, dynamically generates a task for executing the DB operation in executing the query, and concurrently generates a plurality of dynamically generated tasks.
- the query execution unit 124 (a) generates a task for executing the DB operation, and (b) executes the generated task, thereby responding to the task as necessary. Issuing a read request to the DB in order to read data necessary for the DB operation performed, (c) based on the execution result of the Nth DB operation corresponding to the task executed in (b) above, the (N + 1) th When a DB operation is executed, a task based on the execution result is newly generated (N is an integer of 1 or more), and (d) (b) and (c) for the newly generated task. If there are two or more executable tasks in the above (b) and (d), out of these two or more tasks It is adapted to run in parallel the number of tasks.
- the storage device 150 includes a plurality of HDDs (Hard Disk Drives) 156 and a controller 154 connected to the HDDs 156.
- the controller 154 includes a cache memory (hereinafter referred to as CM) 168 in which data read / written from / to the LU 50 is temporarily stored.
- CM cache memory
- a plurality of HDDs 156 may constitute two or more RAID (Redundant Array of Independent (or ⁇ Inexpensive) Disks) groups.
- the storage apparatus 100 may include another type of physical storage device such as an SSD (Solid State Device) instead of or in addition to the HDD 156.
- the RAID group may be composed of two or more other types of physical storage devices.
- the storage apparatus 150 provides a plurality (or one) logical unit (LU) 50 to the computer 100.
- a plurality of LUs 50 store the DB 70.
- the DB 70 includes a table 71 and an index 72.
- Each LU 50 is a logical storage device based on a plurality (or one) of HDDs 156. Further, at least the LU 50 may be a virtual LU, for example, an LU based on storage resources of a storage device (not shown) external to the storage device 150, or an LU according to Thin Provisioning.
- a plurality of paths used by the computer 100 are associated with one LU 50.
- a plurality of logical devices 60 are respectively associated with the plurality of paths.
- the DBMS 120 can read data from the DB 70 stored in the LU 50 through the logical device 60.
- logical devices sda and sdc are associated with LU # 1
- logical devices sdb and sdd are associated with LU # 2.
- the query execution unit 124 can issue multiple read requests using a path associated with a desired logical device.
- the issued read request is transmitted to the storage apparatus 150 by the OS 140.
- the OS 140 (or a computer program executed under the DBMS 120) may send two or more read requests to the storage apparatus 150 as one read request.
- Read source information is associated with a read request transmitted from the computer 100 to the storage apparatus 150.
- the read source information is information indicating a read source area in the LU 50, and for example, a LUN (Logical Unit Number) (especially a host LUN described later) and an LBA (Logical Block Address).
- LUN Logical Unit Number
- LBA Logical Block Address
- the controller 154 of the storage apparatus 150 determines whether or not the read according to the plurality of read requests received through the one path is a sequential read. Determine. When the result of the determination is affirmative, the controller 154 performs prefetch processing for reading data from the LBA ahead of the LBA designated by the plurality of read requests to the CM 168.
- the controller 154 performs sequential read according to a plurality of read requests received through the one path. If so, it cannot be determined, and therefore the above-described prefetching process cannot be performed.
- a plurality of logical devices 60 associated with the same LU 50 are classified according to the lead pattern. Specifically, a sequential read logical device and a random read logical device are prepared as the logical devices 60 associated with the same LU 50.
- logical devices sda and sdb are sequential read logical devices
- logical devices sdc and sdd are random read logical devices.
- the query execution unit 124 determines whether the data read is a sequential read or a random read based on the types of processing blocks constituting the query plan. For example, the query execution unit 124 determines that a processing block representing scanning a table without using an index is a sequential read, and issues a read request for reading data in LU # 1. Selects a logical device sda for sequential read, and issues multiple read requests using the path with which the logical device sda is associated (sequential reads are indicated by solid arrows). On the other hand, the query execution unit 124 determines that the processing block representing scanning the index (and scanning the table using the index) is random read, and reads the data in LU # 1. When a read request is issued, a random read logical device sdc is selected, and multiple read requests are issued using a path with which the logical device sdc is associated (random read is indicated by a dashed arrow. )
- a plurality of sequential read logical devices may be associated with the same LU 50. This further increases the possibility that the storage apparatus 150 can perform the prefetching process at the time of sequential read.
- the query execution unit 124 may select a sequential read logical device that is used less frequently from a plurality of sequential read logical devices. This further increases the possibility that the storage apparatus 150 can perform the prefetching process at the time of sequential read.
- a plurality of random read logical devices may be associated with the same LU 50. Thereby, a plurality of read requests for random reading are distributed to a plurality of paths, and load distribution can be expected.
- the query execution unit 124 may select a random read logical device that is used less frequently from a plurality of random read logical devices. Thereby, more effective load distribution can be expected.
- the number of sequential read logical devices associated with the same LU 50 may be a number determined based on the tolerance of the storage apparatus 150 and the maximum value of the multiplicity of read requests issued from the computer 100. .
- the maximum value may be the maximum value of the multiplicity of read requests issued by the DBMS 120 or the maximum value of the multiplicity of read requests issued from the OS 140.
- the number of sequential read logical devices associated with one LU 50 may be a quotient obtained by dividing the maximum value by the tolerance. From the above viewpoint, since the number of sequential read logical devices associated with one LU 50 is determined, the possibility that the storage apparatus 150 can perform the prefetch process can be increased.
- the tolerance of the storage device 150 (or information for specifying the tolerance) is stored in the memory 110 of the computer 100.
- the computer 100 controls the number of valid sequential read logical devices associated with one LU 50 based on the tolerance of the storage apparatus 150 and the maximum value of the multiplicity of read requests issued from the computer 100. .
- an active path (available for use) among a plurality of paths to the LU 50 (a plurality of paths associated with a plurality of sequential read logical devices).
- the number of paths may be controlled, or the number of sequential read logical devices associated with the LU 50 may be controlled.
- the solid line path is active, and the broken line path is inactive. As a result, the number of sequential read logical devices associated with one LU 50 can be controlled.
- FIG. 1 is a diagram illustrating a configuration example of a DB system according to an embodiment.
- the DB system is an example of a computer system.
- the computer 100 and the storage apparatus 150 are connected via the communication networks 180 and 182.
- the computer 100 executes a DBMS 120 that manages DB data stored in the storage apparatus 150.
- the communication network 180 may be, for example, a network such as a LAN (Local Area Network) or a WAN (Wide Area Network), and the communication network 182 may be a network (for example, a SAN (Storage Area Network)) configured by a fiber channel or the like.
- LAN Local Area Network
- WAN Wide Area Network
- SAN Storage Area Network
- FIG. 1 only one computer 100 and one storage device 150 are shown, but a plurality of them may be used. Further, the computer 100 and the storage apparatus 150 may be connected via a single communication network instead of the different communication networks 180 and 182.
- the computer 100 includes a CPU (processor) 104, an I / O (Input / Output) device 106, a storage device 108, a memory 110, and an I / F (1) 112 (interface with the communication network 180) connected via an internal bus 102. And I / F (2) 114 (interface with the communication network 182).
- the DBMS 120 and the OS 140 are stored in at least one of the storage device 108 and the memory 110 and executed by the CPU 104.
- the DBMS 120 includes a query receiving unit 122 that receives a query from the outside (for example, a client computer of the computer 100), a query plan generating unit 123 that generates information 128 representing a query plan based on the query, and a query execution unit that executes the query. 124.
- the DBMS 120 holds DB management information 126 used for DB management and query plan information 128 of the accepted query.
- the OS 140 holds OS management information 142 that associates devices on the OS 140 with logical storage areas on
- the storage apparatus 150 includes a controller 154 and a plurality of HDDs 156, which are connected by an internal bus 152. In FIG. 1, only one controller 154 is shown, but a plurality of controllers may be used.
- the controller 154 includes, for example, an I / F (1) 162 (interface with the communication network 180), an I / F (2) 164 (interface with the communication network 182), a CPU (processor) 166, which are connected via an internal bus 156.
- a CM 168 and a memory 170 are included.
- the memory 170 stores a control program 172 that controls the storage device 150 and is executed by the CPU 166.
- the control program 172 holds storage management information 174 that associates the LU of the storage apparatus 150 with the physical storage area of the HDD 156.
- a RAID group may be composed of two or more HDDs 156.
- FIG. 2A is a diagram showing a configuration example of the DB management information 126.
- the DB management information 126 is DB file information 200 that is information about files in which DB data is arranged, DB data area information 202 that is information about DB data areas, and DB schema that is management information of schemas such as DB tables and indexes. It includes management information 204 and DB schema information 206 which is information related to the configuration of each schema.
- FIG. 2B is a diagram showing a configuration example of the DB file information 200.
- the DB file information 200 is information related to the mapping between a DB file in which DB data is arranged and a logical device on the OS, and has an entry for each DB file.
- Each entry includes a field 220 for registering a file path for identifying a DB file, a field 222 for registering the size of the DB file (in this example, in bytes), and the name of the logical device in which the DB file is placed.
- Field 224 for registering.
- FIG. 2C is a diagram showing a configuration example of the DB data area information 202.
- the DB data area information 202 is information related to mapping between a DB data area in which a DB schema is arranged and a DB file in which the DB data area is arranged, and has an entry for each DB data area.
- Each entry includes a field 240 for registering an identifier for identifying the DB data area, a field 242 for registering the size of the DB data area, a field 244 for registering the file path of the DB file constituting the DB data area, and the DB data area.
- a plurality of DB files may be set in one DB data storage area entry.
- the DBMS 120 issues only sequential access for access (I / O) to a DB file for which “sequential” is set in the access usage 246, and only random access for access to a DB file for which “random” is set.
- access is writing or reading.
- Issuing sequential access means issuing an access request for sequential access
- issuing random access means issuing an access request for random access.
- FIG. 3A is a diagram showing a configuration example of the DB schema management information 204.
- the DB schema management information 204 is information for managing a schema such as a DB table or index, and has an entry for each schema. Each entry registers a field 300 for registering an identifier for identifying a schema, a field 302 for registering the name of the schema, a field 304 for registering the type of the schema, and an identifier of a DB data area in which the schema is arranged. And a field 308 for registering the data size of the schema.
- FIG. 3B is a diagram showing a configuration example of the DB schema information 206.
- the DB schema information 206 is information relating to the structure of the DB schema.
- the DB schema information 206 is created for each schema, and has an entry for each piece of data.
- a configuration example of the schema Tbl0 is shown.
- Each entry of the DB schema information 206 of the schema Tbl0 has a field 320 for registering an identifier for identifying the schema, a field 322 for registering the name of the schema, and a field for registering data of the first element “FROM_ID”.
- 324 includes a field 326 for registering data of “TO_ID” as the second element, and a field 328 for registering data of “CLASS” as the third element.
- FIG. 3C is a diagram illustrating a configuration example of the query plan information 128.
- the query plan information 128 represents the information of the query plan generated by the query plan generating unit 123, and has an entry for each processing block.
- Each entry includes a field 340 for registering an identifier for identifying a query, a field 342 for registering an identifier for identifying the processing block, a field 344 for registering the processing type of the processing block, and an access pattern of the processing block.
- a field 348 for registering an identifier of a schema accessed by the processing block A field 348 for registering an identifier of a schema accessed by the processing block, a field 350 for registering an identifier of a processing block on the left side (immediately preceding) connected to the processing block, and a right side (immediately following) connected to the processing block
- a field 352 for registering an identifier of the processing block and a field 354 for registering a search condition for the processing block.
- FIG. 4A is a diagram showing a configuration example of the OS management information 142.
- the OS management information 140 includes device management information 400 that is information related to management of devices in the OS 140, logical device information 402 that is information related to logical devices in the OS 140, and volume group information 404 that is information related to volume groups in the OS 140. including.
- FIG. 4B is a diagram illustrating a configuration example of the device management information 400.
- the device management information 400 is information regarding the mapping between the device managed by the OS 140 and the LU of the storage apparatus 150, and has an entry for each device.
- Each entry includes a field 420 for registering the name of the device, a field 422 for registering the size (capacity) of the device, a field 424 for registering the identifier of the storage apparatus 150 in which the LU corresponding to the device is arranged, and the device And a field 426 for registering the identifier of the controller 154 to which the path to the LU corresponding to the device is registered, and a field 428 for registering the host LUN of the LU corresponding to the device.
- FIG. 5A is a diagram showing a configuration example of the logical device information 402.
- the logical device information 402 is information related to the mapping between the logical device and the volume group in the OS 140, and has an entry for each logical device. Each entry has a field 500 for registering the name of the logical device, a field 502 for registering the size (capacity) of the logical device, and a field 504 for registering the name of the volume group in which the logical device is created.
- FIG. 5B is a diagram showing a configuration example of the volume group information 404.
- the volume group information 404 is information related to mapping of volume groups and devices in the OS 140, and has an entry for each volume group. Each entry has a field 520 for registering the name of the volume group, a field 522 for registering the size (capacity) of the volume group, and a field 524 for registering the names of device files constituting the volume group. As illustrated, a plurality of devices may be set for one volume group entry.
- FIG. 6A is a diagram showing a configuration example of the storage management information 174.
- the storage management information 174 includes logical storage area management information 600 that is information for managing a logical storage area in the storage apparatus 150, and physical storage area management information 602 that manages a physical storage area in the storage apparatus 150. including.
- FIG. 6B is a diagram showing a configuration example of the logical storage area management information 600.
- the logical storage area management information 600 is information regarding LU path setting, and has an entry for each LU.
- Each entry includes a field 620 for registering an identifier of the controller 154 that causes the computer 100 to recognize the LU, a field 622 for registering the host LUN (LUN recognized by the computer 100) of the LU, and the LUN (storage device 150) of the LU.
- Field 624 for registering a LUN recognized by the computer 100 but not recognized by the computer 100.
- FIG. 6C is a diagram showing a configuration example of the physical storage area management information 602.
- the physical storage area management information 602 is information regarding the mapping between the logical storage area and the physical storage area in the storage apparatus 150, and has an entry for each LU.
- Each entry has a field 640 for registering the LUN of the LU, a field 642 for registering the logical page address of the LU, a field 644 for registering the number of the HDD corresponding to the storage area of the logical page address of the LU, and the logical of the LU. It has a field 646 for registering the physical page address corresponding to the page address storage area.
- a plurality of logical page addresses, corresponding HDD numbers, and physical page addresses may be set in one LU entry.
- a logical page is a storage area in an LU.
- the LU is composed of a plurality of logical pages.
- a physical page is a storage area of the HDD.
- FIG. 7A is a diagram illustrating an example of a query input to the DBMS 120
- FIG. 7B is a diagram illustrating a query plan of the query. It is assumed that an index “Idx0” is attached to “FRMO_ID” of the table “Tbl0”.
- the query plan 710 of the query 700 includes a processing block 712 that scans the table “Tbl0” to “T1”, and a processing block that scans “T2” of the same table “Tbl0”. 714, and each processing block is joined by a nested join 716 and returns a result.
- the processing block 712 is a table scan of “T1” (no index scan), and its read pattern is sequential read.
- the processing block 714 performs an index scan of “T2” using the index “Idx0”, and the read pattern is random read.
- FIG. 8 is a flowchart of the query reception process.
- the query reception unit 122 starts processing after the DBMS 120 is activated (step 800).
- the query reception unit 122 establishes a connection with the outside (step 802), enters a query reception waiting state, and determines whether or not a query has been received from the outside (step 804).
- this query acceptance waiting state it is determined whether the DBMS 120 is terminated at the same time (step 806), and when it is determined that the DBMS 120 is terminated (step 806: Yes), the query acceptance process is terminated (step 808).
- step 804 If it is determined in step 804 that the query has been accepted (step 804: Yes), the query reception unit 122 exits from the query waiting state and executes the query plan generation unit 123.
- the query plan generation unit 123 analyzes the content of the accepted query and creates query plan information 128 (step 810).
- the query plan generation unit 123 requests the query execution unit 124 to execute the query (step 812).
- FIG. 9 is a flowchart of the query execution process.
- the query execution unit 124 starts query execution processing (step 900).
- the query to be executed may be divided into a plurality of tasks at the record level, and each task may be executed in parallel for each query part. In this case, the process of the flowchart of FIG. 9 is executed for one query part.
- the query execution unit 124 refers to the query plan information 128 and acquires information on the processing block to be executed (step 902).
- the query execution unit 124 searches the DB schema management information 204 using the access schema ID 346 of the processing block to be executed as a key, and stores the data of the schema identified from the access schema ID 346 in the DB data area.
- the DB data area ID 306 is acquired (step 904).
- the query execution unit 124 searches the DB data area information 202 using the DB data area ID 306 acquired in step 904 as a key, and the DB file in which the DB data area identified from the DB data area ID 306 is arranged. DB file path 244 and its access usage 246 are acquired (step 906).
- the query execution unit 124 determines whether there are a plurality of DB file paths 244 acquired in step 906 and a plurality of access uses 246 corresponding to the plurality of DB file paths 244 are divided into “sequential” and “random”. Determination is made (step 908).
- step 908 If the result of the determination in step 908 is negative (step 908: No), the query execution unit 124 issues a read request for the DB file specified from the acquired DB file path 244 (step 910).
- step 908 If the result of the determination in step 908 is affirmative (step 908: Yes), the query execution unit 124 refers to the query plan information 128 and determines whether the access pattern of the processing block is “sequential” (step 912). .
- step 912 If the result of the determination in step 912 is negative (the access pattern of the processing block is “random”) (step 912: No), the query execution unit 124 makes a read request to the DB file whose access usage is “random”. Is issued (step 914).
- step 912 If the determination result in step 912 is affirmative (the access pattern of the processing block is “sequential”) (step 912: Yes), the query execution unit 124 makes a read request to the DB file whose access usage is “sequential”. Is issued (step 916).
- the query execution unit 124 issues a read request in any one of Step 910, Step 914, and Step 916, and then determines whether the query is completed (Step 918). If the result of the determination in step 918 is affirmative (step 918: Yes), the query execution unit 124 ends the query execution process (step 920). If the result of the determination in step 918 is negative (step 918: No), the query execution unit 124 continues processing from step 902.
- the read request issued by the query execution unit 124 in step 910, step 914, and step 916 may not be a DB file.
- the query execution unit 124 may issue a read request specifying the corresponding logical device with reference to the DB file information 200.
- This read request is made to the OS 140, and the OS 140 that has received the read request, based on the content of the read request (for example, logical device name, data offset, data size, etc.), logical device information 402, volume
- a read request for example, a SCSI command specifying the LU in which the corresponding data is stored is issued.
- the OS 140 may search the logical device information 402 using “Lvol10” as a key and specify the corresponding volume group “VolGroup10”. . Then, the OS 140 may search the volume group information 404 using “VolGroup10” as a key and specify the corresponding device file (assuming “/ dev / sdd0” here). The OS 140 searches the device management information 400 using “/ dev / sdd0” as a key, and specifies the storage “0x002a1282”, the controller “0”, and the host LUN “1000” of the storage apparatus 150 that is the issue destination of the read request. Then, a read request is transmitted to the storage apparatus 150 based on the specified information.
- the DBMS 120 may include a monitoring unit (not shown) that monitors the access issuance status (read request issuance frequency) for each DB file.
- the query execution unit 124 selects a DB file to which a read request is issued, the query execution unit 124 may select a DB file with a low access issue frequency according to the read pattern, and issue a read request for the selected DB file.
- the query execution unit 124 determines in step 912 that the access pattern of the processing block is “sequential” and issues a read request in step 916, as shown in FIG.
- the size may be increased (for example, a 4 KByte access request is changed to a 1 MByte access request) and issued. That is, a plurality of read requests may be merged into one read request.
- the data ahead is read in advance into the CM 168 (or data buffer (not shown) in the DBMS 120), and the read response performance is improved. improves.
- the data size of the read request may be increased by the OS 140, the I / F (1), or the I / F (2) device driver.
- two types of logical devices for sequential read and random read are associated with one LU of the storage apparatus 150.
- the DBMS 120 selects a logical device corresponding to the access pattern of each processing block to be executed. Thereby, a multiplexed read request with only sequential read or a multiplexed read request with only random read is transmitted to one path. For this reason, even if the DBMS 120 executes a query in which sequential read and random read are mixed, the storage apparatus 150 is likely to be able to perform the pre-read processing, and therefore the read response performance is likely to be improved.
- the storage apparatus 150 can perform the pre-read processing even when the DBMS 120 executes a query that includes only sequential read.
- the computer 100 may determine sequential read when the data read source address is continuous, and may determine random read when the data read source address is discontinuous.
- a plurality of logical devices associated with one LU 50 may be a logic corresponding to another access application instead of or in addition to at least one of a sequential read logical device and a random read logical device.
- a logical device for emphasizing the number of accesses for example, the number of reads
- a logical device for emphasizing response time may be included.
- the “number of accesses” referred to here may be the number of accesses (for example, the number of reads) per unit time (for example, one second).
- the “response time” may be a time from when one access request (for example, a read request) is issued until a response is received from the storage apparatus.
- a plurality of logical devices associated with one LU may include at least one of a logical device for emphasizing the number of accesses and a logical device for emphasizing response time.
- the query execution unit 124 determines whether the pattern emphasizes the number of accesses per unit time and the pattern emphasizes response time. This determination may be made based on a query plan (for example, the type of processing block to be executed).
- the query execution unit 124 may manage the usage frequency for each logical device.
- the “usage frequency” may be the number of times used for transmitting a read request per unit time (for example, the length of the access request queue). There may be both or both.
- the memory 110 may store management information indicating the usage frequency for each logical device, and the management information may be updated by the query execution unit 124.
- the query execution unit 124 determines that the access use is a pattern that places importance on the number of accesses per unit time, the query execution unit 124 selects a logical device that emphasizes the number of accesses, and the access use has a pattern that places importance on response time. If it is determined, a logical device for emphasizing response time may be selected.
- the logical device for emphasizing the number of accesses may be a logical device having a relatively high use frequency (relatively long access request queue) among a plurality of logical devices associated with the access destination LU.
- the logical device for emphasizing response time may be a logical device with a relatively low use frequency (access request queue is relatively short) among a plurality of logical devices associated with an access destination LU.
- the query execution unit 124 may manage response performance for each logical device.
- “response performance” is access response performance and depends on the performance of the hardware (for example, a communication interface device or a storage apparatus) that is the basis of the logical device.
- the memory 110 may store management information representing response performance for each logical device.
- the query execution unit 124 determines that the access use is a pattern that places importance on the number of accesses per unit time, the query execution unit 124 selects a logical device that emphasizes the number of accesses, and the access use has a pattern that places importance on response time. If it is determined, a logical device for emphasizing response time may be selected.
- the logical device for emphasizing the number of accesses may be a logical device with relatively low response performance among the plurality of logical devices associated with the access destination LU, and the logical device for emphasizing response time is the access destination.
- a logical device with relatively high response performance may be used.
- the computer 100 acquires information on hardware such as a controller and storage device of the storage device associated with the logical device as information on the characteristics of the logical device from the storage device, and the query execution unit 124 executes the query.
- the logical device may be selected based on the information.
- the information acquired from the storage device is information related to the access performance of the storage device, for example. For example, when the access performance of the storage device associated with the logical device A is better than that of the storage device associated with the logical device B, the query execution unit 124 selects the logical device A when performing response time-oriented processing. Access.
- the first case where the number of reads per unit time is to be increased even if the response is slow for each read request, and the faster response for one read request is better.
- the second case if a logical device having a relatively low response performance (hardware performance) or a logical device having a relatively high load is selected at the time of issuing a read request, there is an effect on the performance of the DBMS. It is considered higher than in the first case. According to these modified examples, it can be expected to avoid such a problem.
- the entity that issues the read request is the DBMS.
- a computer program different from the DBMS is executed by the computer, at least one of the above-described embodiments and modified examples. Can be applied.
- a computer receives a data processing request instead of a query (for example, receives a data processing request from an input device or a remote computer), and the computer's processor determines an access application based on the data processing request. Can do.
- the access usage is determined for each processing block in accordance with the query plan of the accepted query.
- the DBMS 120 may receive information on access usage (access usage information) from the outside in units of queries.
- the DBMS 120 (for example, the query execution unit 124) may determine the access usage in units of queries based on the access usage information in units of queries.
- the information receiving unit gives the query usage information to the query execution unit 124 in advance, and the query execution unit 124 But when executing the query, the unit from the given information Identifying that the number of accesses oriented somewhere between, in the execution of the query, may issue an access request by selecting the logical device for the number of accesses oriented per unit of time.
- Application server (hereinafter referred to as AP server) 3502 is connected to a computer (for example, DB server) 100 on which DBMS 120 operates so as to be able to communicate via communication network 3512. Further, the computer 100 is connected to the storage apparatus 150 so as to be able to communicate via the communication networks 180 and 182.
- a user terminal (client terminal) 3501 is connected to an AP server 3502 so as to be able to communicate via a communication network arc 3511.
- the computer 100 executes a DBMS 120 that manages the DB 70.
- the storage device 150 stores the DB 70.
- the AP server 3502 executes an AP (application program) that issues a query to the DBMS 120 executed by the computer 100.
- the user terminal 3501 issues a request to the AP executed by the AP server 3502.
- a plurality of user terminals 3501 or AP servers 3502 may exist.
- the AP server management terminal 3503 is connected to the AP server 3502 via the communication network 3514.
- a computer management terminal (for example, a DB server management terminal) 3504 is connected to the computer 100 via a communication network 3515.
- the storage management terminal 3505 is connected to the storage apparatus 150 via the communication network 3516.
- the AP server management terminal 3503 is a terminal that manages the AP server 3502.
- the computer management terminal 3504 is a terminal that manages the computer 100.
- the storage management terminal 3505 is a terminal that manages the storage apparatus 150.
- a computer administrator or a user may make settings related to the DBMS 120 from the computer management terminal 3504. Note that at least two of the management terminals 3503 to 3505 may be common (integrated). Further, at least two of the communication networks 3511, 3512, 3514, 3515, 3516, and 300 may be common (integrated).
- the user terminal 3501 issues a request (hereinafter referred to as a user request) to the AP server 3502.
- the AP server 3502 generates a query according to the user request received in S121. Then, the generated query is issued to the computer 100.
- the computer 100 accepts a query from the AP server 3502, and executes the accepted query.
- the computer 100 issues a data input / output request (for example, a data read request) necessary for executing the accepted query to the storage apparatus 150.
- the computer 100 may issue a plurality of data input / output requests in parallel in the execution of one query.
- the computer 100 may make the request of S123 in parallel several times in the execution of one query.
- the storage apparatus 150 responds to the computer 100 with respect to the data input / output request issued in S123.
- the storage apparatus 150 may perform the response of S124 a plurality of times in parallel.
- the computer 100 generates a query execution result and transmits it to the AP server 3502.
- the AP server 3502 receives the query execution result. Then, the reply to the user request received in S121 according to the execution result is transmitted to the user terminal 3501.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Operations Research (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Block Address)を含む。ストレージ装置150のコントローラ154は、計算機100から読み出し要求を受けた場合、その読み出し要求から特定される読み出し元領域に基づくHDD156からデータを読み出し、読み出したデータをCM168に格納する。そして、コントローラ154は、CM168からそのデータを計算機100に送信する。
(S121)ユーザ端末3501は、APサーバ3502に要求(以下、ユーザ要求)を発行する。
(S122)APサーバ3502は、S121で受信したユーザ要求に従いクエリを生成する。そして、生成したクエリを計算機100に発行する。
(S123)計算機100は、APサーバ3502からのクエリを受け付け、受け付けたクエリを実行する。計算機100は、受け付けたクエリの実行において必要なデータ入出力要求(例えばデータ読出し要求)をストレージ装置150に発行する。計算機100は、一つのクエリの実行において、複数のデータ入出力要求を並行して発行することがある。そのため、計算機100は、一つのクエリの実行において、S123の要求を複数回並行して行うことがある。
(S124)ストレージ装置150は、S123で発行されたデータ入出力要求について、計算機100に応答する。ストレージ装置150は、S124の応答を複数回並行して行うことがある。
(S125)計算機100は、クエリの実行結果を生成し、APサーバ3502に送信する。
(S126)APサーバ3502は、クエリの実行結果を受信する。そして、該実行結果に従う、S121で受信したユーザ要求に対する回答を、ユーザ端末3501に送信する。
Claims (15)
- 記憶領域を提供しキャッシュメモリを有し読み出し要求に応じて前記記憶領域から前記キャッシュメモリにデータを読み出し前記キャッシュメモリからデータを送信するストレージ装置に接続した計算機であって、
データ処理要求を受け付ける要求受付部と、
前記データ処理要求、又は、前記データ処理要求のアクセス用途に関連する情報を基に、アクセス用途を判定し、前記判定したアクセス用途に応じた論理デバイスを前記記憶領域に割り当てられている複数の論理デバイスから選択し、前記選択した論理デバイスに対して読み出し要求を発行する要求発行部と
を有する計算機。 - クエリプラン生成部を更に有し、
前記記憶領域は、データベースのデータを記憶しており、
前記データ処理要求は、前記データベースへのクエリであり、
前記クエリプラン生成部は、前記受け付けたクエリを処理するために必要なデータベースオペレーションの情報であるクエリプランを生成し、
前記要求発行部が、前記生成したクエリプランに基づいてデータベースオペレーションを実行するためのタスクを動的に生成し、動的に生成された複数のタスクを並列に実行し、タスクの実行の際必要に応じて、前記クエリプランを基にアクセス用途を判定し、前記判定したアクセス用途に応じた論理デバイスを前記記憶領域に割り当てられている複数の論理デバイスから選択し、且つ、前記選択した論理デバイスに対して読み出し要求を発行する、
請求項1記載の計算機。 - 前記複数の論理デバイスが、シーケンシャルアクセス用の論理デバイスとランダムアクセス用の論理デバイスとを含み、
前記要求発行部は、
アクセス用途がシーケンシャルアクセスかランダムアクセスかを判定し、
シーケンシャルアクセスと判定した場合は前記シーケンシャルアクセス用の論理デバイスを選択し、
ランダムアクセスと判定した場合は前記ランダムアクセス用の論理デバイスを選択する、
請求項1記載の計算機。 - 前記シーケンシャルアクセス用の論理デバイスと前記ランダムアクセス用の論理デバイスのうち少なくとも前記シーケンシャルアクセス用の論理デバイスが複数である、
請求項3記載の計算機。 - 前記ストレージ装置が、前記選択した論理デバイスに関連付いたパスを介して受信した読み出し要求の数が許容度以下の場合に前記パスを介して受信した複数の前記読み出し要求に従う読み出しのアクセスパターンがシーケンシャルアクセスである否かを判定し、その判定結果が肯定的の場合に前記複数の読み出し要求で指定されたアドレスの先のアドレスのデータを前記記憶領域から前記キャッシュメモリに読み出す先読み処理を行うようになっており、
前記シーケンシャルアクセス用の論理デバイスの数は、前記許容度と、前記要求発行部が発行する読み出し要求の最大多重度とに基づいている、
請求項4記載の計算機。 - 前記要求発行部が、前記アクセス用途がシーケンシャルアクセスと判定した場合、2以上の読み出し要求がマージされた読み出し要求を発行する
請求項3記載の計算機。 - 前記要求発行部は、前記複数の論理デバイスの各々の使用頻度を管理するようになっており、
前記要求発行部が、前記アクセス用途に応じた論理デバイスが2以上存在する場合、前記2以上の論理デバイスのうち、使用頻度が相対的に少ない論理デバイスを選択する、
請求項1記載の計算機。 - 前記複数の論理デバイスは、アクセス数重視用の論理デバイスと、応答時間重視用の論理デバイスとを含み、
前記要求発行部は、
アクセス用途が、単位時間あたりの読み出し数を重視するパターンであるか、1つの読み出し要求に対する応答時間を重視するパターンであるかを判定し、
単位時間あたりの読み出し数を重視するパターンであると判定した場合は、前記アクセス数重視用の論理デバイスを選択し、
1つの読み出し要求に対する応答時間を重視するパターンであると判定した場合は、前記応答時間重視用の論理デバイスを選択する、
請求項1記載の計算機。 - 前記要求発行部は、前記複数の論理デバイスの各々の使用頻度を管理するようになっており、
前記アクセス数重視用の論理デバイスは、前記複数の論理デバイスにおいて使用頻度が相対的に多い論理デバイスであり、
前記応答時間重視用の論理デバイスは、前記複数の論理デバイスにおいて使用頻度が相対的に少ない論理デバイスである、
請求項8記載の計算機。 - 前記要求発行部は、前記複数の論理デバイスの各々の応答性能を管理するようになっており、
前記アクセス数重視用の論理デバイスは、前記複数の論理デバイスにおいて応答性能が相対的に低い論理デバイスであり、
前記応答時間重視用の論理デバイスは、前記複数の論理デバイスにおいて応答性能が相対的に高い論理デバイスである、
請求項8記載の計算機。 - 記憶領域を提供しキャッシュメモリを有し読み出し要求に応じて前記記憶領域から前記キャッシュメモリにデータを読み出し前記キャッシュメモリからデータを送信するストレージ装置からデータを読み出すデータ読み出し方法であって、
(A)データ処理要求を受け付け、
(B)前記データ処理要求、又は、前記データ処理要求のアクセス用途に関する情報を基にアクセス用途を判定し、
(C)前記判定したアクセス用途に応じた論理デバイスを前記記憶領域に割り当てられている複数の論理デバイスから選択し、
(D)前記選択した論理デバイスに対して読み出し要求を発行する、
データ読み出し方法。 - (A)として、前記データ処理要求として、前記記憶領域に格納されているデータベースへのクエリを受け付け、
前記受け付けたクエリを処理するために必要なデータベースオペレーションの情報であるクエリプランを生成し、
前記生成したクエリプランに基づいてデータベースオペレーションを実行するためのタスクを動的に生成し、動的に生成された複数のタスクを並列に実行し、タスクの実行の際必要に応じて、(B)として、前記クエリプランを基にアクセス用途を判定し、(C)として、前記判定したアクセス用途に応じた論理デバイスを前記記憶領域に割り当てられている複数の論理デバイスから選択し、且つ、(D)として、前記選択した論理デバイスに対して読み出し要求を発行する、
請求項11記載のデータ読み出し方法。 - 前記複数の論理デバイスが、シーケンシャルアクセス用の論理デバイスとランダムアクセス用の論理デバイスとを含み、
(B)として、アクセス用途がシーケンシャルアクセスかランダムアクセスかを判定し、
(C)として、シーケンシャルアクセスと判定した場合は前記シーケンシャルアクセス用の論理デバイスを選択し、ランダムアクセスと判定した場合は前記ランダムアクセス用の論理デバイスを選択する、
請求項11記載のデータ読み出し方法。 - 前記複数の論理デバイスの各々の使用頻度を管理し、
(C)として、前記アクセス用途に応じた論理デバイスが2以上存在する場合、前記2以上の論理デバイスのうち、使用頻度が相対的に少ない論理デバイスを選択する、
請求項11記載のデータ読み出し方法。 - 前記複数の論理デバイスは、アクセス数重視用の論理デバイスと、応答時間重視用の論理デバイスとを含み、
(B)として、アクセス用途が、単位時間あたりの読み出し数を重視するパターンであるか、1つの読み出し要求に対する応答時間を重視するパターンであるかを判定し、
(C)として、単位時間あたりの読み出し数を重視するパターンであると判定した場合は、前記アクセス数重視用の論理デバイスを選択し、1つの読み出し要求に対する応答時間を重視するパターンであると判定した場合は、前記応答時間重視用の論理デバイスを選択する、
請求項11記載のデータ読み出し方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015533867A JP5999536B2 (ja) | 2013-08-29 | 2013-08-29 | 計算機及びデータ読み出し方法 |
PCT/JP2013/073182 WO2015029188A1 (ja) | 2013-08-29 | 2013-08-29 | 計算機及びデータ読み出し方法 |
US14/904,813 US10242053B2 (en) | 2013-08-29 | 2013-08-29 | Computer and data read method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/073182 WO2015029188A1 (ja) | 2013-08-29 | 2013-08-29 | 計算機及びデータ読み出し方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015029188A1 true WO2015029188A1 (ja) | 2015-03-05 |
Family
ID=52585804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/073182 WO2015029188A1 (ja) | 2013-08-29 | 2013-08-29 | 計算機及びデータ読み出し方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10242053B2 (ja) |
JP (1) | JP5999536B2 (ja) |
WO (1) | WO2015029188A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018173786A (ja) * | 2017-03-31 | 2018-11-08 | 日本電気株式会社 | ストレージシステム、ストレージ管理装置、ストレージ管理方法、及びプログラム |
JP2021157288A (ja) * | 2020-03-25 | 2021-10-07 | 富士通株式会社 | 情報処理システム、情報処理方法、情報処理プログラム及び情報処理装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6690829B2 (ja) * | 2015-08-28 | 2020-04-28 | 国立大学法人 東京大学 | 計算機システム、省電力化方法及び計算機 |
EP3565221B1 (de) * | 2018-04-30 | 2020-10-28 | Siemens Aktiengesellschaft | Verfahren zur registrierung von industriellen automatisierungsgeräten oder kommunikationsgeräten zugeordneten geräte-namen in einem namensdienst-system und kontroll-komponente |
KR102518095B1 (ko) | 2018-09-12 | 2023-04-04 | 삼성전자주식회사 | 스토리지 장치 및 시스템 |
CN114201238B (zh) * | 2022-02-16 | 2022-05-10 | 深圳市紫川软件有限公司 | 一种基于大数据的智慧企业软件组件管理系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004302751A (ja) * | 2003-03-31 | 2004-10-28 | Hitachi Ltd | 計算機システムの性能管理方法、および、記憶装置の性能を管理する計算機システム |
JP2006127418A (ja) * | 2004-11-01 | 2006-05-18 | Hitachi Ltd | 計算機システム、計算機、データベースアクセス方法及びデータベースシステム |
WO2011099114A1 (ja) * | 2010-02-09 | 2011-08-18 | 株式会社ターボデータラボラトリー | ハイブリッド型データベースシステム及びその動作方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0776941B2 (ja) | 1989-09-16 | 1995-08-16 | 富士通株式会社 | データ先読み制御方式 |
DE60327999D1 (de) * | 2002-03-15 | 2009-07-30 | Vertex Pharma | Azolylaminoazine als inhibitoren von proteinkinasen |
JP2003330762A (ja) * | 2002-05-09 | 2003-11-21 | Hitachi Ltd | ストレージシステムの制御方法、ストレージシステム、スイッチ、及びプログラム |
US6870934B2 (en) * | 2002-07-15 | 2005-03-22 | Visteon Global Technologies, Inc. | Audio loudspeaker detection using back-EMF sensing |
US7346740B2 (en) * | 2002-11-01 | 2008-03-18 | Seagate Technology Llc | Transferring speculative data in lieu of requested data in a data transfer operation |
US7784557B2 (en) * | 2003-08-11 | 2010-08-31 | Planetair Turf Products, Llc | Soil aeration device |
JP4480479B2 (ja) * | 2004-06-15 | 2010-06-16 | 株式会社日立製作所 | ストレージシステム |
JP4579000B2 (ja) * | 2005-02-14 | 2010-11-10 | 株式会社日立製作所 | 計算機システムにおけるデータ配置設定 |
JP4611830B2 (ja) * | 2005-07-22 | 2011-01-12 | 優 喜連川 | データベース管理システム及び方法 |
JP2008123132A (ja) * | 2006-11-09 | 2008-05-29 | Hitachi Ltd | 記憶制御装置及び記憶制御装置の論理ボリューム形成方法 |
-
2013
- 2013-08-29 US US14/904,813 patent/US10242053B2/en active Active
- 2013-08-29 WO PCT/JP2013/073182 patent/WO2015029188A1/ja active Application Filing
- 2013-08-29 JP JP2015533867A patent/JP5999536B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004302751A (ja) * | 2003-03-31 | 2004-10-28 | Hitachi Ltd | 計算機システムの性能管理方法、および、記憶装置の性能を管理する計算機システム |
JP2006127418A (ja) * | 2004-11-01 | 2006-05-18 | Hitachi Ltd | 計算機システム、計算機、データベースアクセス方法及びデータベースシステム |
WO2011099114A1 (ja) * | 2010-02-09 | 2011-08-18 | 株式会社ターボデータラボラトリー | ハイブリッド型データベースシステム及びその動作方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018173786A (ja) * | 2017-03-31 | 2018-11-08 | 日本電気株式会社 | ストレージシステム、ストレージ管理装置、ストレージ管理方法、及びプログラム |
JP2021157288A (ja) * | 2020-03-25 | 2021-10-07 | 富士通株式会社 | 情報処理システム、情報処理方法、情報処理プログラム及び情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US10242053B2 (en) | 2019-03-26 |
JP5999536B2 (ja) | 2016-09-28 |
US20160171048A1 (en) | 2016-06-16 |
JPWO2015029188A1 (ja) | 2017-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10042560B2 (en) | Method and storage array for processing a write data request | |
US20190018605A1 (en) | Use of predefined block pointers to reduce duplicate storage of certain data in a storage subsystem of a storage server | |
EP1837751B1 (en) | Storage system, storage extent release method and storage apparatus | |
JP4438457B2 (ja) | 記憶領域割当方法、システム及び仮想化装置 | |
JP5999536B2 (ja) | 計算機及びデータ読み出し方法 | |
US8650381B2 (en) | Storage system using real data storage area dynamic allocation method | |
US20160179581A1 (en) | Content-aware task assignment in distributed computing systems using de-duplicating cache | |
WO2014087518A1 (ja) | ネットワークシステム及びその運用方法 | |
US20080059752A1 (en) | Virtualization system and region allocation control method | |
US8751547B2 (en) | Multiple file system and/or multi-host single instance store techniques | |
JP2004070403A (ja) | ファイル格納先ボリューム制御方法 | |
US8135918B1 (en) | Data de-duplication for iSCSI | |
JP2004295790A (ja) | 記憶装置のキャッシュ管理方法 | |
JP2008181243A (ja) | ストレージシステムのキャッシュパーティション領域の設定を制御するデータベース管理システム | |
JP4285058B2 (ja) | ネットワーク管理プログラム、管理計算機及び管理方法 | |
US20170177489A1 (en) | Data deduplication system and method in a storage array | |
JP6168635B2 (ja) | データベース管理システム、計算機、データベース管理方法 | |
JP2005228278A (ja) | 記憶領域の管理方法、管理装置及び管理プログラム | |
JP2005165852A (ja) | ストレージシステム、ストレージ制御装置、ストレージシステムの制御方法 | |
JP4258768B2 (ja) | ファイル配置システム | |
US9870152B2 (en) | Management system and management method for managing data units constituting schemas of a database | |
US11709839B2 (en) | Database system and query execution method | |
US8055815B2 (en) | Optimal paths with SCSI I/O referrals | |
KR101754713B1 (ko) | 비대칭 분산 파일 시스템, 연산 분배 장치 및 방법 | |
WO2016051593A1 (ja) | 計算機システム |
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: 13892519 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2015533867 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14904813 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: 13892519 Country of ref document: EP Kind code of ref document: A1 |