Hy,
I had a very similar issue, the etl json in this thread's second post
<https://groups.google.com/forum/#!topic/orient-database/sp5BRePbtak>
solved it for me, good luck!
Aron Kovacs
On Thursday, 8 January 2015 13:02:26 UTC+1, Martin Pengelly-Phillips wrote:
>
> Hello again,
>
> I'm trying to use ETL to import from an RDBMS with a self referential
> foreign key and can't work out the right syntax.
>
> I either end up with duplicate documents or missing edges.
>
> My last attempt was with the following config:
>
> {
> "extractor": {
> "jdbc": {
> "query": "SELECT * FROM task"
> }
> },
> "transformers": [
> // Rename field.
> {"field": {"fieldName": "cid", "expression": "taskid"}}, //
> Aside: Wanted to use "id", but seems is a reserved word?
> {"field": {"fieldName": "taskid", "operation": "remove"}},
>
> // Merge with existing.
> {
> "merge": {
> "joinFieldName": "cid",
> "lookup": "Context.cid"
> }
> },
>
> // Transform to Vertex.
> {"vertex": {"class": "Context"}},
>
> // Create edge "parent" pointing to parent Context.
> {
> "edge": {
> "class": "parent",
> "joinFieldName": "parent_id",
> "lookup": "Context.cid",
> "unresolvedLinkAction": "CREATE",
> "if": "parent_id is not null"
> }
> }
> ],
> "loader": {
> "orientdb": {
> "dbType": "graph"
> }
> }
> }
>
>
> This resulted in duplicate Context records all with the same "cid" value,
> whereas I was hoping for just one Context for each cid value (based on a
> comment in another post).
>
> If I remove
> "unresolvedLinkAction": "CREATE",
> then I end up with missing edges if the edge was attempted to be created
> before the target vertex had been imported.
>
> Any ideas on how to handle this case?
>
> cheers,
>
>
> Martin
>
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.