Pliops, an Israeli startup founded in 2017 has designed a PCIe hardware acceleration card marketed as the Pliops Storage Processor (PSP). This card hides a “hardware-enabled key-value (KV)-based storage engine”, according to their website, and quoting further, it “dramatically increases the number of transactions per second and expands capacity for the most demanding applications”.
A Better Way To Do I/O
One of the challenges identified by the folks at Pliops is that of amplification. Amplification can be caused by reads, writes or by space usage, and describes the cumulated effect of these operations for a single front end I/O operation. Page 3 of the Pliops Storage Processor Overview gives more ample detail (no pun intended) about amplification challenges, but we can cite wear leveling and garbage collection operations happening inside SSDs as prime examples.
When we look at the picture above, we see on the left side that applications mentioned have a “Storage Engine” layer which takes care of storage operations. This layer is gone on the right side and replace with the NVMe driver + Pliops kernel module. In effect, what Pliops does is that it allows the applications to talk directly to it as a replacement storage engine layer.
What matters here is that on the left side, low-level operations are handled by a software layer and data is written / read to each individual SSD, depending how the platform is optimized.
On the right side, the PSP implementation fully replaces existing storage engines and will take care of a plethora of data processing operations directly within the PSP, at a significantly faster pace, and without the impairing amplification effects. The effects claimed are faster queries / second, faster transactions per second, reduced storage consumption and reduced read/write amplification.
As we can see in the picture below, there seems to be three areas where Pliops delivers instant value. One is databases, file systems and object stores (on the left). The middle section shows modern databases as well as certain filesystems and KV object stores. The right sections focuses more on data warehouses, analytics and BI platforms such as SAP HANA.
Pliops have several documents available that detail the impact of their PSP on MySQL and Redis, for example. They also have an excellent calculator showing the dramatic consolidation ratios that can be achieved by using a PSP with Redis.
The PSP is directly attached to a compute server or to a storage server. It is compatible with Linux applications and hypervisors.
Deployments options 1 and 2 below are relatively deja-vu, but option 3 (Storage Engine as a Service) is where we expect Pliops to make a huge difference – or rather, a huge exit. And as a young, innovative startup (founded in 2017), we can see why it’s important to have this deployment model upfront – one that is especially appealing to major public cloud providers on the hunt for exclusive technological differentiators.
The challenges faced by DB admins may not be exciting to the entire IT community, they remain nevertheless huge pain points and Pliops demonstrates that when the issue is looked at thoroughly, innovative solutions can be found that deliver a lot of value.
While we regret that we can’t use a Pliops card to mine cryptocurrencies or in lieu of the nowhere to be found latest and greatest GPU cards, we can at least rejoice at the fact that many DB admins will be happy about them. And we can hear the chorus of SSD drives happily joining in – their endurance, often sacrificed on the altar of sub-optimal write optimization, spared by the PSP.
Pliops is one of those very laser-focused startups intended at solving one single problem, but solving it well. While the solution indeniably has value for enterprise consumers, we can’t help but think that the SEaaS deployment model is where the solution is headed at: purchased by a major public cloud vendor, and baked into their architecture to deliver uncompromising performance to customers.
Pliops presented at Storage Field Day 21: