I completed my Computer Science MSc thesis in Athens University of Economics
and Business, A.U.E.B (under the supervision of Ass.Prof. V.Vassalos). Its
subject was "DAIMON: Data Integration for a Mobile Network", i.e. mobile
peers integrating data from other peers. We used PostgreSQL v7.4.2 as our
base and wrote several lines of backend code that basically do the
All peers share the same schema but actually hold data for different tables
(Local As View paradigm). The code parses a submitted query (Query
structure), locates all references to remotely stored data (currently
distinct tables) and produces a Query* for each remote peer (or more to
avoid Cartesian products) which is then sent to it (in string
format,nodeToString) using an SRF and dblink. Returned tuples are stored
into local tables (later used as cache) and a residual query (created during
initial parsing) is executed on these tables.
We thought that some parts of our code may be useful for others and if so we
would like to contribute to the source code tree. More specifically we are
thinking of isolating and contributing the following pieces of code:
1) A complete SRF example. Though a lot of information is available for
this, I could not find (at the time of programming) any complete example (as
some others too, I think) and had to write my own. The code is largely based
on dblink related code.
2) The extended dblink mechanism. Our base for communicating with other
peers was dblink but we also used libevent to enforce certain policies
regarding the availability of mobile nodes. I've read the following posts on
libevent but I would like to ask anyway.
3) Any part of the above described mechanism that seems interesting to you.
We know this is an academic project and may not straightforwardly apply to
common PostgreSQL's applications but we thing you should get informed. We
would be pleased to provide any additional information.
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend