Quick review of InfiniDB 4

Quick review of InfiniDB 4

PREVIOUS POST
NEXT POST

I’ve mentioned InfiniDB before in a previous post titled, “Star Schema Bechmark: InfoBright, InfiniDB and LucidDB,” but it’s been 4 years since that was published. Recently I evaluated column-storage solutions for Percona Cloud Tools and took another look at InfiniDB 4. There was the release of version 4, which I think is worth attention.

What is interesting in InfiniDB 4:

  • Fully OpenSource, GPLv2. There is no reserved features for Enterprise version
  • Multiple CPUs are used even for single query execution
  • WINDOW functions in SQL queries

What is WINDOW functions? In short, in regular SQL for a given row you can’t access to previous and next rows (at least not without complex SELF JOINS) and WINDOW function allows that.

As a basic example:

So for given row (start_ts) we access not only current query_time, but also a previous query_time: LAG(query_time). So the result looks like:

It gives a lot of interesting possibilities, like calculation of a growth or decline for time periods.

I still continue to evaluate different solutions but I decided to share this about InfiniDB, as it looks quite interesting now.

PREVIOUS POST
NEXT POST

Share this post

Comments (7)

  • ben Reply

    how do these compare in performance to a self join (on auto_increment_key = auto_increment_key – 1 for example?)

    would love to see a refreshed version of “Star Schema Bechmark: InfoBright, InfiniDB and LucidDB”! They have also progressed a little

    February 25, 2014 at 9:02 am
  • Jim Tommaney Reply

    Hi Vadim,

    Thanks for the nice write-up, the windowing functions are very powerful. There is a scheduled talk on “Windowing functions in MySQL with InfiniDB” at Percona Live on April 2nd. http://bit.ly/1mF1IVl

    Cheers,
    Jim T

    February 25, 2014 at 10:22 am
  • Peter Zaitsev Reply

    Nice to see InfiniDB going completely open source for the core engine. I think this could be game changer for adoption of analytic storage engines for MySQL!

    February 25, 2014 at 10:53 am
  • Vincent Janelle Reply

    Ben your example, what if the key isn’t sequential?

    February 25, 2014 at 12:17 pm
  • Shlomi Noach Reply

    When I catch some time to breather I’ll publish some of my experiments and benchmarks comparing InfiniDB and Infobright, including some of what I think are show stoppers. Probably after Percona Live though 🙁

    February 25, 2014 at 1:44 pm
  • Ali Alwash Reply

    Hi Vadim,

    This really looks interesting, can be usefull in some cases 🙂
    Thanks for sharing your information.

    Cheers,

    Ali Alwash

    February 26, 2014 at 4:50 pm
  • Baruch Lvovsky Reply

    Indeed,it is interesting,for InfiniDB, but existing some years.See Oracle Analytic Functions.

    February 27, 2014 at 8:06 am

Leave a Reply