Pilastro dell'ottimizzazione dei costi - AWS Guida prescrittiva

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à.

Pilastro dell'ottimizzazione dei costi

Il pilastro dell'ottimizzazione dei costi del AWS Well-Architected Framework si concentra sull'evitare costi inutili. I seguenti consigli possono aiutarti a soddisfare i principi di progettazione per l'ottimizzazione dei costi e le migliori pratiche architettoniche per Neptune Analytics.

Il pilastro dell'ottimizzazione dei costi si concentra sulle seguenti aree chiave:

  • Comprendere la spesa nel tempo e controllare l'allocazione dei fondi

  • Selezione delle risorse del tipo e della quantità corretti

  • Scalabilità per soddisfare le esigenze aziendali senza spese eccessive

Comprendi i modelli di utilizzo e i servizi necessari

Prima di adottare Neptune Analytics, valuta se il tuo caso d'uso è adatto all'analisi dei grafici.

  • Database a grafo: un database a grafo come Neptune è ideale per il tuo carico di lavoro se il tuo modello di dati ha una struttura a grafi riconoscibile e le tue query devono esplorare le relazioni e attraversare più hop. Un database grafico non è adatto ai seguenti modelli:

    • Principalmente interrogazioni a hop singolo. In questo caso d'uso, valuta se i tuoi dati potrebbero essere meglio rappresentati come attributi di un oggetto.

    • Dati JSON o Binary Large Object (blob) archiviati come proprietà.

  • Analisi dei grafici: Neptune Analytics è un motore di database di analisi dei grafici in grado di analizzare rapidamente grandi quantità di dati grafici in memoria per ottenere informazioni e trovare tendenze. È possibile archiviare e interrogare i dati del grafico sia in un database Neptune che in un grafico di Neptune Analytics. Un database Neptune è più adatto per le esigenze di elaborazione transazionale online scalabile (OLTP). Neptune Analytics è ideale per carichi di lavoro di analisi effimeri. Puoi utilizzare i due in combinazione caricando i dati dal tuo database Neptune orientato alle transazioni su un grafico di Neptune Analytics per eseguire l'analisi di tali dati. Una volta completata l'analisi, puoi rimuovere il grafico di Neptune Analytics. Per un confronto più dettagliato, consulta Quando usare Neptune Analytics e quando usare Neptune Database nella documentazione di Neptune Analytics.

Determina, con attenzione ai costi, il modo migliore per compilare il tuo grafico di Neptune Analytics.

  • Importa in blocco i dati grafici archiviati in un bucket S3. Consigliamo questa opzione se i dati sono stati precedentemente caricati in blocco su un database Neptune o se disponi già, o puoi produrre prontamente, i dati da analizzare in CSV o in altri formati supportati richiesti dall'importazione in blocco. È possibile eseguire l'importazione in blocco come parte della procedura di creazione del grafico. È possibile porre limiti alla capacità minima e massima. È inoltre possibile eseguire l'importazione su un grafico vuoto creato in precedenza e monitorare l'attività di importazione durante l'esecuzione.

  • È possibile creare un grafico vuoto e quindi popolarlo tramite una query OpenCypher utilizzando il caricamento in batch. Questa opzione è ideale se i dati da caricare sono archiviati in Amazon S3 e sono inferiori a 50 GB.

  • È possibile popolare il grafico con i dati del cluster di database Neptune (supportato nella versione 1.3.0 o successiva del database Neptune). L'intento di questo modello è eseguire analisi sui dati attualmente presenti nel database grafico. Anche se il database è stato inizialmente popolato tramite caricamento in blocco, da allora potrebbe essere cambiato in modo significativo. Per importare dal database, Neptune Analytics clona il database ed esporta i dati dal clone in un bucket S3. Questa procedura comporta dei costi: in particolare i costi del database Neptune per l'esecuzione del clone e i costi di Amazon S3 per l'archiviazione e il consumo dei dati esportati. Il clone viene rimosso quando l'esportazione è completa. Puoi eliminare i dati esportati in Amazon S3.

  • È possibile popolare il grafico dall'istantanea di un cluster di database Neptune. Questa opzione è simile all'opzione precedente, tranne per il fatto che l'origine è un'istantanea del database. Per importare da un'istantanea, Neptune Analytics ripristina prima l'istantanea in un nuovo cluster di database, quindi esporta i dati in un bucket S3. Questa procedura comporta dei costi: in particolare i costi del database Neptune per l'esecuzione del cluster ripristinato e i costi di Amazon S3 per l'archiviazione e il consumo dei dati esportati.

  • Puoi anche eseguire query OpenCypher per creare, aggiornare o eliminare dati utilizzando transazioni conformi ad atomicità, coerenza, isolamento, durabilità (ACID) sul grafico. Consigliamo questo approccio come metodo per apportare piccoli aggiornamenti ma non come modo per seminare il grafico.

