Posts

Showing posts with the label storage

Understanding Database Latency

Image
Latency is basically the amount of time you must wait to get a response from a request.   It is measured at a specific component like a storage or network device.   When you ask a computer to do something, each component involved in that request has a minimum amount of time it takes to reply with an answer even if the answer is a null value.   If your database requests a single block from storage, then the time it takes to receive that block is storage latency.   If the storage is attached over a network like Fibre Channel or SAS, then the network interfaces and cables each add their own latency. Latencies are often measured in milliseconds (ms).   There are 1,000 milliseconds per second, and most people cannot perceive anything smaller than 1 millisecond.   However, computers are wicked fast and the latency may need to be measured in microseconds (each μs is a millionth of a second) or even nanoseconds (each ns is a billionth of a second).   Hard dr...

High CPU and Low Database Throughput

This post examines the reason why many relational DBMS servers show very high CPU utilization without completing much work.  The discussion applies to transactional database workloads running on Oracle, SQL Server, MySQL, and PostgreSQL. A friend asked why his database server's CPUs were constantly maxed out while not really getting much work done.   In fact, users were complaining about the time it takes to complete simple transactions.   My friend was worried the only solution was to move the database to a bigger and more expensive server with more CPUs.   He were particularly worried about escalating DBMS licensing fees.   Most DBMS are licensed by CPU count.   Moving to a bigger server means buying more licenses.   And once you go up, DBMS vendors are very reluctant to let you reduce licenses.   This is a common concern for commercial DBMS customers.   For open source customers it is a different problem: there is no software license t...

Zettabytes of Storage

Total capacity of HDD shipped by the top three manufacturers reached an all-time high of 1 ZB in 2020.  A zettabyte (ZB) is a billion terabytes or a trillion gigabytes or a quadrillion megabytes.  In any case, it is mind blowing. And, what's more mind numbing: capacity requirements are expected to triple between now and 2026 to over 3 ZB annually. And, what's even more mind numbing is it only includes hard disk drives.   Solid State Drives (SSD) adds another 20% to the capacity number. Do you remember the 1 GB hard drive in your 1995 PC?  I remember it was the largest available HDD for home computers at the time.   It would take a trillion of those disks to equal the capacity sold in 2020.   Today's PCs and laptops seem to come standard with 1 TB hard drives.   It takes a billion of them to equal the 1 ZB capacity sold in 2020 alone.   And, repeat every year.  Just imagine someone buying a billion 1 TB disks each year. Enterpri...