[Cubicweb] Multisource in CW
vincent.michel at logilab.fr
Fri Jun 1 10:37:03 CEST 2012
On Thursday 31 May 2012 15:19:28 Sylvain Thénault wrote:
> On 25 mai 09:53, Sylvain Thénault wrote:
> > > Yes, this is the idea. The second idea is that the query planner should
> > > understand that in "Any X WHERE Y linked_to X" it should use the URI to
> > > join between the two instances.
> > > Is it doable to implement such a behavior (or is the query planner not
> > > flexible enough) ?
> > I don't get your point here. Think to the local eid as an implementation
> > detail for performance reason (we have tried to have string as keys a
> > while ago, moving to int had a huge performance impact). That's the
> > source's job to translate the eid into the URI than to query whatever
> > source to do the join.
> After discussing on the phone with nico, I understand that:
> * you actually want to use a cubicweb external source
> * but uri rather than eid should be used so one can change the external
> instance without loosing external relation
> * and since external data may be rather large, the way the ms planner works
> today isn't suited to this use (as already discussed)
Yes, this is the point !
> To achieve thid, I'ld propose the following:
> * have a source similar to pyrorql, but which use cwuri as extid rather
> than eid (that should be pretty easy)
> * have an alternative "on-demand" ms planner, as described earlier in this
> thread. IMO a simple implementation (eg only support external entities
> with their attributes, no relation) could also be done without too much
> * we would probably need some small ui tweaks to allow :
> - easy cwuri customization (currently generated from base-url/eid, which
> is not desired here)
> - interface to link to a distant entity by giving its uri
> * if this sounds good to you, we should take some time together next week
> so I can put you on the way
Ok, thanks !
> Next points to improve that way would be :
> * meta-data control to ease import of big data into a cw database
> * more sparql (front-end and as a source)
More information about the Cubicweb