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à.
Utilizzo di Gremlin con il motore di query Neptune DFE
Se abiliti il motore di query alternativo di Neptune noto come DFE (neptune_dfe_query_engineimpostando il parametro di istanza suenabled), Neptune traduce queries/traversals Gremlin di sola lettura in una rappresentazione logica intermedia e li esegue sul motore DFE quando possibile.
Tuttavia, il motore DFE non supporta ancora tutti i passaggi Gremlin. Quando un passaggio non può essere eseguito in modo nativo sul DFE, Neptune torna a eseguire il passaggio. TinkerPop I report explain e profile includono avvisi quando ciò accade.
Interleaving della pianificazione delle query
Quando il processo di conversione incontra un passaggio Gremlin che non ha un operatore DFE nativo corrispondente, prima di tornare a usare Tinkerpop cerca di trovare altre parti di query intermedie che possano essere eseguite in modo nativo sul motore DFE. Lo fa applicando la logica di interleaving all'attraversamento di livello superiore. Il risultato è che i passaggi supportati vengono utilizzati laddove possibile.
Tale conversione di query intermedia, senza prefisso viene rappresentata utilizzando NeptuneInterleavingStep negli output di explain e profile.
Per confrontare le prestazioni, si potrebbe voler disattivare l'interleaving in una query, continuando a utilizzare il motore DFE per eseguire la parte del prefisso. In alternativa, potresti voler utilizzare solo il TinkerPop motore per l'esecuzione di query senza prefisso. A tale scopo, utilizzare l'hint di query disableInterleaving.
Proprio come l'hint di query useDFE con il valore false impedisce del tutto l'esecuzione di una query sul motore DFE, l'hint di query disableInterleaving con il valore true disattiva l'interleaving del motore DFE per la conversione di una query. Esempio:
g.with('Neptune#disableInterleaving', true) .V().has('genre','drama').in('likes')
Output aggiornato di explain e profile di Gremlin
Gremlin explain fornisce dettagli sull'attraversamento ottimizzato utilizzato da Neptune per eseguire una query. Consultare l'output di esempio di explain del motore DFE per un esempio di come appare l'output di explain quando il motore DFE è abilitato.
L'API Gremlin profile esegue un attraversamento Gremlin specificato, raccoglie varie metriche sull'esecuzione e produce un report di profile che contiene dettagli sul piano di interrogazione ottimizzato e sulle statistiche di runtime di vari operatori. Consultare l'output di esempio di profile del motore DFE per un esempio di come appare l'output di profile quando il motore DFE è abilitato.
Nota
Poiché il supporto DFE per Gremlin è una funzionalità sperimentale, il formato esatto dell'profileoutput explain e è soggetto a modifiche.