News for hackers. Stuff that matters.
Re:Peloton – a relational database designed for autonomous o... by zippoxer on Saturday January 21, 2017 @11:56AM (#13450870)
OP here. Peloton has been posted here before, but didn't get any attention.

I think this database is very interesting even if you don't care about the time saving part of it, since it claims to be a hybrid (OLAP and OLTP), it implements postgres' wire protocol and it claims to compile queries to machine code using LLVM [1].

[1]: https://www.youtube.com/watch?v=mzMnyYdO8jk (slideshow: http://www.cs.cmu.edu/~pavlo/slides/selfdriving-nov2016.pdf)

Re:Peloton – a relational database designed for autonomous o... by arielweisberg on Saturday January 21, 2017 @08:18PM (#13453032)
Andy Pavlo always tries to spice things up and his lectures and presentations are a treat.

He is on a list of people of mine that fits on 10 fingers. James Mickens is in there.

His work on H-Store was great. I spent 6 years working on VoltDB which is a commercial spinoff of H-store and it was a formative experience for me.

Re:Peloton – a relational database designed for autonomous o... by hokkos on Saturday January 21, 2017 @04:16PM (#13452205)
Strange talk and slides, I am not sure if he is serious or not.
Re:Peloton – a relational database designed for autonomous o... by sceadu on Saturday January 21, 2017 @07:02PM (#13452813)
He's joking about the rehab I'm sure...that's his style (I like it personally).

BTW, here are the video lectures to the graduate database course he mentioned in the presentation, where students were developing features for Peloton as part of the course (they're great IMO):

https://www.youtube.com/watch?v=MyQzjba1beA&list=PLSE8ODhjZX...

Re:Peloton – a relational database designed for autonomous o... by aerioux on Sunday January 22, 2017 @04:59AM (#13454495)
both in person, lectures, and videos - he has a very different style than many others
Re:Peloton – a relational database designed for autonomous o... by buremba on Saturday January 21, 2017 @07:44PM (#13452942)
The lectures are great.
Re:Peloton – a relational database designed for autonomous o... by jarulraj on Sunday January 22, 2017 @11:31AM (#13455841)
Thanks for the shout-out!
Re:Peloton – a relational database designed for autonomous o... by Jweb_Guru on Saturday January 21, 2017 @05:53PM (#13452538)
Side note, but I really dislike the current trend (in in-memory databases, to be clear) of not bothering to include any real provisions for durability and justifying it by saying "NVRAM exists." It effectively doesn't for anyone who need to be able to deploy to off-the-shelf environments, and it's super expensive (and if you're going for performance, like most of the research projects are, countering by using the database in a clustered configuration would be counterproductive). Are there any cloud providers who provide NVRAM in any configuration?
Re:Peloton – a relational database designed for autonomous o... by quickben on Saturday January 21, 2017 @10:44PM (#13453478)
But, it provides a dead easy way to publish a research work, claim insane speedups, and not worry about disk journals, caches, in flight data corner cases when VM is snapshoted, etc.
Re:Peloton – a relational database designed for autonomous o... by fulafel on Sunday January 22, 2017 @04:41AM (#13454452)
Flash storage is nvram, so yes, hosting companies offer it.
Re:Peloton – a relational database designed for autonomous o... by allyraza on Sunday January 29, 2017 @01:56AM (#13512698)
there are many types of NVM's not all of them are available on most hosting providers one of the big player offering ssd on cloud is digitalocean
Re:Peloton – a relational database designed for autonomous o... by Jweb_Guru on Sunday January 22, 2017 @12:17PM (#13456025)
Not in the sense that people mean in these papers, and you know it. It doesn't have even close to the same performance characteristics.
Re:Peloton – a relational database designed for autonomous o... by inconclusive on Saturday January 21, 2017 @07:51PM (#13452965)
The idea of write-behind logging is slick.

http://www.cs.cmu.edu/~pavlo/papers/p337-arulraj.pdf

Re:Peloton – a relational database designed for autonomous o... by jarulraj on Sunday January 22, 2017 @11:27AM (#13455822)
Thanks :) We believe that non-volatile memory (NVM) will be a game-changer for database management systems [1].

[1] https://www-ssl.intel.com/content/www/us/en/architecture-and...

Re:Peloton – a relational database designed for autonomous o... by tmd83 on Tuesday January 24, 2017 @01:33AM (#13469260)
Does anyone know what happens after the query plan is generated in most database? I'm assuming individual step, like index scan, hashjoin are coded already and the plan steps are iterated and respective methods are called? So the execution steps are already compiled but the step traversal is kind of interpreted. With Peloton LLVM engine everything is merged together in a single sequence of machine code?

How much advantage does this give you? Is there really so many steps in the execution plan (the visible steps are usually < 50) but what about the internal actual compiled steps? Unless this is allowing merging and further simplification steps identifying redundant operation that gets trimmed of not sure where 100x performance improvement comes from.

Though I remember seeing the scala based in-memory query engine that was sort of doing simplification of the actual steps and doing very well in benchmark, maybe this is similar.

Re:Peloton – a relational database designed for autonomous o... by buremba on Saturday January 21, 2017 @06:10PM (#13452625)
I wonder why they try to support both OLTP and OLAP workloads. Supporting both of these workloads requires too much work (both row and columnar storage types, different algorithms for both storage and querying etc) and they didn't even prove that autonomous systems (which is the main point of the project) can replace the existing databases.
Re:Peloton – a relational database designed for autonomous o... by jarulraj on Sunday January 22, 2017 @11:19AM (#13455782)
Great question! There happens to be an autonomous mechanism for supporting hybrid workloads (OLTP & OLAP). Peloton supports hybrid storage layouts that are automatically and dynamically adapted over time based on the workload patterns. Row and columnar storage types are special cases of hybrid storage layouts.

This is a promising area of ongoing research. If you are curious about this kind of autonomous tuning of storage layout, you might want to check this out [1].

[1] https://www.cs.cmu.edu/~jarulraj/papers/2016.tile.sigmod.pdf

Re:Peloton – a relational database designed for autonomous o... by allyraza on Sunday January 29, 2017 @02:00AM (#13512720)
I guess it is a trend currently with modern MMDB's (MEMSQL,HyperDb etc) have support for both OLTP & OLAP workloads. You can checkout the git repo give it a spin see if it hold up to the claims.
Re:Peloton – a relational database designed for autonomous o... by manigandham on Sunday January 22, 2017 @02:07AM (#13454067)
http://www.memsql.com/ does this today. Fast, distributed, rowstore + columnstore, relational database with mysql protocol.
Re:Peloton – a relational database designed for autonomous o... by buremba on Sunday January 22, 2017 @05:15AM (#13454531)
However Peloton also aims to be an autonomous system. That's a lot for undergrad and grad students so I'm not sure if he wants Peloton to be stable in a near future.
Re:Peloton – a relational database designed for autonomous o... by aerioux on Sunday January 22, 2017 @04:58AM (#13454490)
Also fits in the niche between people who want both possibilities - though the onus is on the authors to show that it actually is just as good
Re:Peloton – a relational database designed for autonomous o... by gigatexal on Saturday January 21, 2017 @07:43PM (#13452941)
This sure has a lot to live up to: trying to do two thing and do them Well isn't very unix-y. There's a reason relational database are set up to have oltp schemas (highly notmalized tables for supporting transactions etc.) and olap schemas (star schemas for example, large sometimes flat fact and dimension tables etc.). Also I'm not sure about the learning part: any decent database these days will cache frequently used data and tables can be built as in-memory ones.
Re:Peloton – a relational database designed for autonomous o... by aerioux on Sunday January 22, 2017 @04:57AM (#13454486)
> addressing your caching point

so from my understanding - the learning part isn't frequently used and caching, it's (attempting to be) generalized workload learning, the part of understanding that every DBA should do but usually doesnt.

If that is successfully and is even marginally able to predict workload skews, then the scheduling of operations can be significantly more efficient -- you're essentially reducing entropy in your database massively.

Re:Peloton – a relational database designed for autonomous o... by gigatexal on Sunday January 22, 2017 @08:08AM (#13455016)
Any team of database admins/engineers worth their salary plans for capacity, fixes inefficient queries, And works with development on future goals for what they want out of the database layer.
Re:Peloton – a relational database designed for autonomous o... by michaelmior on Sunday January 22, 2017 @08:36AM (#13455124)
And you don't think it would be valuable to be able to automate many of those tasks?
Re:Peloton – a relational database designed for autonomous o... by gigatexal on Sunday January 22, 2017 @11:16AM (#13455772)
I agree it would but my premise is that I doubt it can be.
Re:Peloton – a relational database designed for autonomous o... by mamcx on Sunday January 22, 2017 @11:22AM (#13455792)
Is very rare to have a DB that not need both oltp/olap workloads.

All db-based apps end fast the need requeriments for transactional code and move into "infinity-reporting-requests".

For certain ERP I work on in the past, it have at least 300 reports in the base package. Most request was for more reports specialized for each customers. And additions to the transactional code was in part driven by the need to add more data for the reports!

So, I think have both styles is exactly what "everyone" want. Even folks that get stuck with NOSQL databases.

---

I have thinking very much about this, I consider the ideal architecture is a relational-db with decoupled modules that work like this:

Write:

Commands -> WAL -> WaLProcessorAndRejector -> EventLog -> EventLogDispatchToOneOrMoreOf:

- Nothing. EventLog just is history - Caches - Relational Tables for up-to-date view on data - Columnar/Index for speed up part of the reports

Read:

ReadRequest -> ReadDispatchToOneOf:

- EventLog - Caches - Relational Tables - Columnar/Index

The need to be modular is that what is need can change by need.

Re:Peloton – a relational database designed for autonomous o... by jarulraj on Sunday January 22, 2017 @11:24AM (#13455810)
That's correct! This is the reason why we support both OLTP and OLAP workloads in Peloton.
Re:Peloton – a relational database designed for autonomous o... by gigatexal on Sunday January 22, 2017 @07:31PM (#13458681)
We do just fine with a data warehouse and a bunch of traditional OLTP databases.
Re:Peloton – a relational database designed for autonomous o... by jarulraj on Sunday January 22, 2017 @11:22AM (#13455795)
We certainly do :) There happens to be an autonomous mechanism for supporting hybrid workloads (OLTP & OLAP). Peloton supports hybrid storage layouts that are automatically and dynamically adapted over time based on the workload patterns. Row and columnar storage types are special cases of hybrid storage layouts. This is a promising area of ongoing research. If you are curious about this kind of autonomous tuning of storage layout, you might want to check this out [1].

[1] https://www.cs.cmu.edu/~jarulraj/papers/2016.tile.sigmod.pdf

Re:Peloton – a relational database designed for autonomous o... by leftnode on Saturday January 21, 2017 @05:32PM (#13452463)
How old is this project? I wouldn't be surprised to see a cease and desist from the maker of the exercise bike.
Re:Peloton – a relational database designed for autonomous o... by wcarron on Saturday January 21, 2017 @11:53PM (#13453643)
Peloton is in fact the French word for platoon. I'd be highly surprised if the bike maker had the legal standing for issue infringement claims. Just as you can't copyright the word "bicycle", peloton is used widely enough that they should be fine. Then again, Jade the preprocessor was forced to rebrand as Pug.
Re:Peloton – a relational database designed for autonomous o... by rasjani on Sunday January 22, 2017 @07:48AM (#13454956)
Peloton is also Finnish word and it means 'fearless'
Re:Peloton – a relational database designed for autonomous o... by kod on Sunday January 22, 2017 @11:23AM (#13455799)
Copyright has nothing to do with this. You certainly can register bicycle as a trademark, bicycle brand playing cards, for instance.
Re:Peloton – a relational database designed for autonomous o... by lumista on Sunday January 22, 2017 @06:54AM (#13454815)
Peloton is also Finnish word and means fearless.
Re:Peloton – a relational database designed for autonomous o... by bjterry on Saturday January 21, 2017 @08:08PM (#13453008)
Peleton is a word referring to the main group in a bicycle endurance race, so it's not the same as calling your software "Wal-Mart." In this case it seems like the fact they are in completely different markets would be sufficient.
Re:Peloton – a relational database designed for autonomous o... by daenney on Saturday January 21, 2017 @06:11PM (#13452626)
The first commit was:

  commit 35823950d500314811212282bd68c101e34b9a06
  Author: jarulraj <[email protected]>
  Date:   Thu Dec 18 16:41:48 2014 -0500
Take a look at the different graphs on GitHub, like code frequency, to get a better idea: https://github.com/cmu-db/peloton/graphs/code-frequency
Re:Peloton – a relational database designed for autonomous o... by zirok on Sunday January 22, 2017 @01:25AM (#13453920)
Peloton also means fearless in finnish, so the name could be based on that.
Re:Peloton – a relational database designed for autonomous o... by rosser on Saturday January 21, 2017 @11:57PM (#13453659)
That's not how trademarks work.