Skip to Content
How to Make Things Faster
book

How to Make Things Faster

by Cary Millsap
June 2023
Intermediate to advanced
356 pages
5h 32m
English
O'Reilly Media, Inc.
Content preview from How to Make Things Faster

Chapter 56. Scalability

Scalability is a mathematical property with a precise definition. It is the rate of change of speed with respect to a specified parameter. Here is an example. The following plot shows the speed (measured as response time) of four data access algorithms with respect to the number of rows in a table. The curves are all labeled in what mathematicians call “big O” notation,1 which describes the shape of the curve. The interesting question is: which of the four algorithms is best?

Image

The answer is: it depends upon the row count of your table. If it has fewer than 200 billion rows, then the O(n2) algorithm will give better response time than any of the other algorithms. Between 200 billion and 400 billion rows, the O(n log n) algorithm is best. If it has more than 400 billion rows, then the O(log n) algorithm is going to give you the best response time.

The R value on a curve for a given n value is the speed of an algorithm at a given data set size. The shape of its curve is the algorithm’s scalability. While the particular O(n2) algorithm in this plot does give better performance for smaller tables, the O(log n) algorithm is more scalable with respect to table size because it gives better performance as your table size grows toward infinity.

You can measure scalability with respect to any parameter that influences performance. For example:

  • How an algorithm’s ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Improve Your Problem-Solving Skills

Improve Your Problem-Solving Skills

Charles Humble

Publisher Resources

ISBN: 9781098147051Errata Page