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à.
Best practice: come utilizzare Neptune al meglio
Di seguito sono riportate alcune raccomandazioni generali sull'utilizzo di Amazon Neptune. Usa queste informazioni come riferimento per trovare rapidamente le raccomandazioni per l'utilizzo di Amazon Neptune e ottimizzare le prestazioni.
Indice
- Linee guida operative di base per Amazon Neptune
- Best practice di Amazon Neptune per la sicurezza
- Evitare classi di istanze diverse in un cluster
- Evitare i riavvii ripetuti durante il caricamento in blocco
- Abilitazione dell'indice OSGP in presenza di un numero elevato di predicati
- Evitare le transazioni di lunga durata, ove possibile
- Best practice per l'utilizzo delle metriche di Neptune
- Best practice per l'ottimizzazione delle query di Neptune
- Bilanciamento del carico tra le repliche di lettura
- Caricamento più veloce con un'istanza temporanea di dimensioni più grandi
- Ridimensiona l'istanza di scrittura eseguendo il failover su una replica di lettura
- Nuovo tentativo di caricamento dopo l'errore di attività di prefetch dei dati interrotta
- Best practice generali per l'utilizzo di Gremlin con Neptune
- Test del codice Gremlin nel contesto in cui verrà implementato
- Strutturare le query di upsert per sfruttare il motore DFE
- Creazione di scritture multithread Gremlin efficienti
- Eliminazione dei record con la proprietà dell'ora di creazione
- Uso del metodo datetime( ) per i dati dell'ora di Groovy
- Uso di data e ora native per i dati dell'ora GLV
- Best practice per l'utilizzo del client Java Gremlin con Neptune
- Usa l'ultima versione compatibile del client Apache TinkerPop Java
- Riutilizzo dell'oggetto client tra più thread
- Creazione di oggetti client Java Gremlin separati per gli endpoint di lettura e scrittura
- Aggiunta di più endpoint di replica di lettura a un pool di connessioni Java Gremlin
- Chiusura del client per evitare il limite di connessioni
- Creazione di una nuova connessione dopo il failover
- Impostazione di maxInProcessPerConnection e maxSimultaneousUsagePerConnection sullo stesso valore
- Invio di query al server come bytecode anziché come stringhe
- Utilizza sempre completamente l'o Iterator restituito da una query ResultSet
- Aggiunta in blocco di vertici e archi in batch
- Disabilitazione del caching DNS nella Java Virtual Machine
- Facoltativamente, impostare timeout a livello di query
- Risoluzione dei problemi relativi a java.util.concurrent.TimeoutException
- Best practice di Neptune per l'utilizzo di openCypher e Bolt
- Preferire archi orientati a quelli bidirezionali nelle query
- Neptune non supporta più query simultanee in una transazione
- Creazione di una nuova connessione dopo il failover
- Gestione delle connessioni per applicazioni di lunga durata
- Gestione della connessione per AWS Lambda
- Chiusura degli oggetti driver al termine dell'utilizzo
- Utilizzo di modalità di transazione esplicite per la lettura e la scrittura
- Logica di ripetizione dei tentativi per le eccezioni
- Imposta più proprietà contemporaneamente utilizzando una singola clausola SET
- Utilizzate la clausola SET per rimuovere più proprietà contemporaneamente
- Usa interrogazioni con parametri
- Usa mappe appiattite anziché mappe annidate nella clausola UNWIND
- Posiziona nodi più restrittivi sul lato sinistro nelle espressioni VLP (Variable-Length Path)
- Evita controlli ridondanti delle etichette dei nodi utilizzando nomi di relazione granulari
- Specificate le etichette dei bordi, ove possibile
- Evita di utilizzare la clausola WITH quando possibile
- Posiziona filtri restrittivi il più presto possibile nella query
- Controlla esplicitamente se esistono delle proprietà
- Non utilizzate il percorso denominato (a meno che non sia richiesto)
- Evita COLLECT (DISTINCT ())
- Preferisci la funzione delle proprietà alla ricerca delle singole proprietà quando recuperi tutti i valori delle proprietà
- Esegui calcoli statici al di fuori della query
- Input in batch che utilizzano UNWIND anziché singole istruzioni
- Preferisci utilizzare ID personalizzati per nodo/relazione
- Evita di eseguire ~id calcoli nella query
- Best practice di Neptune per l'utilizzo di SPARQL