Passa al contenuto principale

Amazon Neptune

Prestazioni e scalabilità elevate

Apri tutto

Con pochi passaggi nella Console di gestione AWS, puoi aumentare o diminuire le risorse di calcolo e memoria che alimentano il tuo cluster di produzione. Con il Database Neptune, è possibile dimensionare creando nuove istanze di replica della dimensione desiderata o rimuovendole. Le operazioni di dimensionamento delle risorse di elaborazione vengono in genere completate in pochi minuti.

Il Database Neptune utilizza un'architettura di archiviazione distribuita e condivisa che crescerà automaticamente insieme alle esigenze dell'archiviazione del database. I dati di Neptune vengono archiviati in un volume cluster ad elevata disponibilità multi-AZ. Quando viene creato un cluster Neptune DB, gli viene assegnato un singolo segmento di 10 GiB. Mano a mano che il volume di dati aumenta e supera lo spazio di archiviazione attualmente allocato, Neptune espande automaticamente il volume del cluster aggiungendo nuovi segmenti. Il volume di un cluster Neptune può aumentare fino a una dimensione massima di 128 TiB nelle Regioni AWS supportate, escluse Cina e GovCloud. Non è necessario effettuare il provisioning di risorse di storage aggiuntive per far fronte all'eventuale crescita futura del database.

Con il Database Neptune, è possibile aumentare la velocità di trasmissione effettiva di lettura per supportare richieste di applicazioni ad alto volume, creando fino a 15 repliche di lettura del database. Le repliche Neptune condividono lo stesso spazio di archiviazione sottostante dell'istanza di origine, riducendo i costi ed eliminando l'esigenza di copiare i dati nei nodi di replica. Ciò consente di liberare una maggiore quantità di potenza di elaborazione per la gestione delle richieste di lettura e di ridurre il ritardo di replica fino a pochi millisecondi. Neptune fornisce inoltre un singolo endpoint per le query di lettura, in modo da permettere all'applicazione di collegarsi senza dover tenere traccia delle repliche che vengono aggiunte e rimosse.

Neptune è un database a grafo dedicato e ad alte prestazioni. Neptune archivia e attraversa i dati a grafo in modo efficiente e utilizza un'architettura in-memory, scalabile e ottimizzata per permettere una rapida valutazione delle query su grafi di grandi dimensioni. Con il Database Neptune, è possibile utilizzare Gremlin, openCypher o SPARQL per eseguire potenti query facili da scrivere e dalle buone prestazioni. Con Neptune Analytics, è possibile utilizzare openCypher.

Disponibilità e durabilità elevate

Apri tutto

Amazon Neptune Global Database è progettato per applicazioni distribuite a livello globale, consentendo a un singolo database Neptune di estendersi su più regioni. Replica i dati a grafo con un minimo impatto sulle prestazioni del database, abilita letture locali veloci con bassa latenza in ogni Regione e assicura il disaster recovery in caso di interruzioni estese su tutta la regione.

In caso di errore dell'istanza, Neptune rende automatico il failover di fino a 15 repliche Neptune create in una delle tre zone di disponibilità. Se non è stato eseguito il provisioning di nessuna delle repliche di Neptune, in caso di errore, Neptune tenterà di creare automaticamente una nuova istanza del database.

L'integrità del database Neptune e dell'istanza Amazon EC2 sottostante vengono continuamente monitorate. Se l'istanza alla base del database restituisce un errore, il database e i processi correlati vengono riavviati automaticamente. Il ripristino di Neptune non richiede la riproduzione potenzialmente lunga di log di ripristino del database, quindi i tempi di riavvio delle istanze sono normalmente pari o inferiori a 30 secondi. Isola inoltre la cache del buffer del database dai processi del database, consentendone in questo modo la conservazione in caso di riavvio del database.

Per il Database Neptune, ogni blocco da 10 GiB del volume del database è reso durevole in tre zone di disponibilità. Il Database Neptune utilizza un'archiviazione con tolleranza ai guasti che gestisce in modo trasparente la perdita di un massimo di due copie di dati senza ripercussioni sulla disponibilità delle operazioni di scrittura del database e la perdita di un massimo di tre copie di dati senza ripercussioni sulla disponibilità delle operazioni di lettura. Inoltre, l'archiviazione del Database Neptune corregge automaticamente gli errori: i blocchi di dati e i dischi su cui vengono rilevati più spesso gli errori vengono sostituiti automaticamente.