Se i dati necessari per l'analisi sono già archiviati in Amazon S3, consigliamo l'importazione in blocco o il caricamento in batch. Sono più convenienti rispetto alla compilazione del grafico da un cluster di database Neptune o da un'istantanea.

Seleziona le risorse prestando attenzione ai costi

I prezzi di Neptune Analytics utilizzano un'unità nota come Neptune Capacity Unit (m-NCU) ottimizzata per la memoria. Esiste un costo orario fisso per l'esecuzione di un grafico con un determinato m-NCU. Un grafico può avere delle repliche per il failover e queste repliche comportano anche un costo orario m-NCU.

Consigliamo le seguenti best practice per stimare la capacità, limitare i costi e monitorare i costi rispetto alle prestazioni:

  • Se possibile, crea il grafico importando dati da una fonte esistente: dati archiviati in Amazon S3 o un cluster o uno snapshot Neptune esistente. Ciò consente di risparmiare fatica perché Neptune Analytics esegue il lavoro pesante di seminare il grafico ed è possibile specificare una capacità massima limitata.

  • È possibile modificare la capacità assegnata su un grafico esistente.

  • Quando il grafico non è più necessario, è possibile creare un'istantanea ed eliminare il grafico. Se è necessario riutilizzarlo, è possibile ripristinare il grafico dall'istantanea.

  • È possibile scegliere il numero di repliche quando si crea il grafico. Imposta il valore in base ai tuoi requisiti di disponibilità dell'analisi. Risparmia sui costi riducendo al minimo questa impostazione. Il valore massimo di 2 consente la replica di due istanze in zone di disponibilità separate. Il valore minimo 0 indica che Neptune Analytics non eseguirà una replica. Tuttavia, il ripristino è più rapido quando è disponibile una replica. Per una spiegazione dell'errore e del ripristino del grafico, consulta la sezione Reliability Pillar.

  • Monitora le spese di Neptune Analytics per i periodi di fatturazione attuali e passati utilizzando. Gestione dei costi e fatturazione AWS

  • Monitora le metriche di Neptune Analytics, NumQueuedRequestsPerSec in particolareNumOpenCypherRequestsPerSec, GraphStorageUsagePercentGraphSizeBytes, CPUUtlization e CloudWatch per valutare se la capacità fornita è di dimensioni adeguate per il grafico. Determina se una capacità inferiore è in grado di soddisfare la frequenza di richiesta, l'utilizzo della CPU e le dimensioni del grafico osservati.

  • Se hai bisogno di un endpoint privato per il tuo grafico, presta attenzione ai costi degli endpoint elastici del cloud privato virtuale (VPC) IPs, dei gateway NAT o di altri costi relativi al VPC. Per ulteriori informazioni, consulta i prezzi di Amazon VPC e i prezzi di Amazon EC2.

  • Potresti voler eseguire una o più istanze di notebook Neptune per fornire un'interfaccia client che aiuti sviluppatori e analisti a interrogare e visualizzare il grafico (vedi i prezzi di Neptune workbench). Per ridurre al minimo i costi, condividi l'istanza tra gli utenti e crea cartelle di notebook separate per ogni utente. Chiudi l'istanza quando non è in uso. Per un approccio all'automazione dello spegnimento, consulta il post AWS sul blog Automatizza l'arresto e l'avvio delle risorse dell'ambiente Amazon Neptune utilizzando i tag di risorsa.