Thread: Another idea for GSoC indexing project
Hi, everybody!
The major reason why we have so small number of GiST/SP-GiST/GIN implementations is that their interface function takes arguments of "internal" datatype (actually they are mostly pointers, not normal PostgreSQL datatypes). So, you actually can implement them in C. It discourages many users.
Idea of project is to provide alternative interfaces for GiST/SP-GiST/GIN which deal with composite types and arrays. Then users can write GiST/SP-GiST/GIN implementations on whatever they like SQL, pl/pgSQL, pl/Python etc.
Probably someone would like to put his hands on it?
With best regards,
Alexander Korotkov.
Sounds interesting, but this will also require a wrapper for this composite types?
--- Исходное сообщение ---
От кого: "Alexander Korotkov" <aekorotkov@gmail.com>
Дата: 24 апреля 2013, 17:12:29
От кого: "Alexander Korotkov" <aekorotkov@gmail.com>
Дата: 24 апреля 2013, 17:12:29
Hi, everybody!The major reason why we have so small number of GiST/SP-GiST/GIN implementations is that their interface function takes arguments of "internal" datatype (actually they are mostly pointers, not normal PostgreSQL datatypes). So, you actually can implement them in C. It discourages many users.Idea of project is to provide alternative interfaces for GiST/SP-GiST/GIN which deal with composite types and arrays. Then users can write GiST/SP-GiST/GIN implementations on whatever they like SQL, pl/pgSQL, pl/Python etc.Probably someone would like to put his hands on it?------
With best regards,
Alexander Korotkov.
On Wed, Apr 24, 2013 at 6:38 PM, Бочечко Арсений <slua@ukr.net> wrote:
------
With best regards,
Alexander Korotkov.
For SQL and PL/pgSQL it's not. I'm not sure about rest of procedural languages. Should be checked.Sounds interesting, but this will also require a wrapper for this composite types?
------
With best regards,
Alexander Korotkov.
On 24.4.2013 17:05, Alexander Korotkov wrote: > > On Wed, Apr 24, 2013 at 6:38 PM, Бочечко Арсений <slua@ukr.net > <mailto:slua@ukr.net>> wrote: > > Sounds interesting, but this will also require a wrapper for this > composite types? > > For SQL and PL/pgSQL it's not. I'm not sure about rest of procedural > languages. Should be checked. This seems like a really neat project idea, however as I have never used GIN/GiST APIs, I can't really judge the benefits. Could someone prepare a simple example of a simple composite type and implementation of GIN/GiST index with the current and new APIs? Not a complete implementation, just a simple example of how the new API would make it more simple. BTW I think the project should include a simple benchmark, comparing the old C APIs and the new PL APIs. kind regards Tomas