You are on page 1of 23

DISTRIBUTED SYSTEMS

Dr. Shahid Naseem


Assistant Professor (IT)
Division of Science & Technology
University of Education, Township Campus, Lahore
Shahid.Naseem@ue.edu.pk

Superior University, Gold Campus


Harvest/Yield
• Distributed systems can be evaluated by its
decision to reduce harvest/yield under network
partitions.
• Some architectures utilize different harvest/yield
tradeoffs in individual components.
• A better representation of the kind of tradeoffs
one will make compared to the CAP Theorem.

Superior University, Gold Campus


Harvest
• The completeness of the response to a query.
• Total data available/Total data=Harvest
• Harvest is an abstract idea-depends on what you
define as completeness.
Examples:
 Pagination on large datasets.
 Returning partial dataset on shared failure.
 Return less accurate search results on node
failure.

Superior University, Gold Campus


Yield
• You can trade yield for harvest.

Examples
 Database transactional locks.
 Return error on network failure instead.

Superior University, Gold Campus


Yield
• The probability of computing a request.
• Total responses/Total requests=Yield, result of 0
to 1.

Examples
 Total responses=999
 Total requests=1000
 Yield=0.999
 Yield is NOT uptime.

Superior University, Gold Campus


Yield
• You can trade harvest for Yield-Probabilistic
Availability.

Examples
 Returning stale (old) data.
 Prioritize the most critical data.

• A response to CAP Theory being widely


misunderstood and misused.
• How much of harvest/yield to sacrifice in the
event of a network partition.
Superior University, Gold Campus
Partitioning & Replication
Strategies: Partitioning and replication are two
different strategies on scaling a distributed system.
Partitioning: dividing data to improve yield during
high loads. Data can be divided using deterministic
indexing strategies. Partitioning does not improve
system resilience towards network partitions or
node failures.
Example:
 By Geography (Asia, Europe, North America).
 By Hash (3xf8ca8e, etc.)
 By category (Hot/cold data)
Superior University, Gold Campus
Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Partitioning

Superior University, Gold Campus


Replication
Replication: Creating redundancy of data to
improve Harvest in the event of node failures.
Replication used in conjunction with partitioning to
improve data redundancy. However, as we replicate
data, we improve read yield at the cost of write
yield, if we care about strong consistency.

Both strategies are used together in some


combinations.

Superior University, Gold Campus


Replication

Superior University, Gold Campus


Replication

Superior University, Gold Campus


Replication

Superior University, Gold Campus


Replication

Superior University, Gold Campus


Replication

Superior University, Gold Campus


Replication

Superior University, Gold Campus

You might also like