Previously I presented some background on Swift. I’d like to continue by focusing on The RESAR Project.
This project leverages previous work done by Ignacio Corderi on the subject of Cloud Device Management. He presented his research in a paper: “RESAR storage: a system for two-failure tolerant, self-adjusting million disk storage clusters”. This paper was co-authored by Dr. Darrell D. E. Long (a professor at the University of California, Santa Cruz), Dr. Thomas. M. Kroeger (of Sandia National Laboratories) and by Dr. Thomas Schwarz (a professor at Santa Clara University).
Swift RESAR: Robust, Efficiency, Scalable, Autonomous & Reliable
Mr. Corderi describes his research as RESAR: Robust, Efficient, Scalable, Autonomous, and Reliable storage. This project is thus the application and implementation of an essentially efficient, scalable storage methodology to the OpenStack Swift Project. We thus refer to it as the Swift RESAR project.
RESAR essentially is a mapping algorithm, that is centered around LUN construction. Devices are segmented into Disklets, where there is a single disklet size for all devices in a given cloud. In RESAR, LUNs are referred to as Reliability Groups. A Reliability Group is a collection of data disklets and a single parity disklet. Data disklets can be members of multiple reliability groups. Parity disklets can only be in a single reliability group. So RESAR keeps track of devices, disklets, and reliability groups.
Traditionally, disklets and reliability groups are organized into a grid, where each row and column defines a separate reliability group. The nodes on the bottom and right edges are parity disklets. All other nodes are data disklets. RESAR is unique in that it also organizes disklets and reliability groups into a mathematical dual form. Each reliability group can thus be identified as a vertex and all connecting edges, and each data element can be identified as an edge connecting two vertices. This approach allows the application of various graph techniques like coloring. Thus RESAR provides optimal device organization that is scalable.
So you now have some understanding as to the design of RESAR. My next blog will present the first implementation of Swift RESAR.