Technophilia

Kickfire and Xtremedata, a common theme?

Posted by amrithkumar on April 13, 2008

AddThis Social Bookmark Button

Over the weekend I’ve been reading more about Kickfire and another company, Xtremedata.

Kickfire

If you haven’t watched Kickfire’s slick demo (available on their home page) I recommend it highly. It is relatively easy to understand and follow along.

Since my previous blog about Kickfire, “Kickfire makes a splash“, I’ve learnt a little more about their product.

First, they identify two problems, the I/O bottleneck and the von Neumann Bottleneck. If you aren’t a computer scientist and this sounds like pseudo scientific mumbo jumbo to you, here is a simple explanation of these two terms.

I/O Bottleneck

Traditional data-warehouse tables have wide tables but many queries utilize only a small subset of the fields in the table. As the data is stored one row at a time, when processing such a query, a huge amount of data is transfered from the spinning platters on the disk over a disk interconnect, over a bus and into RAM where it can be read by the CPU. The CPU then proceeds to pick at a small fraction of the data that was read from disk and discards the rest. Transferring all the unused data from the disk into RAM causes I/O to be a bottleneck.

von Neumann Bottleneck

As processors speeds and memory sizes have grown significantly faster than the speeds of the interconnects between them, we have the thing called the von Neumann Bottleneck. In situations where the CPU is required to perform minimal amounts of computation on very large amounts of data, the impacts of the von Neumann bottleneck are more pronounced. From the preceding paragraph, you will observe that this is a description of the data warehousing situation.

So far, so good! The Kickfire demo goes on to say,

Proprietary commercial databases attempt to address this bottleneck by adding multiple CPU’s. Complex queries are broken into small parts that are parallel-ized over multiple CPU’s so that each can work on a small part of the problem. Then the result sets are brought together to deliver the answer. While this technique can provide fast performance it is expensive in terms of hardware ongoing power and operational costs. And it doesn’t work for MySQL because this database can only take advantage of one CPU core per single query.

Sounds like a legitimate limitation in MySQL (and for that matter in many other non-parallel databases). Kickfire claims to have invented a “SQL Chip” with the power of “10’s of CPU’s” that supposedly eliminates the von Neumann bottleneck and the “data flow architecture” enables query parallelization on a single chip.

DIAMOND NOTES writes (Kickfire Update),

It is a MySQL appliance that contains a new storage engine and the equivalent of a graphics accelerator chip for your SQL read queries

Farhan Mashraqi points out (Kickfire looking to push MySQL limits) that Kickfire uses SSD, a detail that is not mentioned in their online “demo”.

Curt Monash has some more information about Kickfire in his post “Kickfire is de-cloaking“. He writes

But pending a briefing, I’m guessing that Kickfire’s sense is similar to what underlies the case for using CEP in BI.

This seems to be at odds with the Kickfire online “demo”.

XtremeData

XtremeData appears to have a much more compelling story to tell. I strongly recommend the two minutes it will take you to register on their web page, the content they provide is well worth the effort.

You get to download their “VLDB Analytics Appliance” white-paper.

Therein you will find the following,

It is generally accepted today that scale-up on a large scale can only be achieved by the loosely coupled MPP approach. This scale-up philosophy has been applied consistently to the architecture of the XDI VLDB Appliance: the system consists of a shared-nothing, scalable cluster of Nodes. Each Node encapsulates a “Slice” of the necessary components: Storage + Server + RDBMS execution engine.

Note that this description fits equally well with a variety of current VLDB, BI/DW systems.

What sets XtremeData apart from the rest seems to be the fact that they have correctly determined that there is a whole class of problems including VLDB Analytics that could benefit from a processor that incorporates some additional attributes (they call it an FPGA Accelerator).

It is important to note that XtremeData also claims that their chips consume less energy. Their claim is that

FPGAs are very power efficient – they outperform CPUs on the Performance/Watt metric by 2-3 orders of magnitude.

The exceptional thing about ExtremeData is that they offer their product in an easy to use packaging; plug it into the CPU slot in your Commodity Of The Shelf (COTS) Server!

The following is a quote from their “VLDB Analytics white-paper”.

A VLDB (Very Large DataBase) Analytics Appliance is a complete, integrated system capable of sustained high-speed SQL processing against multi-terabyte databases. In particular, the highend configuration of the XtremeData VLDB Analytics Appliance is a single 19” rack, capable of sustained 1TB/min SQL query throughput. The rack encapsulates disk storage, COTS x86 based CPUs and custom hardware accelerators. The appliance runs an enhanced version of postgreSQL on standard Linux. The postgreSQL front-end interface has been fully maintained while the back-end has been optimized for parallel processing across multiple hardware accelerated nodes. The Appliance is optimized for the Decision Support Systems market.

To understand more about XtremeData and their FPGA Accelerator for COTS x86 platforms, read the following presentation by their CEO, Ravi Chandran at University of Mannheim in February 2007.

You can also see two short posts about XtremeData on Tom Briggs Blog at “XTremeData: Netezza Competitor or Partner?” and “Bits of Info about XtremeData”.

The common theme

Kickfire and XtremeData seem to have used custom hardware in their products and both of them appear to use it for the same reason. The nature of the data warehousing query is that a huge amount of information is stored but only a small subset of it is used in the processing of a query. And both of them appear to be based on FPGA’s.

There is more information available about XtremeData; there have been many demonstrations at a variety of HPC forums and there are several publicly available benchmarks that show that the product is very real.

Kickfire is at a relatively early stage and I’m sure that there will be more information about them before long. I’m reasonably certain that FPGA’s are at the core of their “SQL Chip” but they seem to go out of their way to avoid using the term.

The FPGA (maybe a worthwhile subject for a post) is also at the heart of one other data warehouse appliance, the Netezza Performance Server.

It is certainly an interesting time to be watching the BI/DW market. The explosion of data and the desire to bring useful information and actionable results from this mountain of data has certainly brought created some exceptional product ideas.

One Response to “Kickfire and Xtremedata, a common theme?”

  1. Keith Murphy Says:

    Just to clear up a small detail. I can assure you that the Kickfire product does not use SSD drives. That information was incorrect.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>