The “Google-like” software storage system that Berlin-based Quobyte introduced last year is getting an update.
With its new Quobyte 1.3 release, the German startup added space-saving erasure coding to protect file data, boosted the performance of block storage, enhanced the product’s management capabilities, and extended support from Linux to Windows.
The Quobyte software runs on commodity server hardware, uses a highly scalable POSIX-compliant parallel file system, and supports file, block and object storage. CTO and co-founder Felix Hupfeld compared the system to technology in use at Google, where he and co-founder Björn Kolbeck once worked as engineers in storage infrastructure.
Hupfeld said “Google-like storage” works with all workloads and cluster sizes and runs on any infrastructure, with only a few people needed for maintenance because the system is highly automated and fault tolerant.
Quobyte’s newly added erasure coding allows applications to directly write erasure-coded files, making the system useful for archival and primary storage, according to Hupfeld.
“We make erasure coding a primary storage access method,” he said. “We’re not recoding data in the sense that we write everything replicated and then recode.”
Hupfeld said modern CPUs are fast enough to render the resource impact of erasure coding irrelevant. He said there’s also no significant performance impact with file-based sequential workloads, such as media assets and engineering and scientific data.
“Where erasure coding is very efficient is when you write a file from beginning to end and don’t do in-place updates, like a virtual machine,” he said.
Hupfeld said performance becomes an issue with erasure coding for random I/O with block storage. He wrote in a blog post, “For a random write, the coding engine needs to read all data of the coding group first, recompute the coding parts, and then write out the modified original data along with the coding data.”
“For virtual machines, it would be a complete disaster if you used erasure coding because you’re recomputing data all the time,” he said in an interview.
Hupfeld advises against the use of erasure coding for virtual machines (VMs) and databases. He said customers should use replication with those block-based workloads.
Quobyte deployments range in capacity from less than 50 TB to petabytes. Customers include a German cloud service provider, an online video recording company, a container service provider and a U.S.-based university, according to Hupfeld. He estimated the average capacity at 200 TB and said users tend to look for alternatives to NetApp and Isilon at about 100 TB.
The Quobyte system makes three copies of data for full fault tolerance, so a customer with 100 TB of data would need 300 TB of storage. Using erasure coding with file data, the storage requirement could drop to 140 TB or 150 TB, depending on the encoding the customer chooses, Hupfeld said.
Quobyte’s “standard 8 + 3” erasure coding – or eight “data parts” and three “redundancy parts” – would enable the system to tolerate a failure of three storage drives.
“The good thing about erasure coding is it’s not just more efficient, it’s also more fault tolerant,” Hupfeld said. “You can lose more hard drives without losing data. And that just make it even a better candidate for archival data.”
Another file-centric enhancement with the 1.3 release is fully parallelized metadata operations. Quobyte rewrote one of the core parts of the database system to take advantage of modern multicore CPUs, Hupfeld said.
Quobyte also extended the product’s management capabilities with support for cross-interface access control lists (ACLs), integrated multi-tenancy, and hierarchical quota support for organizations with large-scale systems.
For block storage, Quobyte optimized the entire I/O path to improve performance and reduce latency to sub-milliseconds when system runs “on good hardware,” Hupfeld said.
The Quobyte software was in limited availability last year and became generally available in January. Hupfeld said the major focus in future product releases will be even more performance improvements.
“If you have more performance, the less hardware you need, the less power you need, and so on,” Hupfeld said. “Performance is very important.”
Since the product’s launch, Quobyte has added support for major container platforms, including Docker and Mesos. Hupfeld said a Quobyte volume driver would be available with the Kubernetes 1.4 release.
“What people are sometimes doing is attaching block storage devices to containers, but then this always gives these very tight couplings between containers and the data,” he said. “With Quobyte as a file system, you can give applications access to specific data like you used to in non-container environments.”