How to Analyze Billions of Records per Second on a Single Desktop PC
<i>I have encountered multiple claims that in-memory analytics databases are often constrained by memory bandwidth, and I myself held that misconception for longer than I want to admit. </i><p>So if not memory-bandwidth, what is the constraining factor?  Or specifically, what&#x27;s the limiting factor that causes the observed benchmark speeds for LocustDB?<p>My guess would be that a well designed in-memory database should be limited by memory-bandwidth, but that real-world memory-bandwidth shouldn&#x27;t be thought of as a single number.  Instead, it depends on the size and pattern of requests, the latency of different cache hierarchies, and (crucially but often forgotten) on the number of requests in flight.<p>Is there a better terminology that distinguishes these two uses of memory-bandwidth?