La funzionalità di backup del Database Neptune consente di eseguire il ripristino point-in-time dell'istanza. In tal modo sarà possibile ripristinare il database a qualsiasi momento compreso nel periodo di conservazione, fino agli ultimi 5 minuti. Il periodo di conservazione dei backup automatici può essere configurato per un intervallo di tempo massimo di 35 giorni. I backup automatici sono archiviati in Amazon S3, progettato per una durabilità del 99,9%. I backup di Neptune sono automatici, incrementali e continui e non hanno alcun impatto sulle prestazioni del database.

Gli snapshot del database sono backup avviati manualmente dall'utente dell'istanza archiviata su Amazon S3 e saranno conservati fino alla loro esplicita eliminazione da parte dell'utente. Tale tipologia di snapshot utilizza snapshot incrementali automatici per ridurre il tempo e la quantità di spazio di archiviazione richiesti. È possibile creare una nuova istanza da uno snapshot di database in qualsiasi momento.

Livello di sicurezza elevato

Apri tutto

Neptune Database viene eseguito in Amazon Virtual Private Cloud (Amazon VPC), che consente di isolare il database nella propria rete virtuale e connettersi alla propria infrastruttura IT locale utilizzando VPN IPSec crittografate standard di settore. Inoltre, utilizzando la configurazione del VPC di Neptune, è possibile configurare le impostazioni del firewall e controllare l'accesso di rete alle istanze del database.

Neptune è integrato con AWS Identity and Access Management (IAM) e offre la possibilità di controllare le azioni che gli utenti e i gruppi IAM possono intraprendere su specifiche risorse Neptune, tra cui istanze di database, istantanee di database, gruppi di parametri di database, sottoscrizioni agli eventi del database e gruppi di opzioni di database. Inoltre, è possibile contrassegnare le risorse Neptune con dei tag e controllare le azioni che gli utenti e i gruppi IAM sono autorizzati ad eseguire su risorse con lo stesso tag (e valore di tag). Ad esempio, è possibile configurare le regole IAM in modo da assicurare che gli sviluppatori possano modificare le istanze del database contrassegnate dal tag "Sviluppo", ma che solo gli amministratori del database possano modificare le istanze del database contrassegnate dal tag "Produzione".

Neptune fornisce agli utenti accesso granulare alle API del piano dati di Neptune con IAM per eseguire azioni per dati a grafo, come la lettura, la scrittura e l'eliminazione dei dati dal grafo, nonché azioni per dati non a grafo, come l'avvio e il monitoraggio delle attività di Neptune ML e il controllo dello stato di attività del piano dati in corso. Ad esempio, crea una policy con accesso in sola lettura per gli analisti dei dati che non hanno la necessità di manipolare i dati a grafo, una policy per l'accesso in lettura e scrittura per gli sviluppatori che utilizzano il grafo per le applicazioni e una policy per i data scientist che hanno la necessità di accedere ai comandi di Neptune ML.

Neptune supporta la crittografia in transito con TLS versione 1.2. Neptune consente di crittografare i database utilizzando chiavi create e controllate tramite AWS Key Management Service (AWS KMS). In un'istanza database in esecuzione con la crittografia di Neptune, i dati inattivi memorizzati nello storage sono crittografati, così come i backup automatici, gli snapshot e le repliche nello stesso cluster.

Neptune consente di registrare gli eventi di database con un impatto minimo sulle prestazioni del database stesso. I log possono successivamente essere analizzati per gestione di database, sicurezza, governance, conformità normativa e altri scopi. Puoi anche monitorare l'attività inviando registri di controllo ad Amazon CloudWatch.

Neptune è compatibile con oltre 20 standard di conformità internazionali, da FedRAMP (moderato e alto) a SOC (1, 2, 3), ed è idoneo anche all'HIPAA. L'elenco completo degli standard a cui Neptune è conforme è disponibile nell'elenco dei servizi AWS in Scope by Compliance Program.

