Domande generali
Cos'è Amazon Neptune?
Amazon Neptune è il servizio di database a grafo rapido, affidabile e completamente gestito che semplifica la creazione e l'esecuzione di applicazioni che funzionano con set di dati altamente connessi. Il nucleo di Neptune è un motore di database a grafo ad alte prestazioni appositamente progettato. Questo motore è ottimizzato per archiviare miliardi di relazioni e inviare query al grafo con una latenza di millisecondi. Neptune supporta i noti linguaggi di query al grafo Apache TinkerPop Gremlin, W3C SPARQL e openCypher, permettendo di costruire query che attraversano in modo efficiente set di dati altamente connessi. Neptune consente i casi d'uso dei grafi come motori di raccomandazioni, rilevamento di attività fraudolente, grafi della conoscenza, scoperte di farmaci e sicurezza delle reti.
Neptune è ad alta disponibilità, con repliche di lettura, ripristino point-in-time, backup continuo su Amazon S3 e replica nelle zone di disponibilità. Neptune offre funzionalità di sicurezza dei dati, con supporto per la crittografia dei dati a riposo e in transito. Neptune è una soluzione completamente gestita, pertanto non dovrai più preoccuparti di attività di gestione del database come provisioning dell'hardware, applicazioni di patch del software, impostazioni, configurazioni o backup.
Quali popolari linguaggi di query a grafo supporta Amazon Neptune?
Amazon Neptune supporta due linguaggi di query per il modello di dati Property Graph, il linguaggio di attraversamento grafico open source Apache TinkerPop Gremlin e il linguaggio di query openCypher, e per il modello di dati Resource Description Framework (RDF) Neptune supporta il linguaggio di query SPARQL standard aperto del W3C.
È possibile utilizzare Apache TinkerPop Gremlin, openCypher e RDF/SPARQL nello stesso cluster Neptune?
Sì, ogni cluster Neptune può memorizzare sia i dati del grafico delle proprietà che i dati RDF. Neptune fornisce un endpoint Gremlin (HTTPS e WebSocket), un endpoint openCypher (HTTPS e Bolt) e un endpoint REST con protocollo SPARQL 1.1.
Per i grafici delle proprietà, puoi eseguire una query Gremlin o openCypher sugli stessi dati indipendentemente dal linguaggio utilizzato per inserire tali dati. Potresti trovare più comodo usare Gremlin per alcuni carichi di lavoro e openCypher per altri. Non è possibile eseguire una query per i dati del grafico delle proprietà (Gremlin o openCypher) su dati RDF o viceversa.
In che modo è possibile eseguire una migrazione da un'applicazione Apache TinkerPop Gremlin esistente ad Amazon Neptune?
Amazon Neptune fornisce un server Apache TinkerPop Gremlin che supporta i collegamenti WebSocket e HTTPS. Una volta eseguito il provisioning di un'istanza di Amazon Neptune, puoi configurare la tua applicazione TinkerPop esistente per l'utilizzo dell'endpoint fornito dal servizio. Consulta anche Accesso al grafo tramite Gremlin.
È necessario modificare i driver del client per utilizzare il server Gremlin di Amazon Neptune?
No, il server Gremlin di Amazon Neptune supporta i client compatibili con Apache TinkerPop utilizzando connessioni REST WebSockets e HTTPS. L'ultima versione di Neptune supporta TinkerPop 3.6.x. Per ulteriori informazioni, consulta la documentazione.
Come posso effettuare la migrazione da un'applicazione openCypher esistente ad Amazon Neptune?
Con il supporto di Neptune per il linguaggio di query openCypher, puoi spostare la maggior parte dei carichi di lavoro Cypher o Neo4j che utilizzano il protocollo Bolt o HTTPS su Neptune. Per informazioni più dettagliate su come migrare un'applicazione openCypher, leggi la guida alla migrazione nella documentazione.
In che modo è possibile eseguire una migrazione da un triplo store con endpoint SPARQL ad Amazon Neptune?
Amazon Neptune fornisce un endpoint REST HTTPS che implementa il protocollo SPARQL 1.1. Una volta eseguito il provisioning di un'istanza di servizio, puoi configurare la tua applicazione affinché punti sull'endpoint SPARQL. Consulta anche Accesso al grafo tramite SPARQL.
È necessario modificare i driver del client per utilizzare l'endpoint SPARQL di Amazon Neptune?
Neptune è dotato di proprietà ACID (atomicità, coerenza, isolamento, durabilità)?
Sì, Neptune è conforme ad ACID con coerenza immediata sull'istanza di scrittura principale ed eventuale coerenza sulle istanze di replica di lettura.
Perché per utilizzare Amazon Neptune sono necessarie autorizzazioni e risorse di Amazon RDS?
Amazon Neptune offre un contratto sul livello di servizio (SLA)?
Sì. Consulta lo SLA di Amazon Neptune.
Prestazioni
Quali tipi di carichi di lavoro delle query a grafo sono ottimizzati per il lavoro con Amazon Neptune?
Amazon Neptune è progettato per supportare le applicazioni dei grafi che richiedono query a velocità di trasmissione effettiva elevata e bassa latenza. Con il supporto fino a 15 repliche di lettura, Amazon Neptune è in grado di supportare centinaia di migliaia di query al secondo.
Amazon Neptune esegue l’ottimizzazione delle query?
Sì, Amazon Neptune utilizza l'ottimizzazione delle query per le query Gremlin, openCypher e SPARQL. Per ulteriori informazioni, consulta il motore di query alternativo (DFE) di Amazon Neptune.
Amazon Neptune è costruito su un database relazionale?
No, Amazon Neptune è un motore di database a grafo ad alte prestazioni appositamente progettato. Neptune archivia in modo efficiente e attraversa i dati dei grafi e utilizza un'architettura in-memory, scalabile e ottimizzata per permettere una rapida valutazione delle query su grafi di grandi dimensioni.
Prezzi
Quanto costa Amazon Neptune?
Consulta la pagina dei prezzi per informazioni aggiornate.
In quali Regioni AWS è disponibile Amazon Neptune?
Consulta la pagina dei prezzi per informazioni aggiornate su tariffe e Regioni.
Amazon Neptune replica ogni blocco del volume del database sei volte sulle tre zone di disponibilità. Ciò significa che l’effettivo prezzo di archiviazione sarà tre o sei volte il prezzo indicato sulla pagina dei prezzi?
No. La replica di Amazon Neptune è inclusa nel prezzo. Il costo verrà addebitato in base allo storage consumato dal database nel layer database e non in base allo storage consumato dal layer di storage virtualizzato di Amazon Neptune.
Cosa sono gli I/O in Amazon Neptune e come vengono calcolati?
Amazon Neptune è stato sviluppato in modo da eliminare le operazioni di I/O non necessarie e pertanto ridurre i costi e garantire la disponibilità delle risorse per la gestione del traffico di lettura/scrittura. Gli I/O di scrittura vengono usati solo durante l'invio dei record del log delle transazioni al layer di storage con lo scopo di rendere durevoli le letture. Gli I/O di scrittura vengono conteggiati in base a unità da 4 KB. Ad esempio, un record del log delle transazioni la cui dimensione è pari a 1024 byte verrà considerato come un'operazione di I/O. Tuttavia, le operazioni di scrittura simultanee i cui log delle transazioni hanno dimensioni minori di 4 KB possono essere combinate dal motore di database di Amazon Neptune per ottimizzare il consumo degli I/O. A differenza dei motori di database tradizionali, Amazon Neptune non esegue mai il push delle pagine di database modificate nel layer di archiviazione. Ciò consente di ridurre ulteriormente il consumo degli IO.
Hardware e dimensionamento
Quali sono i limiti di archiviazione minimi e massimi di un database di Amazon Neptune?
L'archiviazione minima è pari a 10 GB. In base all'uso del database, la capacità di storage di Amazon Neptune aumenterà automaticamente fino a 128 TiB, in base a incrementi di 10 GB senza alcuna conseguenza per le prestazioni del database. Non è necessario effettuare il provisioning di archiviazione in anticipo.
Come viene eseguito lo scaling delle risorse di elaborazione associate all'istanza DB di Amazon Neptune?
Quando la classe dell'istanza di database viene modificata, le modifiche richieste verranno applicate durante la finestra di manutenzione specificata. In alternativa, è possibile utilizzare il flag "apply-immediately" per rendere subito effettive le richieste di dimensionamento. Durante l'esecuzione dell'operazione di dimensionamento entrambe queste opzioni incideranno sulla disponibilità per alcuni minuti. Tieni presente che verranno applicate anche tutte le altre modifiche di sistema in sospeso.
Posso aumentare o diminuire automaticamente il mio database in base all'utilizzo?
Puoi scalare automaticamente la capacità del tuo database con Amazon Neptune Serverless. Amazon Neptune serverless consente di eseguire e dimensionare istantaneamente i carichi di lavoro grafici, senza il bisogno di gestire e ottimizzare la capacità del database. Neptune Serverless determina e fornisce automaticamente le risorse di elaborazione e memoria per eseguire il database a grafo e ridimensiona la capacità in base alle mutevoli esigenze del carico di lavoro per mantenere prestazioni costanti.
Neptune supporta la scalabilità automatica?
Sì, Neptune supporta la scalabilità automatica delle repliche di lettura delle istanze. Puoi configurare la scalabilità automatica per aggiungere o rimuovere automaticamente le repliche di lettura in risposta alle modifiche dei requisiti di connettività o di carico di lavoro. Per ulteriori informazioni, consulta la documentazione.
Backup e ripristino
Come vengono abilitati i backup per l'istanza DB?
Nelle istanze DB di Amazon Neptune i backup automatici sono sempre abilitati. I backup non hanno alcuna influenza sulle prestazioni del database.
È possibile creare snapshot DB e conservarli per tutto il tempo necessario?
Se si verifica un errore del database, qual è il percorso di ripristino?
Cosa accade ai backup e agli snapshot DB quando viene eliminata l'istanza DB?
Posso condividere i miei snapshot con un altro account AWS?
Vengono addebitati dei costi per le istantanee condivise?
Posso condividere gli snapshot in modo automatico?
Con quanti account è possibile condividere snapshot?
In quali Regioni è possibile condividere gli snapshot di Amazon Neptune?
È possibile condividere gli snapshot di Amazon Neptune tra Regioni diverse?
È possibile condividere uno snapshot di Amazon Neptune crittografato?
È possibile utilizzare gli snapshot di Amazon Neptune all'esterno del servizio?
Disponibilità elevata e replica
In che modo Amazon Neptune migliora la tolleranza ai guasti del database in caso di errori del disco?
Amazon Neptune suddivide automaticamente il volume del database in segmenti da 10 GB su più dischi. Ogni blocco da 10 GB di tale volume viene replicato sei volte in tre zone di disponibilità. Amazon Neptune è stato progettato per gestire in modo trasparente la perdita di un massimo di due copie di dati senza compromettere la disponibilità delle operazioni di scrittura del database e di un massimo di tre copie senza compromettere la disponibilità delle operazioni di lettura. Per lo storage di Amazon Neptune viene inoltre eseguita la riparazione automatica. I blocchi di dati e i dischi vengono analizzati continuamente alla ricerca di eventuali errori e riparati automaticamente.
In che modo Amazon Neptune migliora i tempi di ripristino dopo un arresto anomalo del database?
Che tipi di replica sono supportati da Neptune?
Amazon Neptune supporta le repliche di lettura, che condividono lo stesso volume sottostante dell'istanza primaria. Gli aggiornamenti eseguiti dall'istanza primaria sono visibili in tutte le repliche di Amazon Neptune. Un cluster Neptune può avere un'istanza di scrittura e fino a 15 repliche di lettura. In caso di errore di un'istanza di scrittura, una replica di lettura verrà automaticamente promossa a istanza di scrittura.
È possibile creare repliche in più regioni con Amazon Neptune?
Sì, Amazon Neptune supporta la replica tra regioni configurando il cluster Neptune in modo da utilizzare il database globale. Consulta Database globale Amazon Neptune.
In quanto destinazioni di failover, alcune repliche possono avere la priorità su altre?
Sì. È possibile assegnare un livello di priorità maggiore ad ogni istanza in un cluster. Quando si verifica un errore nell'istanza primaria, Amazon Neptune promuove la replica con la priorità maggiore a istanza primaria. Se due o più repliche hanno pari priorità, Amazon Neptune promuoverà la replica che ha le stesse dimensioni dell'istanza primaria.
Posso modificare i livelli di priorità per le istanze dopo la loro creazione?
I livelli di priorità possono essere modificati in qualsiasi momento. La semplice modifica dei livelli di priorità non attiverà un failover.
È possibile impedire che alcune repliche siano promosse a istanza primaria?
È possibile assegnare alle repliche che non desideri utilizzare come istanze primarie un livello di priorità inferiore. Tuttavia, se le repliche con livelli di priorità maggiori nel cluster non sono integre o non sono disponibili, Amazon Neptune promuoverà la replica con priorità minore.
In che modo è possibile migliorare la disponibilità di un singolo database di Amazon Neptune?
Cosa accade durante un failover e quanto dura?
Il failover viene gestito automaticamente da Amazon Neptune, consentendoti di riprendere l'operatività delle applicazioni con la massima rapidità senza alcun intervento manuale a livello amministrativo.
Se è disponibile una replica di Amazon Neptune nella stessa zona di disponibilità o in una zona diversa, in caso di failover Amazon Neptune fa in modo che il record di nome canonico (CNAME) dell'endpoint primario del database punti a una replica integra, che a sua volta viene alzata di livello e impostata come nuova replica primaria. L'esecuzione completa dell'intero processo di failover in genere impiega meno di 30 secondi. Inoltre, l'endpoint delle repliche di lettura non richiede alcun aggiornamento di CNAME durante il failover.
Se non si dispone di una replica di Amazon Neptune (istanza singola), Neptune tenterà di creare una nuova istanza database nella stessa zona di disponibilità dell'istanza originale. Se risulta impossibile eseguire questa operazione, Neptune tenterà di creare una nuova istanza database in una zona di disponibilità diversa. L'esecuzione completa dell'intero processo di failover in genere impiega meno di 15 minuti.
L'applicazione deve tentare di ristabilire le richieste al database in caso di perdita della connessione.
In presenza di un database primario e di una replica di Amazon Neptune che gestisce attivamente il traffico di lettura, cosa succede se si verifica un failover?
Amazon Neptune rileverà automaticamente un problema a livello di istanza primaria e procederà a instradare il traffico di lettura/scrittura verso una replica di Amazon Neptune. In media questo tipo di failover viene completato in 30 secondi. Inoltre, il traffico di lettura gestito dalle repliche di Amazon Neptune verrà brevemente interrotto.
Qual è il ritardo delle repliche rispetto all'istanza primaria?
Dal momento che le repliche di Amazon Neptune condividono lo stesso volume di dati dell'istanza primaria, virtualmente non si verifica alcun ritardo di replica. In genere sono stati rilevati ritardi nell'ordine di decine di millisecondi.
Sicurezza
È possibile usare Amazon Neptune in Amazon Virtual Private Cloud (Amazon VPC)?
Sì. Tutte le istanze DB di Amazon Neptune devono essere create in un VPC. Con Amazon VPC è possibile definire una topologia di rete virtuale molto simile a una rete tradizionale come quella che potrebbe essere gestita nel tuo data center. Questa soluzione offre il controllo completo sugli utenti che possono accedere ai database di Amazon Neptune.
Amazon Neptune supporta la crittografia dei dati in transito e inattivi?
È possibile crittografare un database non crittografato esistente?
Com'è possibile accedere al database di Amazon Neptune?
L'accesso ai database di Amazon Neptune deve essere eseguito mediante la porta HTTPS specificata durante la creazione del database nel cloud privato virtuale (VPC). In questo modo viene fornito un livello di sicurezza aggiuntivo per i dati. Per istruzioni dettagliate sulle modalità di collegamento al database di Amazon Neptune, consulta la Guida per l'utente Amazon Neptune.

Ottieni l'accesso immediato al piano gratuito di AWS.

Inizia subito a utilizzare Amazon Neptune nella Console di gestione AWS.