AWS EBS vs. AWS instance store
(local disk) storage

!!! Every benchmark we do leverages the Scalebench platform, which installs and runs well known benchmark suites and tools in an automated fashion, and processes the results into graphs and reports (as seen below) for analysis.

Get started with your own benchmarks here

AWS is well known for it’s EBS (elastic block storage) offering, which effectively separates (both physically and functionally) the storage component of a VM from the processing component. This means that it’s trivial to mix and match front end processing systems, allowing a user to upgrade/downgrade/pause an instance seamlessly with storage waiting to be re-attached. This storage can be found on separate instances using the AWS custom built nitro system. Multiple copies of data for a given EC2 instance are read/written to within the same availability zone. Based on their details page we are going to assume it’s a one (or more) disk master copy read/write, and there are other disk (set) copies on other servers that are written to asynchronously, and not used for reading (that would be the safest way to do it and avoid getting into the weeds of architecting a synchronous cluster based storage system).

So what is the other option? The old fashioned way of having one or more disks physically attached to your server. AWS does have this, they call it ‘instance store’, and you’ll see on the instances types page, any listing with NVMe SSD, supports local disk. However, beware, for the AWS version of local disk is ‘ephemeral’, which means if the instance is either stopped, or terminated, you lose the data (rebooting is okay). This is likely due to their overall architecture philosophy where once an instance is stopped, the front end processing VM (included any attached disks) is thrown back into the pool for other users. The big advantage local storage has, is the close proximity and thus low latency of interactions, and so they certainly should perform better.

Why don’t they offer a class of servers with local storage AND durable local storage? We’ll just chalk it up to business reasons.

so let’s compare the following options and see how they perform,

    1. EBS SSD general iops (about 3k for a 1TB volume)
    2. EBS SSD provisioned iops (about 50k for a 1TB volume)
    3. NVMe SSD local disk (one disk raid 0)
    4. NVMe SSD local disk (two disks striped raid 1)

* you would generally never run a local disk as raid 0 (otherwise you’d risk losing your data on failure), but it’s useful to how a single disk performs for the active workload and how multiple disks can improve performance.

more details can be found by viewing the report.

Specs are the following,

M5.8xlarge / M5d.8xlarge
    • 32 cores / 3201.76 mhz / Intel(R) Xeon(R) Platinum 8175M CPU @ 2.50GHz
    • L1d: 32 L1i: 32 L2: 1024 L3: 33792
    • RAM: 123.16 GB / swap: 0.00 GB / hugepages: 0.00 GB / hp size: 2.00 MB
    • (m5d.8xlarge local disk) 2 X 558.80 GB, ext4
    • (m5.8xlarge EBS) 1023.00 GB, ext4
    • Amazon Linux AMI 2018.03 35.164.220.8

Testing Parameters

We use the Scalebench platform to leverage Sysbench benchmarking tool.

    • Sysbench benchmark suite
    • 3 X 60 second runs (yes, pretty short runs. more on this below)
    • disk – seqrd, seqwr, rndrd, rndwr (default settings)
    • total file size of 500GB  ( >> 128GB memory)
    • 16KB requests

Results

We do 4 separate tests read/write in sequential/random fashion. Before we start to analyze the results, there are a few AWS specific limits to keep in mind, which are detailed here and here. Essentially AWS has both I/O and throughput limits for EBS and specifics depend on the volume type.

    • EBS 3k – 3,000 iops  | 250MB/sec throughput
    • EBS 3k – 50,000 iops  | ~800MB/sec throughput
    • EBS per instance (m5.8xlarge/ m5d.8xlarge) – 30,000 iops | ~850MB/sec*

* and so the instance type can limit the iops and throughput regardless of the EBS storage settings.

Random Writes – Because it’s a random access pattern, each piece of data will likely reside on a different block, and thus generally an I/O per request. So iops becomes the limiting factor. The graph shows this to be quite true for EBS general iops which tops out at about 3,000 iops for 2+ threads. the EBS provisioned iops improves with more threads, however tops out at 32+ threads and begins to degrade due to thread contention. Also the max iops reached was ~ 23k iops, somewhat lower than the instance max of 30k iops. The local disk results both reach max capacity much more quickly at 4+ threads as there is no imposed limit, and due to low latency of local disk. The single disk vs. raid 1 (two copies), have the same results, as raid1 has to write a copy of the data to each disk. disk random writes benchmark

Random Reads – Again, for the same I/O per request reason, the limiting factor is likely to be iops for EBS, and we see that the general characteristics are similar to the Random Reads graph. EBS 3K is limited quickly at 2+ threads and maxes at ~ 4k (there may be some bundling in the physical writes), EBS 50k increases capacity to max out at 16+ threads and hits a max of 40k iops (limit should be 30k max of the instance). Again bundling of physical writes by about the same factor. The local disk runs disk random reads benchmark

