This post is part of a series of posts (starting with XtremIO - At the Bit Level) where I will explain not only the significant architectural failings of the XtremIO product, but also the fundamentally and deliberately misleading way they have presented their product to the market, in my opinion.
During EMC’s launch of their XtremIO product, they made a number of jaw dropping claims, which they now seem to be trying to pretend were never said, such as one XtremIO blogger who comments:
“One of the eye opening claims we made during our launch on November 14th was that the XtremIO array doesn’t have any system-level garbage collection processes. In the coverage and chatter that followed our launch we noticed that some people interpreted this to mean that the flash in our arrays was somehow impervious to the need for garbage collection, which of course is impossible. To be clear, all flash requires garbage collection. What matters is where and how it is performed. With XtremIO, performance is always consistent and predictable because garbage collection is handled in a very novel way, only possible with XtremIO’s unique architecture.”
What is the very novel way that XtremIO handles garbage collection? What is it about their architecture that is so unique that only their approach makes this possible? In this second post, we try and answer these questions, and we are sure the answers will surprise you.
But first let us clearly settle the issue that EMC did in fact try to get away with claiming they could do the impossible only to try and pretend “oh we didn’t mean that, you misinterpreted what we said.” To which I say, "yes you did, and no we didn’t."
Somewhere in the middle of the product launch, while (rightfully) pointing out the downsides of performing system level garbage collection, they make sure to point out that they do not do system level garbage collection. Is that why “some people interpreted this to mean that the flash in our arrays was somehow impervious to the need for garbage collection?” No, it wasn’t. What the reason was required very little interpretation at all.
What EMC did was equivalent to saying over and over that they were Vegan and didn’t eat any meat, *ever,* pointing out that competitors liked to eat hamburgers, and that they never eat hamburgers. All the while acting as if that meant it was ok for them to say they were Vegan, while eating chicken…
Let’s look at what was said during the XtremIO product launch that might have led to this “interpretation.”
C.J Desai (President, Emerging Technologies Division) said (and I really do quote, along with the [time marks] in his webcast:
- “not requiring any type of garbage collection at all requires the right architecture” [5:20]
- “ common AFA problems are any type of post processing that gets introduced whether it is related to deduplication or garbage collection makes the array inefficient and also wears out the flash” [6:20]
- “there is no garbage collection” [49:50]
Talking to this slide:
C.J says “we do not have garbage collection overhead”. [51:08]
Notice the “N/A” in the GC overhead section? The number of WPS? We will come back to these in Part II, to completely take apart any claim that XtremIO is an example of an advanced flash array architecture.
From the competitive “battle cards” somehow made public, for EMCs competitors SolidFire, Pure Storage and Violin Systems we see such statements as:
- “XtremIO inherently load balances across all drives and X-Bricks at all times without any distributed garbage collection process”
- No Garbage Collection✓
- “XtremIO utilizes eMLC SSDs … and does not move data once written. SolidFire uses cMLC consumer grade flash and experiences write amplification due to garbage collection.”
- “XtremIO does not garbage collect SSDs and has no performance penalty.”
So what is the “very novel way, only possible with XtremIO’s unique architecture” that they handle garbage collection?
“The array controllers in an XtremIO system do not garbage collect at all. With 25 SSDs (per X-Brick) garbage collecting as needed (and transparently to the XtremIO controllers), they do not need to. After all, the SSD manufacturers know their “flash” best. The drive controller inside the SSD is best equipped to garbage collect the media. Knowing this, and relying on it spares the array storage controllers from spending premium-processing cycles (and back-end I/O on the array) on garbage collection.”
Oh… so their novel and unique way of not requiring any type of garbage collection is……they let the SSDs do the garbage collection…….
Pardon me a moment while I go check the definition of the words “novel” and “unique”………. This will just take a moment and you can watch this until I get back:
As I suspected, my dictionary seems to say those words mean different things than EMC seems to think they mean. I wonder how that can be? In the words of EMC’s Chief Strategy Officer for the Symmetrix & Virtualization Product Group:
“When you don’t understand how something works, I guess all you CAN do is make sh*t up!”
As I continue to blog on the subject of XtremIO, we will see that in fact there is very little that it CAN do. Which is why I am making such a big deal out of what in my opinion is the intentionally misleading approach EMC has taken with regards to the launch of XtremIO.
If they are making statements so fundamentally yet demonstrably false, if they are claiming to have made great innovations that they did not make, if they are mischaracterizing their competition because it is the only way they can look attractive, then the question you really have to ask is this: if they are prepared to make such misleading statements and claims about things where such deception is so easily detected and they should have known that it would be detected, can you expect them to do anything less when they tell you things where they know they will not get caught? You know the answer don’t you?
EMC seems to believe that because they are EMC, they can say whatever they want and get away with it. Is that really the attitude you want your storage vendor to take with you?