METHOD AND APPARATUS FOR DATABASE
First Claim
1. A system for providing services to a plurality of users, the system comprised of:
- a nonvolatile storage, the nonvolatile storage including a plurality of databases, each database in the plurality of databases corresponding to a single entity;
a computer, the computer including a volatile memory and a controller;
a communications network, the communications network coupling the storage and the computer in communication; and
wherein the controller for performing;
receiving a signal over the communications network, the signal comprising a request for data relating to a first entity;
retrieving a database from the plurality of databases in the nonvolatile storage into the memory over the communications network, the database comprising a database for the first entity; and
performing at least one operation on the database in the volatile memory; and
generating a second signal for transmission over the communications network, the second signal responsive to the request for data.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for representing a database in a computer readable medium. Accessing a first table in the database. The first table has rows of data, each row of data having one or more columns. Storing a first representation of the first table in a volatile computer memory in a column-oriented format, the column-oriented format comprising at least one B-tree for at least one column, wherein the B-tree is composed of at least one array and the at least one B-tree includes references to a plurality of arrays, each array of the plurality of arrays comprised of data corresponding to the rows of one column of the table, wherein the storing further comprising storing data corresponding to the rows in a packed format. Storing a second representation of the database on the computer-readable medium, the second representation substantially identical to the first representation.
61 Citations
29 Claims
-
1. A system for providing services to a plurality of users, the system comprised of:
-
a nonvolatile storage, the nonvolatile storage including a plurality of databases, each database in the plurality of databases corresponding to a single entity; a computer, the computer including a volatile memory and a controller; a communications network, the communications network coupling the storage and the computer in communication; and wherein the controller for performing; receiving a signal over the communications network, the signal comprising a request for data relating to a first entity; retrieving a database from the plurality of databases in the nonvolatile storage into the memory over the communications network, the database comprising a database for the first entity; and performing at least one operation on the database in the volatile memory; and generating a second signal for transmission over the communications network, the second signal responsive to the request for data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for providing services to a plurality of users, the system comprised of:
-
a computer, the computer including a volatile memory and a controller; a communications network, the communications network coupling the computer in communication with resources; and wherein the controller for performing; receiving a first signal over the communications network from a second computer, the first signal comprising a request for data relating to a first entity; transmitting a second signal over the communications network to a third computer, the second signal comprising a request for a database; receiving a third signal from the third computer, the third signal comprising a database; loading the database into the volatile memory in a first representation that is substantially identical to the format to a second representation of the database in the third signal; performing at least one operation on the database in the volatile memory; and generating a third signal for transmission over the communications network to the second computer, the third signal responsive to the request for data. - View Dependent Claims (11, 12)
-
-
13. A method for representing a database in a computer readable medium, the method comprising:
-
accessing a first table in the database, the first table having a plurality of rows of data, each row of data having one or more columns; storing a first representation of the first table in a volatile computer memory in a column-oriented format, the column-oriented format comprising at least one B-tree for at least one column, wherein the B-tree is composed of at least one array and the at least one B-tree includes references to a plurality of arrays, each array of the plurality of arrays comprised of data corresponding to the rows of one column of the table, wherein the storing further comprising storing data corresponding to the rows in a packed format; and storing a second representation of the database on the computer-readable medium, the second representation substantially identical to the first representation. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of extending a definition of a first variable used in a first computer program, wherein the first computer program is encoded in a programming language, and the first computer program is stored in a computer-readable medium, the method comprising during execution of the first computer program on a computer system:
-
determining from the definition of the first variable a schema, wherein the schema describes a plurality of columns of a table of a database; defining a first representation of the first table in a computer-readable memory coupled to the first computer, the first representation comprising a column-oriented format further comprising at least one B-tree for at least one column, wherein the B-tree is composed of at least one array and the at least one B-tree includes references to a plurality of arrays, each array of the plurality of arrays comprised of data corresponding to the rows of one column of the table, wherein the storing further comprising storing data corresponding to the rows in a packed format; and wherein the first representation supports a database transaction on the table indicated by the first computer program, and wherein the first representation provides database atomicity, consistency, isolation and durability guarantees on completion of the database transaction. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
-
29. A method of searching a database stored in a computer readable medium, the method comprising, the database comprised of a first table, the first table having a plurality of rows of data, each row of data having one or more columns:
-
receiving a signal, the signal comprising a search, the search comprised of at least two criteria for searching the database; constructing a zig-zag loop for performing the search; and executing the zig-zag loop on the database to identify a plurality of rows matching the at least two criteria.
-
Specification