«

»

Jun 12 2015

Nutanix Erasure Coding

“VMTurbo"

For those of you who runs the Nutanix platform or have seen Nutanix presentations understands that the Nutanix Distributed FileSystem (NDFS) stores data using replication factor (RF) 2 or 3. This means that the file system stores either 2 pieces or 3 pieces of the same data to deliver availability and this is customer decision and configuration. Replication factor is a high performance operation without traditional RAID penalty.

To make disk usable calculations easy you can:

  • Multiply your RAW capacity with 0.5 (50%) when using RF2
    • This means we could store data pieces X & Y according to the following in a 4 node Nutanix cluster.
      Nutanix NodeData copy
      1X
      2Y
      3X
      4Y
  • Multiply your RAW capacity with 0.33 (33%) when using RF3
    • This means we could store data pieces X & Y according to the following in a 4 node Nutanix cluster.
      Nutanix NodeData copy
      1X
      2XY
      3XY
      4Y

Up until today Nutanix has offered Compression and Deduplication as space saving features and on top of space savings the features also delivers additional performance in many cases.

During the Nutanix .Next conference (8 June 8 – 10 June) the Nutanix Erasure Coding (EC) feature was announced. Erasure coding works at the Nutanix Extent Group level. This will help you save additional storage capacity and the below table helps you get an understanding of how much space you can actually save.

Nutanix NodesRAW TBRF2 TBEC TB
A B P *603040
A B P U8040∼53
A B C P U1005075
A B C D P U1206096
A B C D E P U14070112

* 3 Nodes are not supported but can be enabled for testing purposes if needed.

Nutanix Nodes explanation:

  • A = Nutanix Node used for data
  • B = Nutanix Node used for data
  • C = Nutanix Node used for data
  • D = Nutanix Node used for data
  • P = Nutanix Node used forParity
  • U = Unused or Nutanix node avoided by data and parity

So EC means you don’t have to size for your logical requirement times 2 for RF2 and/or your logical requirement time 3 for RF3. You can use the below overhead instead:

  • 3 Nutanix Nodes = 1.5
  • 4 Nutanix Nodes = 1.5
  • 5 Nutanix Nodes = 1.33
  • 6 Nutanix Nodes = 1.25
  • 7 Nutanix Nodes = 1.25

I have tested EC in my lab, and on top of the space savings i had with compression, EC added an additional 22,5% space savings which is really great. Additional tests will be added when i get the time.

You activate EC on a container level via the PRISM by highlight the Container -> click Update -> click Advanced and mark the check box “ERASURE CODING”

Screen Shot 2015-06-11 at 13.05.10

Another way would have been to use the ncli available in each CVM:

  • ncli container edit name=<ctr_name> erasure-code=”X/Y”

The Erasure Coding option is also available when creating a new Nutanix Container.

Since Nutanix Operating System (NOS) version 4.1.3 released by Nutanix 2015-06-10 the Erasure Coding feature is actually available as a tech preview feature meaning you should not use it production systems.

 

 

2 comments

  1. Nikolay Markov

    Thank you for the article, just quck correction “Multiply your RAW capacity with 0.66 (33%) when using RF3” have to be 0.33 (33%).

  2. magander3

    Thanks, just updated the blog post

    //Magnus

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">