Sunday, August 7, 2016

Today we continue our discussion of the  paper titled "Pelican: a  building block for exascale cold data storage". Pelican treats a group of disks as a single schedulable unit. Resource restrictions such as power consumption, vibrations and failure domains are expressed as constraints over these units.
With the help of resource constraints and scheduling units, Pelican aims to be better than its over provisioned counterpart racks using computations in software stacks.
We were discussing the evaluation of Pelican and listing out the metrics chosen. To compare the evaluations, a simulator was used in addition to the Pelican hardware rack and the simulator and the rack were cross validated. It was configured in such a way that the prototype Pelican rack hardware matched the simulator. Traditionally, simulating hard disk-based storage accurately is very hard due to the complexity of the mechanical hard drives and their complex control software that runs on the drive. We were discussing the completion time. The completion time increased linearly by the order of 3 for an increase by 64 times the number of requests. The simulator and the rack performed very much like each other. 
The next metric used was time to first byte.  This is the time between a request being issued by a client and the first data byte being sent to the client. This includes the queuing delay and any disk spin up and volume mount delays By its nature, the factors that affect the completion time also affect the time to first byte. Consequently we expect the graph to be linear as well and indeed it turned out to be very similar to the graph for the completion time.
The Service time was another metric used. This is the time from when a request is dequeued by the scheduler to when the last byte associated with the request is transferred. This includes delays due to spinning up disks and the time taken to transfer the data but excludes the queuing delay. As such it focuses on the scheduler status updates to the task. It differs from the completion time in that it excludes the queuing delay and focuses only on the performance of the disks. The charts for service time is therefore different from that for completion time or the time to first byte. The service time dropped from 15 sec to 5 sec as requests increased 64 times for both the simulator and the rack.  This showed that the scheduler does better with increasing loads  and that the time to spin up disks is reduced while remaining within the constraints.
#codingexercise
A person has 3000 bananas and a camel. The person wants to transport maximum number of bananas to a destination which is 1000 KMs away, using only the camel as a mode of transportation. The camel cannot carry more than 1000 bananas at a time and eats a banana every km it travels. What is the maximum number of bananas that can be transferred to the destination using only camel (no other mode of transportation is allowed)
The answer is 533 1/3 bananas.
The camel cannot come back if it makes a straight run to the destination. There will not be any bananas to unload at the destination and there won't be any bananas left to eat so that the camel can return.
The maximum distance the camel can travel is 500 kms for the thousand bananas loaded on it. Therefore there are intermediate stations to stop before reaching the market. Let us say these stations are A,B, C  ... in the order from source to destination.
To unload 3000 bananas in max hypothetical unload of 1000 bananas each three forward trips and two return trips are at least needed. The first segment must at least have five trips, the next segment must be less than this five and for a longer distance in order to save bananas and further decreasing from that point on. So we have 5, 3, 1 number of trips and the cost of each segment can be considered as 5 bananas / km, 3 bananas per km and 1 banana per km to the destination.
The camel can carry at most 2000 bananas from point A and 1000 bananas from point B to destination.
3000 - 5 PA = 2000   => PA = 200 kms
2000 - 3 AB = 1000   => AB = 333 + 1/3 kms
BM = 1000-200-333 1/3 = 466 2/3 kms
The camel arrives at the destination with 533 1/3 bananas.

No comments:

Post a Comment