Scale-out architecture and why it is important when architecting a storage solution.
I had an interesting discussion with an architectural firm the other day. Most of the discussion was around scaling for the future. In our discussion we talked about the linear scalability of the ISE technology and he pointed out that while that made a ton of sense for his block-access requirements he was a little concerned around the unstructured data, as well as some plans utilizing NFS for some of his server and desktop virtualization needs. The last thing he wanted to worry about was changing his architecture in 12 to 24 months due to growth or technology changes. So we started working on architecting a solution utilizing our new “scale-out” ISE-NAS solution.
You’ve probably heard a lot about scale-out type architectures. 3PAR sort of led the way with their ability to scale out (at least to eight) their storage controllers to their fixed-backend backplane-attached disk drives and it offers up a pretty unique solution (at least in a block storage architecture). 3PARs problem is they don’t really have an answer for the same scalability around unstructured data (NAS). Don’t get me wrong, they list 5 NAS companies on their website, 1 is out of business and the other 4 have either been acquired by their competitors or is a straight up competitor. This scale out architecture seems to have caught on in the emerging NAS Gateway devices like Symantec FileStore and Isilon. Clearly both FileStore and Isilon are very different on the scale-out architecture. More below.
So first things first, let’s describe what a “scale-out” architecture means, at least to me that is. When architecting solutions, it’s always important to put a solution together that can grow with the business. In other words, they know what they need today, and they have an idea what they might need in 12 months, but 24 – 48 is a complete crap shoot. They could be 5X the size, or just 2X the size but the architecture needs to be in place to support either direction. What is sometimes not discussed is what happens when you run out of either front-side processing power, backend IOPS or usable capacity? Most storage solutions give you 1 to 2(ea) clustered controllers, and a fixed number of disk-drives they can scale to dependent on the specific controller you purchase. From a front-end NAS solution most of them only scale to 2 nodes as well. If you need more processing power, more backend IOPS or capacity, you buy a second storage solution or you spend money to upgrade storage controllers that are not even remotely close to being amortized off the CFO’s books. If you look at the drawing above, you can clearly see what scale-out architecture should look like. You need more front-side processing, no problem. You need more backend IOPS or Capacity, no problem. They scale independently of each other. There is no longer the case of “You love your first <insert storage/NAS solution of choice> and you hate your third, fourth etc etc. Isilon is probably a great example of that. They tout their “scale-out” architecture but it clearly has some caveats. For example, If you need more processing power, buy another Isilon, you need more capacity buy another Isilon, you need more backside IOPS…well you get the idea :) It’s not a very efficient “scale-out” architecture. It’s closer to a Scale up !!
Let’s also not loose site on the fact that this is a solution that will need to be in place for about 4 to 5 years, or the amount of time in which your company will amortize it. The last thing you want to have to worry about is a controller upgrade, or net-new purchase because you didn’t size correctly or you under/over guessed your growth or even worse, years 4 and 5 hardware maintenance. This is especially true if the vendor “end of life’d” their product before it was written off the books !!! Cha-CHING.
So this company I was working with fluctuates with employees depending on what jobs they are working on. It could go from 50 people to 500 people in a moment’s notice and while they would LOVE to size for 500, most of the time they were around 50 to 100. So as I mentioned above, we started architecting a solution that incorporated our ISE-NAS solution based on Symantec’s FileStore product. When coupled with our Emprise 5000 (ISE) gives them the perfect scale-out solution. They can start with 2-nodes and grow to 16 by simply adding NAS engines (x86) to the front end. If they need more capacity, or backend IOPS, we can scale any direction independent of the rest of the solution. Coupled with our predictable performance we gave them the ultimate ability to size for today, and know exactly what they can scale to in the future.
In the world of “Unified Storage”, cloud computing and 3 to 5 year project plans, its important to consider architecture when designing a solution to plan for the future. Scale-Out architecture just makes a lot of sense. BUT – do your homework. Just because they say “scale-out” doesn’t really mean they are the same. Dual-Clustered controllers – or even eight-way – will eventually become the bottle neck and the last thing you want to worry about is having to do a wholesale swap-out/upgrade of your controller nodes to remove the bottleneck or worse, have to buy a second (or third) storage solution to manage!!