Prezzi contenuti

Apri tutto

Neptune non prevede alcun impegno anticipato. Sarà addebitata una tariffa oraria per ogni istanza avviata o per le risorse di database consumate per serverless. Quando un'istanza database Neptune non serve più, è possibile eliminarla. Non sarà necessario effettuare il provisioning in eccesso di ulteriori quantità di spazio di archiviazione come misura di sicurezza in quanto verrà richiesto il pagamento solo dello spazio effettivamente consumato. Per ulteriori dettagli, visita la pagina dei prezzi di Neptune.

Gestione completa

Apri tutto

Puoi iniziare a usare Neptune lanciando una nuova istanza di database Neptune o un grafico di Neptune Analytics utilizzando la Console di gestione AWS. Le istanze del database Neptune sono preconfigurate con i parametri e le impostazioni ottimali per la classe dell'istanza del database selezionata. Sarà pertanto possibile avviare un'istanza del database e collegare l'applicazione in pochi minuti senza ulteriore configurazione. I gruppi di parametri del database forniscono funzionalità di controllo granulare e ottimizzazione del database.

Neptune fornisce metriche CloudWatch per le istanze del database. È possibile utilizzare la console per visualizzare più di 20 parametri operativi essenziali per le istanze del database, incluse risorse di calcolo, memoria, archiviazione, throughput delle query e connessioni attive.

Con Neptune il database sarà sempre aggiornato con le patch più recenti. Inoltre, è possibile controllare se e quando alle istanze vengono applicate patch tramite la gestione delle versioni del motore del database.

Neptune è in grado di inviare notifiche via e-mail o SMS relative a importanti eventi del database, come il failover automatico. È possibile utilizzare la console per iscriversi ai vari eventi del database correlati ai database Neptune.

Neptune supporta operazioni rapide ed efficienti, in cui interi cluster di database multi-terabyte possono essere clonati in pochi minuti. La clonazione è utile per numerosi scopi, tra cui sviluppo di applicazioni, test, aggiornamenti di database ed esecuzione di query di analisi. La disponibilità immediata dei dati può velocizzare notevolmente lo sviluppo del software e aggiornare progetti, oltre a rendere più accurata l'analisi.

È possibile clonare un database Neptune in pochi passaggi nella console, senza effetti sull'ambiente di produzione. Il clone viene distribuito e replicato in tre zone di disponibilità.

IA generativa e ML

Apri tutto

Neptune Analytics supporta algoritmi per la ricerca dei percorsi, il rilevamento delle comunità (clustering), l'identificazione di dati importanti (centralità) e la quantificazione della somiglianza. Gli algoritmi per la ricerca dei percorsi determinano in modo efficiente il percorso più breve o ottimale tra due nodi. Questi algoritmi consentono di modellare situazioni del mondo reale, come reti stradali o social network, come nodi ed edge interconnessi. Trovare i percorsi più brevi o migliori tra i vari punti è fondamentale in applicazioni come quelle per la pianificazione del percorso per i sistemi GPS, per l'ottimizzazione della logistica e persino per risolvere problemi complessi in campi come la biologia o l'ingegneria.

Gli algoritmi per il rilevamento delle comunità calcolano gruppi o cluster di nodi significativi all'interno di una rete, rivelando modelli e strutture nascosti in grado di fornire informazioni sull'organizzazione e sulla dinamica di sistemi complessi. Ciò è utile in campi come l'analisi dei social network, la biologia (per identificare i moduli funzionali nelle reti di interazione proteina-proteina) e persino per comprendere il flusso di informazioni e la propagazione dell'influenza in vari domini.

Gli algoritmi per la centralità aiutano a individuare i nodi più influenti o importanti all'interno di una rete, fornendo informazioni sugli attori chiave o sui punti di interazione critici. Ciò è utile in campi come l'analisi dei social network, dove contribuisce a identificare le persone influenti, o nelle reti di trasporto, dove consente di individuare gli snodi cruciali per un routing e un'allocazione delle risorse efficienti.

