Random next iteration for data update management
First Claim
1. A computer-implemented method of managing data in a networked environment, comprising:
- under control of one or more computer systems configured with executable instructions,receiving workload data having a specified terminating address for one of a group of host servers selected to process a common set of the workload data for a customer, the group of host servers being connected by a network aggregation fabric including layers of network switches, a path across the network aggregation fabric to each of the host servers in the group of host servers involving a number of connections across the layers of network switches, the group of host servers being selected to process workload data for the customer and being dispersed across a number of network switches for at least a lowest layer of the network aggregation fabric;
routing the workload data to a host server of the group of host servers corresponding to the specified terminating address and processing the workload data using a processing host server of the group of host servers; and
in response to processing the workload data using the processing host server, selecting a random ordering of the other host servers in the group of host servers and sending updates of the workload data to each of the other host servers in the group of host servers according to the random ordering,wherein updates to be periodically shared across all the host servers in the group of host servers are sent with randomized orderings in order to reduce a statistical likelihood of network congestion due to flow convergence.
1 Assignment
0 Petitions
Accused Products
Abstract
Host machines and other devices performing synchronized operations can be dispersed across multiple racks in a data center to provide additional buffer capacity and to reduce the likelihood of congestion. The level of dispersion can depend on factors such as the level of oversubscription, as it can be undesirable in a highly connected network to push excessive host traffic into the aggregation fabric. As oversubscription levels increase, the amount of dispersion can be reduced and two or more host machines can be clustered on a given rack, or otherwise connected through the same edge switch. By clustering a portion of the machines, some of the host traffic can be redirected by the respective edge switch without entering the aggregation fabric. When provisioning hosts for a customer, application, or synchronized operation, for example, the levels of clustering and dispersion can be balanced to minimize the likelihood for congestion throughout the network.
31 Citations
25 Claims
-
1. A computer-implemented method of managing data in a networked environment, comprising:
under control of one or more computer systems configured with executable instructions, receiving workload data having a specified terminating address for one of a group of host servers selected to process a common set of the workload data for a customer, the group of host servers being connected by a network aggregation fabric including layers of network switches, a path across the network aggregation fabric to each of the host servers in the group of host servers involving a number of connections across the layers of network switches, the group of host servers being selected to process workload data for the customer and being dispersed across a number of network switches for at least a lowest layer of the network aggregation fabric; routing the workload data to a host server of the group of host servers corresponding to the specified terminating address and processing the workload data using a processing host server of the group of host servers; and in response to processing the workload data using the processing host server, selecting a random ordering of the other host servers in the group of host servers and sending updates of the workload data to each of the other host servers in the group of host servers according to the random ordering, wherein updates to be periodically shared across all the host servers in the group of host servers are sent with randomized orderings in order to reduce a statistical likelihood of network congestion due to flow convergence. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A computer-implemented method of managing data in a networked environment, comprising:
under control of one or more computer systems configured with executable instructions, receiving customer data to one of a group of computing elements selected to process a common type of customer data, the group of computing elements being connected by a network fabric including layers of interconnecting devices each including buffering capacity, a path across the network fabric to each computing element in the group of computing elements involving a number of connections across the layers of interconnecting devices, the group of computing elements being selected to process the common type of customer data and being dispersed across a number of interconnecting devices for at least a lowest layer of the network fabric; routing the common type of customer data to one of the group of computing elements corresponding to a terminating address and processing the common type of customer data using a processing computing element of the group of computing elements; in response to processing the common type of customer data using the processing computing element of the group of computing elements, selecting a random ordering of the other computing elements in the group of computing elements and sending updates of the common type of customer data to each of the other computing elements in the group of computing elements according to the random ordering, wherein updates to be periodically shared across all the computing elements in the group of computing elements are sent with different randomized orderings.
-
18. A system for managing data in a networked environment, comprising:
-
a processor; and memory including instructions that, when executed by the processor, cause the system to; receive workload data having a specified terminating address for one of a group of host servers selected to process a common set of the workload data for a customer, the group of host servers being connected by a network aggregation fabric including layers of network switches, a path across the network aggregation fabric to each of the host servers in the group of host servers involving a number of connections across the layers of network switches, the group of host servers being selected to process workload data for the customer and being dispersed across a number of network switches for at least a lowest layer of the network aggregation fabric; route the workload data to a host server of the group of host servers corresponding to the specified terminating address and processing the workload data using a processing host server of the group of host servers; and in response to processing the workload data using the processing host server, select a random ordering of the other host servers in the group of host servers and send updates of the workload data to each of the other host servers in the group of host servers according to the random ordering, wherein updates to be periodically shared across all the host servers in the group of host servers are sent with randomized orderings in order to reduce a statistical likelihood of network congestion due to flow convergence. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification