摘要:
Embodiments are directed to efficiently routing data requests from a plurality of tenants and to using smart routing to limit service denials. In an embodiment, a gateway node receives data requests from a tenant subscriber requesting data for an indicated service. The gateway node determines which server node the received data requests are to be routed to. The determination evaluates various criteria associated with the data request. The gateway node queries the determined server node to determine the health of the server nodes and receives a reply from the determined server node indicating the server node's current operating status. The gateway node also, based on the determined server node's reply, routes the received data requests to the determined server node, according to the evaluated criteria.
摘要:
An efficient way and general mechanism is provided to represent and exchange knowledge and/or partial knowledge across nodes when synchronizing between any two nodes including custom or move filters where set membership can change over time at a device as data items come in and out of filter scope. A first node sends a second node its knowledge and/or partial knowledge, including objects and versions of those objects. The second node compares its knowledge and/or partial knowledge with the knowledge and/or partial knowledge of the first node, and then sends the first node any latest versions of objects of which the first node is unaware. In addition, the second node sends its knowledge and/or partial knowledge to the first node. The first node then performs a similar object-by-object version comparison to determine any conflicts due to independent evolution of objects and any changes that can be sent to the second node in order to bring the objects of the second node up to date with the knowledge and/or partial knowledge of the first node. Replicas can track filters to efficiently support synchronizing with filtered replicas. Filter forgotten knowledge is also used to represent how recently a replica can guarantee to know which items have been in the filter. Ghosts can be used to represent items that have been in the filter recently but have currently moved out. Filter forgotten knowledge concept allows both new filters to be tracked when they are introduced into the community, as well as periodically cleaning up of tombstones and ghosts.
摘要:
With the addition of directional information and gesture based input in a location based services environment, a variety of service(s) can be provided on top of user identification or interaction with specific object(s) of interest. For instance, a device can interact with various endpoints of a direction-based location service and any of the content or other information exchanged between clients and services can be synchronized for efficient exchange of information and efficient utilization of network bandwidth and resources. For example, change input is received by a device that alters, deletes or augments dynamically updateable information associated with a point of interest and the changes resulting from the change input are synchronized from the mobile device to a location based network service. Optionally, the synchronization can be according to a knowledge exchange to identify what should be synchronized prior to transmitting the updates.
摘要:
Various embodiments promote the discoverability of data that can be contained within a database. In one or more embodiments, data within a database is organized in a structure having a schema. The structure and data can be processed in a manner that renders one or more pseudo-documents each of which constitutes a sub-structure that can be indexed. Once produced and indexed, the pseudo-documents constitute a set of searchable objects each of which relationally points back to its associated structure within the database. Searches can now be performed against the pseudo-documents which, in turn, returns a set of search results. The set of search results can include multiple sub-sets of pseudo-documents, each sub-set of which is associated with a different structure.
摘要:
The subject disclosure relates to synchronizing among network nodes in a multi-master synchronization environment that extend a knowledge based synchronization framework to include notions of object quality. In one embodiment, additional dimension(s) are placed on a knowledge vector for a given version of an object that represent quality information for the object, which is accounted for during the synchronization process to allow nodes to decide what types of qualities of objects should be conveyed to them as part of the synchronization process. Other embodiments include tombstoning objects to avoid future synchronization with respect to same objects maintained by other nodes in the multi-master synchronization environment. Advantageously, according to the synchronization framework, endpoints can synchronize data in a way that allows a definition and consideration of quality of one or more objects of the synchronized data for purposes of a knowledge exchange.
摘要:
The present invention extends to methods, systems, and computer program products for scoping the context used to access a database partition. Embodiments of the invention enable data isolation using partitions in multi-tenant databases, while relieving client applications from dealing with the partitions. For example, a computer system that includes a distributed database system comprising a plurality of database partitions in a federation receives a context to use when performing database access operations within the distributed database system. The context identifies specified relevant portion of the federation. The computer system also receives a database access operation that is associated with the context. The computer system modifies the semantics of the database access operation in accordance with the associated context, to direct application of the database access operation to the specified relevant portion of the federation.
摘要:
The present invention extends to methods, systems, and computer program products for partitioning online databases. Online database operations, such as, for example, SPLIT, MERGE, and DROP, are used to alter the arrangement of partitions in a federated database. A SPLIT operation splits rows at one partition across a plurality of other partitions. A MERGE operation merges rows at a plurality of partitions in to one partition. A DROP operation shifts responsibility for rows of data from one partition to another partition and then drops the rows from the one partition.
摘要:
Providing synchronization to a local system. Embodiments may include downloading a batch of changes in a heterogeneous batch. The batch of changes is correlated to an anchor affiliated with a synchronization service. The anchor is a reference point indicating time or relative order. The batch of changes and the anchor are serialized to a non-volatile storage medium as a heterogeneous set. After serializing the batch of changes to a non-volatile storage medium as a heterogeneous set, entities in the batch of changes are parsed out into entities in in-memory representations. Similarly, embodiments may receive user input modifying a plurality of data entities, store on a non-volatile storage medium a serialized heterogeneous representation of the modified data entities, and upload the serialized heterogeneous representation to a synchronization service.
摘要:
An efficient way and general mechanism is provided to represent and exchange knowledge and/or partial knowledge across nodes when synchronizing between any two nodes including custom or move filters where set membership can change over time at a device as data items come in and out of filter scope. A first node sends a second node its knowledge and/or partial knowledge, including objects and versions of those objects. The second node compares its knowledge and/or partial knowledge with the knowledge and/or partial knowledge of the first node, and then sends the first node any latest versions of objects of which the first node is unaware. In addition, the second node sends its knowledge and/or partial knowledge to the first node. The first node then performs a similar object-by-object version comparison to determine any conflicts due to independent evolution of objects and any changes that can be sent to the second node in order to bring the objects of the second node up to date with the knowledge and/or partial knowledge of the first node. Replicas can track filters to efficiently support synchronizing with filtered replicas. Filter forgotten knowledge is also used to represent how recently a replica can guarantee to know which items have been in the filter. Ghosts can be used to represent items that have been in the filter recently but have currently moved out. Filter forgotten knowledge concept allows both new filters to be tracked when they are introduced into the community, as well as periodically cleaning up of tombstones and ghosts.
摘要:
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.