摘要 |
According to one embodiment, a translation component is configured to operate on document encoded data to translate the document encoded data into a canonical format comprising a plurality of canonical types that fold together into a byte stream. The translation component is configured to accept any storage format of data (e.g., column store, row store, LSM tree, etc. and/or data from any storage engine, WIREDTIGER, MMAP, AR tree, Radix tree, etc.) and translate that data into a byte stream to enable efficient comparison. When executing searches and using the translated data to provide comparisons there is necessarily a trade-off based on the cost of translating the data and how much the translated data can be leveraged to increase comparison efficiency. |
主权项 |
1. A database system comprising:
at least one processor configured to execute a plurality of system components, wherein the system components comprise: a monitor component configured to determine an expected set of operations to be performed on a portion of a distributed database; a data format selection component configured to select, based on at least one characteristic of the expected set of operations, a data format for the portion of the distributed database and an associated storage engine from a plurality of storage engines and data formats; at least one storage API for mapping a data request to the associated storage engine that executes the data request on the portion of the distributed database in the selected data format;a translation component configured to:
translate selected data, including at least index data, in the selected data format into a canonical byte stream format for in memory comparison;a database manager configured to:
receive requests for database operations from client systems and respond to the data requests; and execute data comparison operations against the canonical format byte stream to respond to at least some of the requests for database operations. |