摘要:
Described herein is a session reuse approach that reuses a session already established on a remote participant to execute an autonomous transaction. The session is reused in a manner that avoids affecting the session's state in a way adverse to later execution of the containing transaction. When beginning an autonomous transaction on a local participant, a request to initiate an autonomous transaction on a remote participant is deferred or not sent at all if the containing transaction is a distributed one. The request may be sent later, piggybacked to another message, using a piggyback messaging system. When ending an autonomous transaction, a local participant may send a request to a remote participant requesting that the remote participant commence execution of its respective containing transaction. The request is piggybacked to another message, and is thus transmitted without having to transmit the request separately, avoiding a message round trip.
摘要:
One embodiment of the present invention provides a system that facilitates automatically organizing digital images using metadata which is embedded in the digital images. The system operates by receiving a digital image with embedded metadata, wherein the embedded metadata includes Global Positioning System (GPS) data. The system uses the embedded metadata, including the GPS data, to identify additional metadata associated with the digital image. The system then saves the digital image on a storage medium. In addition, the system saves the embedded metadata and the additional metadata on the storage medium in a searchable format.
摘要:
Techniques are provided for providing mappings between logical time values and real time values in a multinode system. The techniques include, if a first event occurs, then writing an LTV-to-RTV mapping to a non-volatile data structure. If a second event occurs, then a check is performed to determine whether any of the LTV-to-RTV mappings in the volatile data structure are newer than all LTV-to-RTV mappings in a non-volatile data structure. If there are newer mappings in the volatile data structure, then one or more LTV-to-RTV mappings are written to the non-volatile data structure based on those “newer” LTV-to-RTV mappings from the volatile data structure. Upon receiving a request an LTV for a particular RTV, the particular RTV is determined based on information from an information source such as the volatile data structure or the non-volatile data structure.
摘要:
Techniques for executing an atomic transaction include performing a first operation of a first set of operations. The atomic transaction involves the first set of operations for causing changes to a first set of data. A first error that prevents completion of the atomic transaction is detected. In response to detecting the first error, a second set of operations is performed for resolving the first error. It is then determined whether a resolution of the first error is obtained in response to performing the second set of operations. If the resolution is obtained, then execution of the first set of operations is resumed. These techniques allow atomic transactions to be resumed after resolving an error without undoing all the operations accomplished for the transaction at the time the error occurred.
摘要:
A query result set is an example of a type of body of data whose content is defined by a query. Modifications to a database can change the result of a query and therefore what the content of such a body of data, such as a result set, should be. Active Queries is an approach that enables a database server to detect database changes that alter the result of a query registered for a client and to notify a client of those changes. The notifications may be sent to, for example, a cache manager responsible for maintaining coherency of a result set cache generated by the query. The notification notifies the cache manager of when and/or what changes are needed to maintain the coherency of the cache.
摘要:
Disclosed is a mechanism, system, interface, and process to determine one or more life intervals when given a key. In addition, one or more life intervals can be determined for each key within a range of keys. This type of process is useful for auditing purposes or if it is desire to implement a query upon past versions when a key or range of keys is specified for the data for which past versions is desired. This facilitates algorithms, mechanisms, and processes to implement a query upon past versions.
摘要:
A method and apparatus for updating databases are disclosed. In response to a flashback request, a database object is restored to a state as of a specified flashback time. The changes introduced into the database object are reversed in a sequence starting with a change introduced into the database object immediately before issuance of the flashback request and ending with a change introduced into the database object immediately after the specified flashback time.
摘要:
Techniques for maintaining a cascading index are provided. In one approach, one or more branch node compression techniques are applied to the main index of a cascading index. In an approach, a Bloom filter is generated and associated with, e.g., a branch node in the main index. The Bloom filter is used to determine whether, without accessing any leaf blocks, a particular key value exists, e.g., in leaf blocks associated with the branch node. In an approach, a new redo record is generated in response to a merge operation between two levels of the cascading index. The new redo record comprises (a) one or more addresses of blocks that are affected by the merge operation, (b) data is that being “pushed down” to a lower level of the cascading index, and (c) one or more addresses of blocks that are written to disk storage as a result of the merge operation.
摘要:
Techniques for storing and manipulating tabular data are provided. According to one embodiment, a user may control whether tabular data is stored in row-level or column-major format. Furthermore, the user may control the level of data compression to achieve an optimal balance between query performance and compression ratios. Tabular data from within the same table may be stored in both column-major and row-major format and compressed at different levels. In addition, tabular data can migrate between column-major format and row-major format in response to various events. For example, in response to a request to update or lock a row stored in column-major format, the row may be migrated and subsequently stored into row-major format. In one embodiment, table partitions are used to enhance data compression techniques. For example, compression tests are performed on a representative table partition, and a compression map is generated and applied to other table partitions.
摘要:
Techniques for storing and manipulating tabular data are provided. According to one embodiment, a user may control whether tabular data is stored in row-level or column-major format. Furthermore, the user may control the level of data compression to achieve an optimal balance between query performance and compression ratios. Tabular data from within the same table may be stored in both column-major and row-major format and compressed at different levels. In addition, tabular data can migrate between column-major format and row-major format in response to various events. For example, in response to a request to update or lock a row stored in column-major format, the row may be migrated and subsequently stored into row-major format. In one embodiment, table partitions are used to enhance data compression techniques. For example, compression tests are performed on a representative table partition, and a compression map is generated and applied to other table partitions.