摘要:
A method and system for creating an index for a database table of records in a computer environment having a plurality of processing units wherein each processing unit has access to the database table. The method first determines partition delimiters wherein each partition delimiter separates the database table into non-overlapping partitions of records. Each of these partitions is dedicated to one processing unit for index creation. Next, each processing unit independently creates a sub-index, i.e., different processing units create at least two sub-indexes. Last, the method merges the sub-indexes together to create a final index related to the database table.
摘要:
A method and system for fragment-based serialization places one or more object members in fragments. Fragments may comprise a header and a payload. A header can provide useful information about the fragment, such as an indication of fragment type and an indication of fragment length. A payload may comprise one or more members of an object. Primitive members may be stored in a Binary Fragment with a record format payload. LOB and FS members may be stored in fragments that have a Value Type field for setting forth additional properties of the fragment. Collections may be stored in a series of fragments, a first fragment to indicate a start of a collection, one or more second fragments to serialize collection elements, and a Terminator Fragment to indicate the end of a collection. Fragment-serialized objects minimize storage overhead while providing fast instantiation and low-cost location and updating.
摘要:
A method and system for fragment-based serialization places one or more object members in fragments. Fragments may comprise a header and a payload. A header can provide useful information about the fragment, such as an indication of fragment type and an indication of fragment length. A payload may comprise one or more members of an object. Primitive members may be stored in a Binary Fragment with a record format payload. LOB and FS members may be stored in fragments that have a Value Type field for setting forth additional properties of the fragment. Collections may be stored in a series of fragments, a first fragment to indicate a start of a collection, one or more second fragments to serialize collection elements, and a Terminator Fragment to indicate the end of a collection. Fragment-serialized objects minimize storage overhead while providing fast instantiation and low-cost location and updating.
摘要:
A method and system for fragment-based serialization places one or more object members in fragments. Fragments may comprise a header and a payload. A header can provide useful information about the fragment, such as an indication of fragment type and an indication of fragment length. A payload may comprise one or more members of an object. Primitive members may be stored in a Binary Fragment with a record format payload. LOB and FS members may be stored in fragments that have a Value Type field for setting forth additional properties of the fragment. Collections may be stored in a series of fragments, a first fragment to indicate a start of a collection, one or more second fragments to serialize collection elements, and a Terminator Fragment to indicate the end of a collection. Fragment-serialized objects minimize storage overhead while providing fast instantiation and low-cost location and updating.
摘要:
Aspects of the subject matter described herein relate to optimized reverse key indexes. In aspects, a dispersion function disperses index values such that they are distributed across multiple pages of an index. The dispersion function utilizes a dispersion factor that indicates to what extent the index values are dispersed. Because the index values are dispersed, contention regarding inserts may be reduced or eliminated and other advantages realized.
摘要:
Various technologies and techniques are disclosed for efficiently processing DML SQL statements through minimal logging and optimized insertions. Rows are inserted into a table in a database in a sorted order. When an insertion of a particular row into the table causes a page split and a new page created during the page split is empty, the new page is locked until an end of a transaction associated with the insertion is completed. When the page split is caused by appending monotonically increasing values at an end of the table, the sorted order will guarantee that the new page is empty. Minimal logging is performed. When the transaction associated with the insertion is completed, a forced checkpoint is performed.
摘要:
Aspects of the subject matter described herein relate to optimized reverse key indexes. In aspects, a dispersion function disperses index values such that they are distributed across multiple pages of an index. The dispersion function utilizes a dispersion factor that indicates to what extent the index values are dispersed. Because the index values are dispersed, contention regarding inserts may be reduced or eliminated and other advantages realized.
摘要:
Methods, systems, and computer-readable media of columnar storage of a database index are disclosed. A particular columnar index includes a column store that stores rows of the columnar index in a column-wise fashion and a delta store that stores rows of the columnar index in a row-wise fashion. The column store also includes an absence flag array. The absence flag array includes entries that indicate whether certain rows have been logically deleted from the column store.
摘要:
Architecture that includes an index creation algorithm that utilizes available resources and dynamically adjusts to successfully scale with increased resources and be able to do so for any data distribution. The resources can be processing resources, memory, and/or input/output, for example. A finer level of granularity, called a segment, is utilized to process tuples in a partition while creating an index. The segment also aligns with compression techniques for the index. By choosing an appropriate size for a segment and using load balancing the overall time for index creation can be reduced. Each segment can then be processed by a single thread thereby limiting segment skew. Skew is further limited by breaking down the work done by a thread into parallelizable stages.
摘要:
Database management is described. A source data structure is copied to create a new data structure. Changes to the source data structure that occur during and after creation of the new data structure are accumulated in a file before they are added to the new data structure. Changes included in the file are subsequently applied to the second data structure.