Nigel,

>  If the composition relationship is modelled using explicit attributes, I 
> believe I could  create my entire definition containing multiple of all the 
> above in a single EntityREST Bulk API request, using negative GUIDs as 
> placeholders for the entities that are being referenced & created within the 
> request.

Yes. This is correct.

>  If instead I don't use attributes, but use relationships to define the 
> composition, I cannot do this, since I need to create all the entities 
> initially (which could be done in one request) and then, based on the GUIDs 
> generated, issue  a series of calls to RelationshipREST to define the 
> relationships (relationships cannot be created as part of the bulk entity api 
> call)

Entity update will process the relationship attributes specified in 
"AtlasEntity.relationshipAttributes" and update the relationships accordingly. 
If an entity has an attribute in both " attributes" and 
"relationshipAttributes" (like hive_table.columns), then the values specified 
in "attributes" would be ignored; and the entity will be updated for the value 
specified in "relationshipAttributes". Given this, it is possible to use 
'relationshipAttributes', in the same way as 'attributes'. However, considering 
that relationships are dynamic (i.e. a relationship type can be added at 
runtime) and the entity-update API caller may not know all the relationships of 
an entity-type at compile time, I would think such API integration would only 
deal with attributes directly defined in an entity-type.

Hope this helps.

Madhan




On 3/5/18, 7:42 AM, "Nigel Jones" <[email protected]> wrote:

    I'd like to check my understanding of the bulk api & relationships....
    
    Let's say I have a database with a table, which contains a few columns. 
(like hive)
    
    If the composition relationship is modelled using explicit attributes, I 
believe I could  create my entire definition containing multiple of all the 
above in a single EntityREST Bulk API request, using negative GUIDs as 
placeholders for the entities that are being referenced & created within the 
request.
    
    If instead I don't use attributes, but use relationships to define the 
composition, I cannot do this, since I need to create all the entities 
initially (which could be done in one request) and then, based on the GUIDs 
generated, issue  a series of calls to RelationshipREST to define the 
relationships (relationships cannot be created as part of the bulk entity api 
call)
    
    is my understanding correct? Have I missed anything?
    
    Thanks
    Nigel.
    
    


Reply via email to