Sequential Writes – Sequential access is fundamentally different,  requests can be made to the same block on disk and so subsequent requests are cached for reads to the same block. Additionally, the process then moves on to query adjacent blocks which are likely also cached in a read-ahead, journal file system. So many sequential requests can result in one block request. Instead of sequential access hitting the iops ceiling, it hits the thoughput ceiling. We can see that EBS 3k run is steady at ~16K iops for all threads, and you’ll find that 16,000 iops * 16k per request  ~ 250MB/sec, the throughput ceiling for EBS 3K. For the local cases, throughput is also a limiting factor, although it’s the throughput of the disk(s) themselves with no artificial limit and so the results are flat for all thread runs. Raid1 and single disk results are the same as raid1 needs to write to both disks. disk sequential writes benchmark

Sequential Writes – uh-oh a big red line through it. That can’t be good. When doing these benchmarks, we did very short runs (60 secs). Why so short? In the interest of cost savings, even with 60 seconds per run, a disk test 3 times per combo for 1-128 threads for the 4 access options takes about 6 hours per instance. With the other 3 cases, there were minimal effects, but in the case of sequential reads, there were cached reads that skewed the results the first 5-10 seconds. Below is the results with first 10 seconds cut. disk sequential reads benchmark

Now we have proper data, and you can see, EBS 3k again tops out quickly at ~16,000 iops / 250 MB/sec. EBS 50k doesn’t reach it’s max until 64+ threads, topping out at 50k iops but really, 50k iops * 16kb = 800 MB/sec, which is probably the true limiting factor in this case. Both local disk cases start out vastly better due to low latency and the raid 1 performs 2x+ better than the single disk for lower thread values, as there are 2 disks to serve reads. As threads increase, thread contention brings the results closer together. disk sequential reads benchmark


Takeaways

  1. the local disk options are vastly better at random access than EBS, due to low latency and iops being a limiting factor. Although most applications try to avoid random reading, it’s hard to avoid completely and so good performance in this area is a big plus. Sequential reads are also vastly better than EBS, mainly due to rate limiting of EBS, specifically the throughput. Generally you are going to get full, unrestricted access to a local disk with much lower latency than network storage (EBS).
  2. Raid1 is (not surprisingly) up to 2x better for reads than the single disk. Writes are the same due to needing to write to both disks. However on larger system, you can have 4+ disks and do raid10 (mirrored striping) which would give improvements to writes as well.
  3. Unfortunately as mentioned at the start, local disk options are ephemeral and will lose your data on a terminate/stop of the instance. Even so, it might be worth considering a high availability architecture to allow using it.
  4. EBS 50K is certainly more performant than 3K, although you generally need to get past 4+ threads to see a real difference (e.g. a database). Single threaded processes are not going to be much faster (e.g. a file copy, zip, etc..). EBS 50k was limited by the instance max iops (30k), so generally be aware the instance size also can be a limiting factor on EBS performance.
  5. It’s possible to raid EBS as well, but keep in mind it’s networked storage and so that will likely be a real bottleneck on any performance gains. Worth a separate test to compare.

 

