View a markdown version of this page

ID edge generato dal server in linea Neptune - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

ID edge generato dal server in linea Neptune

Neptune supporta gli Edge ID in linea. Server-Generated Può essere abilitato tramite il parametro neptune_enable_inline_server_generated_edge_id di configurazione Neptune quando non è abilitato. neptune_streams Questa funzionalità è disponibile per le query su Gremlin a partire dalla versione del motore 1.4.3.0 e sarà disponibile per le query in una versione futura. OpenCypher

L'Edge ID è un identificatore univoco per un edge. È possibile fornire un ID edge quando si inserisce un edge. Se non viene fornito alcun ID, per impostazione predefinita il server genera e assegna un ID basato su UUID all'edge. Come l'ID definito dall'utente, l'ID UUID-based generato dal server viene memorizzato nel dizionario.

Quando la neptune_enable_inline_server_generated_edge_id funzionalità è abilitata, il server genera un ID in linea univoco quando nella query non viene fornito alcun ID. Gli ID edge in linea non vengono memorizzati nel dizionario, migliorando l'efficienza di archiviazione. Gli ID in linea generati dal server iniziano con il prefisso riservato. neptune_reserved

avvertimento

Neptune riserva il 'neptune_reserved' prefisso per gli ID in linea generati dal server. Verrà visualizzato un errore per le query che tentano di inserire dati con un ID definito dall'utente che inizia con il prefisso riservato.

La funzionalità edge ID generata dal server in linea può essere abilitata impostando il parametro a livello di cluster su. neptune_enable_inline_server_generated_edge_id 1 È necessario riavviare l'istanza. L'esempio seguente abilita la funzionalità edge ID generata dal server:

"ParameterName=neptune_enable_inline_server_generated_edge_id,ParameterValue=1,ApplyMethod=pending-reboot"

Per verificare se la funzionalità è abilitata, puoi controllarla nello stato del motore. Questa funzionalità viene disattivata automaticamente se neptune_streams è abilitata. L'output di esempio seguente mostra lo stato del motore per la funzionalità abilitata:

"features":{"InlineServerGeneratedEdgeId":"enabled"}

Il seguente esempio di Gremlin aggiunge un bordo senza un ID definito dall'utente quando la funzionalità di ID edge generata dal server in linea è abilitata:

curl - X POST--url https: //<neptune-cluster-endpoint>:8182/gremlin/ --data '{"gremlin":"g.withSideEffect(\"Neptune#disablePushdownOptimization\", true).addV().property(id, \"a\").addV().property(id, \"b\").addE(\"el\").to(V(\"a\"))"}' { "requestId": "b6b84605-53ad-4c04-baf1-7f0f31a3aeaf", "status": { "message": "", "code": 200, "attributes": { "@type": "g:Map", "@value": [] } }, "result": { "data": { "@type": "g:List", "@value": [{ "@type": "g:Edge", "@value": { "id": "neptune_reserved_231850767", "label": "el", "inVLabel": "vertex", "outVLabel": "vertex", "inV": "a", "outV": "b" } }] }, "meta": { "@type": "g:Map", "@value": [] } } }