System and method for enhancing storage performance in analytical database applications
First Claim
Patent Images
1. A database system comprising:
- a first electronic storage that holds a complete copy of a database, the first electronic storage corresponding to an external storage system having a first data transfer rate to a database server;
a second electronic storage that is separate from the first electronic storage, the second electronic storage holding at least a portion of the database, the second electronic storage corresponding to a local storage of the database server, the second electronic storage having a second data transfer rate to the database server, the second data transfer rate being faster than the first data transfer rate; and
the database server configured to;
receive a database query;
read data requested in the database query in parallel from the first electronic storage and the second electronic storage;
responsive to receipt of the database query, determine a size of a first portion of a set of result data for the database query from the first electronic storage and a size of a second portion of the set of result data for the database query from the second electronic storage based on a data throughput between the database server and the first electronic storage and a data throughput between the database server and the second electronic storage such that a retrieval, by the database server, of the first portion from the first electronic storage and the second portion from the second electronic storage in parallel takes approximately the same time;
configure a first request for the first portion and a second request for the second portion;
send the first request to the first electronic storage and the second request to the second electronic storage, retrieve the first portion from the first electronic storage and the second portion from the second electronic storage in parallel and send a response to the database query based on the first portion and the second portion.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method for enhancing data throughput in data warehousing environments by connecting multiple servers having local storages with designated external storage systems, such as, for example, those provided by SANs. The system and method may preserve a full reference copy of the data in a protected environment (e.g., on the external storage system) that is fully available. The system and method may enhance overall I/O potential performance and reliability for efficient and reliable system resource utilization.
35 Citations
18 Claims
-
1. A database system comprising:
-
a first electronic storage that holds a complete copy of a database, the first electronic storage corresponding to an external storage system having a first data transfer rate to a database server; a second electronic storage that is separate from the first electronic storage, the second electronic storage holding at least a portion of the database, the second electronic storage corresponding to a local storage of the database server, the second electronic storage having a second data transfer rate to the database server, the second data transfer rate being faster than the first data transfer rate; and the database server configured to; receive a database query; read data requested in the database query in parallel from the first electronic storage and the second electronic storage; responsive to receipt of the database query, determine a size of a first portion of a set of result data for the database query from the first electronic storage and a size of a second portion of the set of result data for the database query from the second electronic storage based on a data throughput between the database server and the first electronic storage and a data throughput between the database server and the second electronic storage such that a retrieval, by the database server, of the first portion from the first electronic storage and the second portion from the second electronic storage in parallel takes approximately the same time; configure a first request for the first portion and a second request for the second portion; send the first request to the first electronic storage and the second request to the second electronic storage, retrieve the first portion from the first electronic storage and the second portion from the second electronic storage in parallel and send a response to the database query based on the first portion and the second portion. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A database system comprising:
-
a database server configured to retrieve data of a database from a first electronic storage and a second electronic storage, the first electronic storage separate from the second electronic storage, the first electronic storage holding a complete copy of the database, and the second electronic storage holding at least a portion of the database, the first electronic storage corresponding to an external storage system having a first data transfer rate to a database server, the second electronic storage corresponding to a local storage of the database server, the second electronic storage having a second data transfer rate to the database server, the second data transfer rate being faster than the first data transfer rate; the database server configured to; receive a database query; read data requested in the database query in parallel from the first electronic storage and the second electronic storage; responsive to receipt of the database query, determine a size of a first portion of a set of result data for the database query from the first electronic storage and a size of a second portion of the set of result data for the database query from the second electronic storage based on a data throughput between the database server and the first electronic storage and a data throughput between the database server and the second electronic storage such that a retrieval, by the database server, of the first portion from the first electronic storage and the second portion from the second electronic storage in parallel takes approximately the same time; configure a first request for the first portion and a second request for the second portion; send the first request to the first electronic storage and the second request to the second electronic storage, retrieve the first portion from the first electronic storage and the second portion from the second electronic storage in parallel and send a response to the database query based on the first portion and the second portion. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for retrieving data from a database in response to a database query comprising:
-
receiving, by a database server, a database query; configuring a first request for a first portion of a set of result data for the database query from a first electronic storage that holds a complete copy of the database, the first electronic storage corresponding to an external storage system having a first data transfer rate to a database server; configuring a second request for a second portion of the set of result data for the database query from a second electronic storage that is separate from the first electronic storage, the second electronic storage holding at least a portion of the database, the second electronic storage corresponding to a local storage of the database server, the second electronic storage having a second data transfer rate to the database server, the second data transfer rate being faster than the first data transfer rate; responsive to receipt of the database query, determining a size of the first portion and a size of the second portion based on a data throughput between the database server and the first electronic storage and a data throughput between the database server and the second electronic storage such that a retrieval of the first portion from the first electronic storage and the second portion from the second electronic storage in parallel takes approximately the same time; sending the first request to the first electronic storage and the second request to the second electronic storage, retrieving the first portion from the first electronic storage and the second portion from the second electronic storage in parallel, and sending a response to the database query based on the first portion and the second portion. - View Dependent Claims (15, 16, 17, 18)
-
Specification