Gli algoritmi per la somiglianza dei grafi consentono di confrontare e analizzare le somiglianze o le differenze strutturali tra diverse strutture di grafi, permettendo di approfondire relazioni, modelli e punti in comune tra diversi set di dati. Ciò è utile in vari campi come la biologia (per confrontare le strutture molecolari), i social network (per identificare comunità simili) e i sistemi di suggerimenti (per consigliare articoli simili in base alle preferenze dell'utente).

Neptune ML è basato su SageMaker, che utilizza GNNS, una tecnica ML creata appositamente per i grafici, per effettuare previsioni rapide e accurate utilizzando dati grafici. Con Neptune ML, puoi ottenere previsioni di oltre il 50% più precise per i grafi rispetto alle previsioni effettuate utilizzando metodi senza grafi.

Effettuare previsioni accurate su grafi con miliardi di relazioni può risultare difficile e dispendioso in termini di tempo. Gli approcci di machine learning esistenti, come XGBoost, non funzionano in modo efficace sui grafi perché sono progettati per i dati tabulari. Di conseguenza, l'impiego di questi metodi sui grafi può richiedere tempo, competenze specifiche da parte degli sviluppatori e producono previsioni non del tutto ottimali.

Produttività degli sviluppatori

Apri tutto

I grafi di proprietà sono popolari per la loro familiarità per gli sviluppatori abituati ai modelli relazionali. Il linguaggio di attraversamento Gremlin fornisce un modo rapido per attraversare i Property Graph. Amazon Neptune supporta il modello di grafo di proprietà utilizzando il linguaggio di attraversamento open source Apache TinkerPop Gremlin e fornisce un server Gremlin Websockets che supporta TinkerPop versione 3.3. Con Neptune, puoi costruire rapidamente attraversamenti Gremlin su Property Graph. Le applicazioni Gremlin esistenti possono utilizzare facilmente Neptune modificando la configurazione di servizio di Gremlin affinché punti su un'istanza Neptune.

Il Resource Description Framework (RDF) è popolare perché offre flessibilità per la modellazione di domini informativi complessi. Esistono numerosi set di dati gratuiti o pubblici disponibili in RDF, tra cui Wikidata e PubChem, un database di molecole chimiche. Neptune supporta gli standard Web semantici del W3C di RDF 1.1 e SPARQL 1.1 (Query and Update) e fornisce un endpoint HTTP REST che implementa il protocollo SPARQL 1.1. Con Neptune, è possibile utilizzare facilmente l'endpoint SPARQL per applicazioni a grafo sia nuove che esistenti.

Neptune supporta la creazione di applicazioni a grafo tramite openCypher, uno degli attuali linguaggi di query più diffusi tra gli sviluppatori che utilizzano database a grafo. Sviluppatori, analisti aziendali e data scientist apprezzano la sintassi ispirata a SQL di openCypher perché fornisce una struttura familiare per comporre query per applicazioni a grafo. Per il Database Neptune, i linguaggi di query di openCypher e Gremlin possono essere utilizzati insieme sugli stessi dati dei grafi di proprietà. Il supporto per openCypher è compatibile con il protocollo Bolt per continuare ad eseguire applicazioni che lo utilizzano per connettersi a Neptune.

Neptune supporta il caricamento rapido, parallelo e in blocco dei dati dei grafi di proprietà memorizzati su Amazon S3. È possibile utilizzare un'interfaccia REST per specificare la posizione dei dati su Amazon S3. Utilizza un formato CSV delimitato per caricare i dati in nodi ed edge. Per maggiori dettagli, consulta la documentazione sul caricamento in blocco del grafico delle proprietà di Neptune.

Il Database Neptune supporta il caricamento rapido, parallelo e in blocco dei dati RDF memorizzati su Amazon S3. È possibile utilizzare un'interfaccia REST per specificare la posizione dei dati su Amazon S3. Sono supportate le serializzazioni N-Triple (NT), N-Quad (NQ), RDF/XML e Turtle RDF 1.1. Per maggiori dettagli, consulta la documentazione sul caricamento in blocco di Neptune RDF.