Book Image

OpenStack Object Storage Essentials (Update)

Book Image

OpenStack Object Storage Essentials (Update)

Overview of this book

Table of Contents (18 chapters)
OpenStack Object Storage (Swift) Essentials
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Swift CLI Commands
Index

Swift implementation and architecture


The two key issues that any storage system has to solve are as follows:

  • Where to put and fetch data

  • How to keep the data durable and available

We will explore these two core issues through the upcoming discussion on architecture and implementation.

Key architectural principles

Some key architectural principles behind Swift are as follows:

  • Masterless design: A master in a system creates both a failure point and a performance bottleneck. Masterless design removes this and also allows multiple members of the cluster to respond to API requests.

  • Loose coupling: There is no need for tight communication in the cluster. This is also essential for preventing performance and failure bottlenecks.

  • Load spreading: Unless the load is spread out, performance, capacity, account, container, and object scalability cannot be achieved.

  • Self-healing: The system must automatically adjust for hardware failures. As per the CAP theorem discussed in Chapter 1, Cloud Storage – Why Can...