Chapter 5. Distributed Storage Systems

After talking about interface design in Chapter 4, we’re going to move on to discuss the available distributed storage systems that you’re likely to consider for your data architectures. As we discuss the variety of storage systems available, hopefully it will become apparent why interfaces are so useful when designing data applications.

In this chapter, we first discuss some core attributes of a distributed storage system to categorize the options. Then, we dig into some of the currently available and widely used distributed storage systems. We start with a discussion of these attributes because it would be impossible for this book to cover all the storage systems out there, and by the time this book comes out, there will likely be more. Fortunately, with a strong understanding of the fundamentals of distributed storage systems, you should be able to categorize and evaluate any new systems that come along.

Attributes of Distributed Storage Systems

People categorize distributed storage systems in numerous ways—some being helpful and some being confusing. The goal of this section is to call out what we consider to be important when evaluating storage systems for your data applications.

Note that the considerations for evaluating systems discussed in Chapter 2 are relevant to evaluating the systems discussed here. We’re not going to reiterate those considerations, but it will be helpful to keep them in mind as you read this chapter.

We begin ...

Get Foundations for Architecting Data Solutions now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.