Patent Document ID: 8943100
Application ID: 13800568

Base Claim:
1. A method for storing data in a relational database system using a processor, the method comprising: assigning a collection of values to a structure dictionary, wherein each of the values represents the value of a row for an attribute and has a unique ordinal number within the collection, and wherein the structure dictionary contains structures defined based on at least one of interaction with a user of the system via an interface, automatic detection of structures occurring in data, automatic detection of frequencies of values occurring in data, analysis of a history of queries, and predetermined information about structures relevant to data content that is stored in the system; for each structure in the structure dictionary, forming a structure match list from ordinal numbers of values matching the structure, and a structure sub-collection from values matching the structure, using the processor; forming an outlier match list from ordinal numbers of values that are not null and do not match any structure in the structure dictionary, and an outlier sub-collection from values that are not null and do not match any structure in the structure dictionary, using the processor; and storing the collection of values in the relational database in a form of structure match lists, structure sub-collections, outlier match list and outlier sub-collection.

---

Claim 12:
12. The method according to claim 1 , wherein the structure dictionary is modifiable and further comprising at least one of adding to and modifying a structure in the structure dictionary, and wherein at least one of the addition or modification is immediately applied and all collections of values are re-stored using the modified structure dictionary, and the addition or modification does not change the already existing collections of values but it applies to collections of values corresponding to values being inserted to or updated in the relational database system after the modification; evaluating whether to apply the modification of the structure dictionary to re-form particular already existing collections of values based on a plurality of criteria including at least one of minimizing the cost of storing data in a form of the structure sub-collections corresponding to the added or the modified structures and minimizing the cost of re-storing each of the already existing collections according to the modified structures; and providing an interface to a user of the relational database system, the interface reporting an estimated cost of storing data in a form of the structure sub-collections corresponding to the added or the modified structures and the estimated cost of re-storing each of the already existing collections of values according to modified structures, the user determining whether to apply the modified structure dictionary to start re-storing the collections of values.