Thank you Jan, you're correct about the data integrity issue. However, my 
question is more about using the graph API to manage link maps. Using 
getProperty on a vertex returns an iterable of the values of the map, not 
the map itself. Going into the orient-specific API and getting the 
underlying record works but changing the map on the record doesn't save the 
changes at transaction's end. I end up calling setProperty on the vertex 
with the new map, but I'm afraid that will not perform well with a large 
map.

On Monday, September 14, 2015 at 1:58:02 AM UTC-6, Jan Plaček wrote:
>
> AFAIK the LINK MAP is stored like this { "key1":"#x:y", "key2":"#y:z"}
> So I assume that adding/removing entries involves only a change of the 
> record which owns this map.
> On the other hand changes on linked records (entries) involve only changed 
> mapped records (the map itself is intact).
> Be aware (or correcty me if I am wrong), there is no automatic data 
> integrity maintanance - removing linked record from map won't remove record 
> itself and deleting linked record won't update maps which reference it.
> Data integrity is maintaned only on edges, because unlike LINKs, both 
> connected records (vertexes) knows about the link. 
>
> Dne neděle 13. září 2015 22:18:21 UTC+2 Curtis Stanford napsal(a):
>>
>> I'm thinking of use large LINK MAPs in a graph database using the Java 
>> API. I'm not sure what the most efficient way is to get and update/remove 
>> entries in the map. I don't want to have to persist the entire map each 
>> time, just the entries that have changed.
>>
>> Any help appreciated.
>>
>> Curtis
>>  
>>
>

-- 

--- 
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.

Reply via email to