G06F16/178

Maintaining A Synchronous Replication Relationship Between Two Or More Storage Systems

Maintaining a synchronous replication relationship between two or more storage systems, including: receiving, by at least one of a plurality of storage systems across which a dataset will be synchronously replicated, timing information for at least one of the plurality of storage systems; and establishing, based on the timing information, a synchronous replication lease describing a period of time during which the synchronous replication relationship is valid, wherein a request to modify the dataset may only be acknowledged after a copy of the dataset has been modified on each of the storage systems.

INLINE DEDUPLICATION BETWEEN NODES IN STORAGE SYSTEMS
20230237021 · 2023-07-27 · ·

Techniques described herein coordinate inline deduplication among nodes in a storage system. The method includes storing, in a page descriptor ring on a node, data and a fingerprint associated with the data in an entry. The method includes determining that a flushing work set (FWS) has been frozen. The node identifies, in the page descriptor ring, entries associated with the frozen FWS and having fingerprints with a parity associated with the node. The node deduplicates the entries based on a fingerprint database on the node. The node synchronizes deduplication of the frozen FWS with a peer node, so as to receive deduplication results concerning entries having fingerprints with a parity associated with the peer node. The node replaces entries in the page descriptor ring with the deduplication results from the peer node, and flushes entries in the frozen FWS to a storage device.

INLINE DEDUPLICATION BETWEEN NODES IN STORAGE SYSTEMS
20230237021 · 2023-07-27 · ·

Techniques described herein coordinate inline deduplication among nodes in a storage system. The method includes storing, in a page descriptor ring on a node, data and a fingerprint associated with the data in an entry. The method includes determining that a flushing work set (FWS) has been frozen. The node identifies, in the page descriptor ring, entries associated with the frozen FWS and having fingerprints with a parity associated with the node. The node deduplicates the entries based on a fingerprint database on the node. The node synchronizes deduplication of the frozen FWS with a peer node, so as to receive deduplication results concerning entries having fingerprints with a parity associated with the peer node. The node replaces entries in the page descriptor ring with the deduplication results from the peer node, and flushes entries in the frozen FWS to a storage device.

Failover and recovery for replicated data instances

Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can periodically communicate with a primary and a secondary replica for an instance, with each capable of residing in a separate data zone or geographic location to provide a level of reliability and availability. A database running on the primary instance can have information synchronously replicated to the secondary replica at a block level, such that the primary and secondary replicas are in sync. In the event that the monitoring component is not able to communicate with one of the replicas, the monitoring component can attempt to determine whether those replicas can communicate with each other, as well as whether the replicas have the same data generation version. Depending on the state information, the monitoring component can automatically perform a recovery operation, such as to failover to the secondary replica or perform secondary replica recovery.

Failover and recovery for replicated data instances

Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can periodically communicate with a primary and a secondary replica for an instance, with each capable of residing in a separate data zone or geographic location to provide a level of reliability and availability. A database running on the primary instance can have information synchronously replicated to the secondary replica at a block level, such that the primary and secondary replicas are in sync. In the event that the monitoring component is not able to communicate with one of the replicas, the monitoring component can attempt to determine whether those replicas can communicate with each other, as well as whether the replicas have the same data generation version. Depending on the state information, the monitoring component can automatically perform a recovery operation, such as to failover to the secondary replica or perform secondary replica recovery.

Cluster data replication

A cluster data replication system includes a plurality of network elements and controllers. The controllers form a cluster that is able to elect one of the controllers as a master controller with the others being follower controllers. The elected controller updates, responsive to being elected the master controller, state information in a system database of the elected controller to indicate that the elected one of the controllers is the master controller. The master controller includes one or more objects that are enabled in reaction to the state information, and which coordinate replication of changes to the data, system database, and state information from the master to the follower controllers. Each follower controller includes one or more objects able to, in reaction to the state information, disable initiation of the replication of changes to the data, system database and state information by the one or more objects in each follower controller.

Cluster data replication

A cluster data replication system includes a plurality of network elements and controllers. The controllers form a cluster that is able to elect one of the controllers as a master controller with the others being follower controllers. The elected controller updates, responsive to being elected the master controller, state information in a system database of the elected controller to indicate that the elected one of the controllers is the master controller. The master controller includes one or more objects that are enabled in reaction to the state information, and which coordinate replication of changes to the data, system database, and state information from the master to the follower controllers. Each follower controller includes one or more objects able to, in reaction to the state information, disable initiation of the replication of changes to the data, system database and state information by the one or more objects in each follower controller.

File-based sharing using content distributions network

Embodiments relate to file-based sharing of content through a content distribution network. A request is received from a source to disseminate content to a target consumer. The request does not include target consumer URL information. Based upon the request, content metadata stored in a database with content data, is referenced to generate a file including metadata comprising a portion of the content metadata. The file does not include the content data. The file is exported to the source. The source delivers the file to the target consumer through a communication channel (e.g., shared folder, email) located outside of the distribution network. The file is imported from the target consumer. The metadata of the file is processed to examine its integrity. The metadata may comprise a key for reference during this process. Upon confirming integrity of the file, the content data and the content metadata are distributed to the target consumer.

File-based sharing using content distributions network

Embodiments relate to file-based sharing of content through a content distribution network. A request is received from a source to disseminate content to a target consumer. The request does not include target consumer URL information. Based upon the request, content metadata stored in a database with content data, is referenced to generate a file including metadata comprising a portion of the content metadata. The file does not include the content data. The file is exported to the source. The source delivers the file to the target consumer through a communication channel (e.g., shared folder, email) located outside of the distribution network. The file is imported from the target consumer. The metadata of the file is processed to examine its integrity. The metadata may comprise a key for reference during this process. Upon confirming integrity of the file, the content data and the content metadata are distributed to the target consumer.

Storage constrained synchronization engine
11562000 · 2023-01-24 · ·

A client application of a content management system provides instructions for synchronizing content items and placeholder items using a local file journal and updated file journal. The client application compares entries in the updated file journal to entries in the local file journal to determine modifications to make to content items or placeholder items stored in a shared content storage directory on the client device. Based on the result of the comparison, the client application replaces placeholder items with content items or replaces content items with placeholder items.