Schema evolution in multi-tenant environment
First Claim
1. A method comprising:
- receiving primary data from a first tenant in a computer network, the primary data formatted based on a first version of a schema for a database;
obtaining a schema definition for the first version of the schema, the schema definition providing a set of integrity constraints imposed on the database;
parsing, using at least one hardware processor, the primary data, the parsing including storing a schema version number for the first version of the schema; and
indexing, using the at least one hardware processor, the primary data, the indexing comprising;
obtaining, using the schema version number for the first version of the schema, a schema definition for a most recent version of the schema, the schema definition for the most recent version of the schema being obtained prior to obtaining the schema definition for older versions of the schema;
applying schema evolution to the primary data by applying one or more transforms to the primary data, the one or more transforms defining one or more rules that, when executed, transform the primary data into the most recent version of the schema, the one or more transforms created using the schema definition for the most recent version of the schema and the schema definition for the first version of the schema; and
indexing, using the at least one hardware processor, the converted primary data.
2 Assignments
0 Petitions
Accused Products
Abstract
In an example embodiment, primary data is received from a first tenant in a computer network, the primary data formatted based on a first version of a schema. Then a schema definition for the first version of the schema is obtained. The primary data is then parsed, the parsing including storing a schema version number for the first version of the schema. The primary data is indexed, by obtaining, using the schema version number for the first version of the schema, a schema definition for a most recent version of the schema; applying schema evolution to the primary data by applying one or more transforms to the primary data, the one or more transforms created using the schema definition for the first and most recent versions of the schema, causing the primary data to be converted to the most recent version of the schema; and indexing the converted primary data.
36 Citations
20 Claims
-
1. A method comprising:
-
receiving primary data from a first tenant in a computer network, the primary data formatted based on a first version of a schema for a database; obtaining a schema definition for the first version of the schema, the schema definition providing a set of integrity constraints imposed on the database; parsing, using at least one hardware processor, the primary data, the parsing including storing a schema version number for the first version of the schema; and indexing, using the at least one hardware processor, the primary data, the indexing comprising; obtaining, using the schema version number for the first version of the schema, a schema definition for a most recent version of the schema, the schema definition for the most recent version of the schema being obtained prior to obtaining the schema definition for older versions of the schema; applying schema evolution to the primary data by applying one or more transforms to the primary data, the one or more transforms defining one or more rules that, when executed, transform the primary data into the most recent version of the schema, the one or more transforms created using the schema definition for the most recent version of the schema and the schema definition for the first version of the schema; and indexing, using the at least one hardware processor, the converted primary data. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a distributed database; an index and search manager executable on one or more hardware processors, the index and search manager comprising; a versioning control component configured to; receive primary data from a first tenant in as computer network, the primary data formatted based on a first version of a schema for a database; obtain a schema definition for the first version of the schema, the schema definition providing a set of integrity constraints imposed on the database, the schema definition for the most recent version of the schema being obtained prior to obtaining the schema definition for older versions of the schema; and store a schema version number for the first version of the schema; a record parser configured to obtain, using the schema version number for the first version of the schema, a schema definition for a most recent version of the schema, at transformation component configured to apply schema evolution to the primary data by applying one or more transforms to the primary data, the one or more transforms defining one or more rules that, when executed, transform the primary data into the most recent version of the schema, the one or more transforms created using the schema definition for the most recent version of the schema and the schema definition for the first version of the schema; and an indexer configured to index the converted primary data. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A non-transitory machine readable storage medium comprising instructions, which when implemented by one or more machines, cause the one or more machines to perform operations comprising:
-
receiving primary data from a first tenant in a computer network, the primary data formatted based on a first version of a schema for a database; obtaining a schema definition for the first version of the schema, the schema definition providing a set of integrity constraints imposed on the database; parsing, using at least one hardware processor, the primary data, the parsing including storing a schema version number for the first version of the schema, and indexing, using the at least one hardware processor, the primary data, the indexing comprising; obtaining, using the schema version number for the first version of the schema, a schema definition for a most recent version of the schema, the schema definition for the most recent version of the schema being obtained prior to obtaining the schema definition for older versions of the schema; applying schema evolution to the primary data by applying one or more transforms to the primary data, the one or more transforms defining one or more rules that, when executed, transform the primary data into the most recent version of the schema, the one or more transforms created using the schema definition for the most recent version of the schema and the schema definition for the first version of the schema; and indexing, using the at least one hardware processor, the converted primary data. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification