Patent ID: 8631031

Claim:
A method of querying a database comprising: generating a sparse array having a set of values for a first axis, a set of values for a second axis, and a set of tuples, each tuple corresponding to an array value associated with a first axis value and a second axis value; identifying a set of first values corresponding to a range of attributes for the first axis; identifying a set of second values corresponding to a range of attributes for the second axis; storing, for each relation between a first axis value and a second axis value, the array value in a tuple; identifying an array operation, the generated sparse array responsive to the identified array operation; invoking an algebraic engine for performing the identified array operation; defining a database as a set of tables, each table in the set of tables being a sparse array having a first axis and a second axis for associating a pair of values with a relation value, the relation value defining an association between the pair of values; and overloading an operator of the algebraic engine for defining the identified array operation, the overload corresponding to a type of the array values.