Page 1 of 1

Support Explain Plan for Vertica.

PostPosted: Thu Apr 03, 2014 5:22 pm
by starsailor
Would it be possible to support viewing Vertica query plans in the Explain Plan output tab. Vertica's EXPLAIN command is similar to Oracle's which is already supported so a simple text view would be quite simple. Additionally, Vertica (at least 6.1+) also outputs the query plan in GraphViz format at the end of the EXPLAIN command output, so a graphical query plan view for Vertica would only involve rendering the GraphViz formated stream in the Explain Plan tab. This would be a huge addition for DBeaver user on Vertica because big data and performance is always what you're using Vertica for.

Re: Support Explain Plan for Vertica.

PostPosted: Sun Apr 06, 2014 7:48 pm
by Serge
To implement "Explain Plan" for Vertica (as well as for any other database) DBeaver has to have Vertica extension (which will provide additional metadata, additional SQL processing functions, execution plan, etc).
Till then DBeaver will use simple Generic driver which doesn't support such thing as "explain plan".
Hopefully we'll have a Vertica extension at some day - if there will be some volunteer(s) who will write it ;)

Regards

Re: Support Explain Plan for Vertica.

PostPosted: Sun Oct 12, 2014 1:35 am
by starsailor
Serge,

What all would it take to write the explain plan extensions for Vertica. Are the any DBeaver extension API docs. It doesn't seem too different from other vendors explain plan commands, i.e. Oracle, so if the were API docs it's probably more of a port of an existing extension for another database as opposed to writing one from scratch.

Re: Support Explain Plan for Vertica.

PostPosted: Mon Mar 23, 2015 6:06 pm
by rrsolver
Hey Serge,

Can I take a moment to reiterate Starsailor's question.

What would it take to write a Vertica Extension?
Is there an extension that can be viewed as an example?
Is there anything else that can be done to support development of a Vertica extension?

It sounds like these issues could be resolved by a Vertica Extensions
1) Explain Plan Support
2) Proper keyword highlighting
3) Complete Table DDL in the table properties. Currently it doesn't show any projection information and you have to SELECT EXPORT_OBJECTS('','schema.table_name'); to get the full table information.

Re: Support Explain Plan for Vertica.

PostPosted: Tue Mar 24, 2015 12:47 pm
by Serge
Hi,

As usually - it depends. Generally if we'd talk only about execution plan, tables DDL and keywords then it is not a big deal. It can be done similarly to how PostgreSQL extension was done. It is tiny, just a few additional functions needed (although execution plan support maybe more complicated).
If we'd talk about fully-functional extension (which supports all non-standard entities, user/sessions management, maybe some non-standard data types, etc) then it is more complicated. Could be similar to MySQL extension.

Unfortunately I myself don't even have access to any live instance of Vertica and can't implement even first type solution.
If you familiar with Vertica internals (even better if you know Java) - please write me on serge@jkiss.org, we'll figure something out.

Regards

Re: Support Explain Plan for Vertica.

PostPosted: Wed Mar 25, 2015 1:13 am
by rrsolver
Hey Serge,

Having a vertica equivalent of the PostgreSQL extension would be awesome and I'd love to help out with that extension. Personally, i wouldn't mind if a fully featured extension was postponed as a 2.0 improvement as most of my needs would be met with the Table DDL, Keywords, & execution plan.

In regards to you not having a live instance of vertica to test on, can I point you to the . As far as I know the community edition has all of the features of the enterprise edition, the only difference being that the community edition has several size limits and the community edition is free.

I'm somewhat familiar with vertica internals (learning more everyday) and would be happy to help if you had questions.

Sadly, I don't know java.