摘要:
Pursuant to receipt of a data modification command or statement, such as an Update command, it is determined which fields in a data structure, such as a UDT, computed column, indexed view, or index, for example, will be changed as a result of the command. Only those fields that are affected by the command will be changed. Thus, changes are propagated to only to those dependent data structures whose content is being modified. Tree representations are used to facilitate the determination as to whether a subfield in a hierarchy is changed.
摘要:
Several embodiments of the present invention are directed to systems and methods for extending the UDT framework of an extended relational data store (ERDS) to include support for unordered collections (multisets) and ordered collection (lists). More specifically, several embodiments of the present invention use an UDT infrastructure, CLR generics, and a new UNNEST operator to create and utilize a special type abstraction for collections that is simultaneously a scalar and a relation. As a scalar, this collection type can be processed by all parts of the data store engine that understand scalars (including but not limited to the client stack) and, as a relation, this collection type is queriable like any other type of relation.
摘要:
Pursuant to receipt of a data modification command or statement, such as an Update command, it is determined which fields in a data structure, such as a UDT, computed column, indexed view, or index, for example, will be changed as a result of the command. Only those fields that are affected by the command will be changed. Thus, changes are propagated to only to those dependent data structures whose content is being modified. Tree representations are used to facilitate the determination as to whether a subfield in a hierarchy is changed.
摘要:
Architecture that provides the capability to automatically (e.g., dynamically) reorganize (repartition) an existing partition by dividing (splitting) or recombining (merging) logical databases. This reorganization can be performed to logical databases belonging to the same customer, and based on the partitioning of the tables in these databases. This can include not only splitting secondary replicas of a partition or merging secondary replicas of the partition, but also splitting off secondary replicas of the partition to create a new partition and merging two partitions into one partition. Moreover, these operations can occur while the logical databases are accepting workload (online).
摘要:
Architecture that eliminates the need for on-disk full backups of data retaining only changes that have occurred, in a separate table. Thus, the architecture provides for incremental recovery of incremental changes in a relational database (e.g., SQL). The architecture provides improved recovery time and recovery point objectives. By using the incremental capture of changed data (e.g., in an XML format), the capability is provided to capture schema changes, query the incremental change data and efficiently restore user data to an earlier point-in-time state. Changes (e.g., insert, update and delete operations) are tracked (e.g., continuously) by a set of triggers and the incrementally captured changed rows are inserted in a data capture table (a differential change “delta” table) in a human-readable format (e.g., XML). Rollback is also provided.
摘要:
Methods and computer-readable media for binding a query containing one or more multi-part identifiers in a database. An attempt is made to bind a multi-part identifier that has at least one part to any data in a database that corresponds to the at least one part. A score that is proportional to the number of parts that bind successfully in each multi-part identifier binding attempt is generated for each unsuccessful binding attempt. A result is outputted if one successful multi-part identifier binding occurred. A first error message corresponding to the multi-part identifier binding attempt having a highest score is outputted if no successful bindings occurred. A second error message is outputted if more than one successful multi-part identifier binding occurred.