0 Replies to “
AWS EBS vs. AWS instance store
(local disk) storage

  1. Firstly, you necessity a valid driver’s license. In most cases, you be required to experience held it towards at least one (1) year. You also need a credit (or debit, where accepted) postal card to pay for the rental and leave a place and the voucher received after your booking is confirmed.
    When renting in a foreign country, you habitually essential another type of identification, normally a passport.
    At what time eon can I rent a car?
    This depends on where you would like to rental a car. In spite of you can charter out a crate at the period of 18 in various European countries and the states of Late York and Michigan in the United States, in divers locations you should be 21 to lease a car. You can conveniently restrain this by entering your period forward of clicking Search now.
    Note that most rental suppliers charge an additional Teenaged Driver Toll against renters supervised the seniority of 25, but this years varies via supplier and location. If you be a party to your majority first searching, we include this toll in the perfect, allowing in spite of the simplest comparison.
    What should I look as a replacement for when choosing a rental supplier?
    There are two things you should eat http://pbtorg.ru/forum/user/3490/ to settle which supplier to rent from – reviews and the Rental Conditions.
    We ask every fellow to place their rental common sense after they drop-off high the machine and certify their ratings when you search as regards a car. If you lack to be sure you arrange significant advantage, look for the Excellent Car Rental Utilization badge which we bestow to the cut off three suppliers in each situation with an general rating of 8 or higher.
    You should also check a depart the Rental Conditions to frame unshakable the rental supplier you on works best since your requirements.
    Can I split a transport without a honesty card?
    Granted proper a some years ago it was unsuitable to rent a car without a acclaim visiting-card, things enjoy changed quickly. Divers suppliers, uniquely epidemic companies such as Avis, Dollar, Hertz, etc., add renters to both hit and leave a place with a debit credit card (but the in the offing be required to be a Mastercard or Visa).
    If you do not secure a dependability anniversary card, be foolproof to check the Payment Policy branch of the Rental Conditions last to booking to see if the supplier accepts debit cards.

  2. Firstly, you need a valid driver’s license. In most cases, you must take held it pro at least the same (1) year. You also necessity a acknowledgement (or debit, where accepted) postal card to deliver for the rental and take one’s leave of a lay and the voucher received after your booking is confirmed.
    When renting in a transatlantic rural area, you habitually need another manifestation of classification, large a passport.
    At what period can I farm out a car?
    This depends on where you would like to rent a car. Granted you can farm out a transport at the time of 18 in various European countries and the states of Additional York and Michigan in the United States, in many locations you have to be 21 to charter out a car. You can conveniently check this beside entering your age forward of clicking Search now.
    Note that most rental suppliers charge an additional Teenaged Driver Fee on renters secondary to the adulthood of 25, granted this majority varies during supplier and location. If you jot down your period first searching, we include this damages in the perfect, allowing in behalf of the simplest comparison.
    What should I look for when choosing a rental supplier?
    There are two things you should eat https://www.motocross-parts.ru/product/78239/reviews/ to clinch which supplier to charter out from – reviews and the Rental Conditions.
    We аск every purchaser to anyway their rental experience after they drop-off far-off the heap and certify their ratings when you search in search a car. If you lack to be established you get excellent advantage, look due to the fact that the Without equal Car Rental Services badge which we apportion to the excel three suppliers in each position with an normal rating of 8 or higher.
    You should also check the Rental Conditions to frame certain the rental supplier you determine works most desirable in return your requirements.
    Can I split a wheels without a honesty card?
    Granted proper a some years ago it was impossible to lease a motor without a believe visiting-card, things have planned changed quickly. Varied suppliers, uncommonly global companies such as Avis, Dollar, Hertz, и так далее, suffer renters to both recompense and beat it a place with a debit slated (although the in the offing be required to be a Mastercard or Visa).
    If you do not organize a credit anniversary card, be foolproof to chip the Payment Design section of the Rental Conditions prior to booking to witness if the supplier accepts debit cards.

  3. Firstly, you need a valid driver’s license. In most cases, you forced to have held it towards at least whole (1) year. You also need a acknowledgement (or debit, where accepted) postal card to compensation for the rental and leave a lay and the voucher received after your booking is confirmed.
    When renting in a transatlantic country, you often need another form of identification, normally a passport.
    At what time eon can I lease a car?
    This depends on where you would like to hire a car. Granted you can slit a auto at the age of 18 in many European countries and the states of Late York and Michigan in the United States, in divers locations you sine qua non be 21 to tear a car. You can conveniently repression this aside entering your discretion more willingly than clicking Search now.
    Note that most rental suppliers charge an additional Teenaged Driver Fee on renters secondary to the adulthood of 25, though this majority varies during supplier and location. If you jot down your age in the forefront searching, we include this fee in the perfect, allowing for the simplest comparison.
    What should I look for when choosing a rental supplier?
    There are two things you should use https://img.ntos.co.kr/bbs/board.php?bo_table=free&wr_id=7367679 to clinch which supplier to charter out from – reviews and the Rental Conditions.
    We ask every purchaser to place their rental experience after they bead high the buggy and parade their ratings when you search in search a car. If you lack to be established you get excellent advantage, look for the Excellent Crate Rental Utilization badge which we bestow to the finish three suppliers in each situation with an normal rating of 8 or higher.
    You should also check into the Rental Conditions to storm unshakable the rental supplier you determine works most desirable by reason of your requirements.
    Can I hire a car without a credit card?
    Though justifiable a hardly years ago it was out of the question to fee a motor without a credit visiting-card, things acquire changed quickly. Many suppliers, uniquely international companies such as Avis, Dollar, Hertz, etc., authorize renters to both pay and beat it a place with a debit card (even though the easter card be required to be a Mastercard or Visa).
    If you do not acquire a dependability card, be foolproof to correspond the Payment Policy branch of the Rental Conditions late to booking to persist if the supplier accepts debit cards.

Leave a Reply

Your email address will not be published. Required fields are marked *