As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Armazenamento
Os dados do Neptune são armazenados em um volume de cluster, que é um único volume virtual que usa unidades Non-Volatile Memory Express (NVMe). SSD-based O volume de cluster consiste em uma coleção de blocos lógicos conhecidos como segmentos. Cada um desses segmentos recebe 10 gigabytes (GB) de armazenamento. Os dados em cada segmento são replicados em três zonas de disponibilidade (AZs) em uma única AWS região em que o cluster de banco de dados reside.
Quando um cluster de banco de dados do Neptune é criado, ele recebe um único segmento de 10 GB. À medida que o volume de dados aumenta e excede o armazenamento alocado no momento, o Neptune expande automaticamente o volume do cluster adicionando novos segmentos. Um volume de cluster Neptune pode crescer até um tamanho máximo de 128 tebibytes (TiB) em todas as regiões suportadas, exceto nas regiões da China e das regiões AWS GovCloud (EUA), onde é limitado a 64 TiB.
O volume do cluster de banco de dados contém todos os dados, índices e dicionários do usuário (descritos na Modelo de dados de grafo do Neptune seção), bem como metadados internos, como registros de transações internas. Todos esses dados grafos, incluindo índices e logs internos, não podem exceder o tamanho máximo do volume do cluster.
I/O— Opção de armazenamento otimizado
O Neptune oferece dois modelos de preços para armazenamento:
Armazenamento padrão — o armazenamento padrão fornece armazenamento de banco de dados econômico para aplicativos com I/O uso moderado a baixo.
-
I/O—Armazenamento otimizado — Com I/O —Armazenamento otimizado, você paga somente pelo armazenamento que está usando, a um custo maior do que o armazenamento padrão, e não paga nada pelo I/O que usa.
Com o I/O armazenamento otimizado, você obtém custos previsíveis, baixa I/O latência e taxa de I/O transferência consistente para cargas de trabalho gráficas intensivas I/O.
Para obter mais informações, consulte I/O — Armazenamento otimizado.
Alocação de armazenamento do Neptune
Embora o volume de um cluster Neptune possa crescer para 128 TiB (ou 64 TiB em algumas regiões), você é cobrado pelo espaço alocado. O espaço total alocado é determinado pela marca d'água alta de armazenamento, que é a quantidade máxima alocada ao volume do cluster a qualquer momento durante sua existência.
Isso significa que, mesmo que você remova os dados do usuário de um volume de cluster, por exemplo, executando uma consulta diretag.V().drop(), o espaço total alocado permanecerá o mesmo. O Neptune otimiza automaticamente o espaço alocado não utilizado para reutilização no futuro.
Além dos dados do usuário, os dados do dicionário e os registros internos de transações também consomem armazenamento. Os dados do dicionário persistem mesmo depois que você exclui os dados gráficos que ele suporta, embora o Neptune possa reutilizar essas entradas se você reintroduzir os dados. Para limpar entradas de dicionário não utilizadas, você pode ativarColeta de resíduos do dicionário. Os troncos internos usam um espaço de armazenamento separado com sua própria marca d'água alta. Os registros expirados são reutilizados somente para outros registros, não para dados gráficos. O espaço alocado para registros está incluído no total informado pela VolumeBytesUsed CloudWatch métrica.
Confira Práticas recomendadas de armazenamento para conhecer maneiras de reduzir ao mínimo o armazenamento alocado e de reutilizar o espaço.
Faturamento de armazenamento do Neptune
Os custos de armazenamento são cobrados com base na marca d'água máxima de armazenamento, conforme descrito na seção anterior. O Amazon Neptune replica seus dados em várias zonas de disponibilidade, mas você paga por apenas uma cópia dos dados.
Você pode determinar qual é o limite máximo de armazenamento atual do seu cluster de banco de dados monitorando a VolumeBytesUsed CloudWatch métrica (consulteMonitorando Neptune usando a Amazon CloudWatch).
Outros fatores que podem afetar seus custos de armazenamento do Neptune incluem backups e instantâneos do banco de dados, que são cobrados separadamente como armazenamento de backup e se baseiam nos custos de armazenamento do Neptune (consulte). CloudWatch métricas que são úteis para gerenciar o armazenamento de backup do Neptune
No entanto, se você criar um clone do seu banco de dados, o clone apontará para o mesmo volume de cluster que seu próprio cluster de banco de dados usa, portanto, não há cobrança adicional de armazenamento pelos dados originais. Alterações subsequentes no clone usam o protocolo copy-on-write e geram custos adicionais de armazenamento.
Para obter mais informações sobre preços do Neptune, consulte os preços do
Práticas recomendadas de armazenamento do Neptune
Como determinados tipos de dados consomem armazenamento permanente no Neptune, use estas práticas recomendadas para evitar grandes picos no crescimento do armazenamento:
Ao projetar seu modelo de dados do grafo, evite, o máximo possível, usar chaves de propriedade e valores voltados para o usuário que sejam temporários por natureza.
Se você planeja fazer alterações em seu modelo de dados, não carregue dados em um cluster de banco de dados existente usando o novo modelo até limpar os dados desse cluster de banco de dados usando a API de redefinição rápida. Geralmente, a melhor estratégia é carregar dados que usam um novo modelo em um novo cluster de banco de dados.
-
As transações que trabalham com grandes volumes de dados geram logs internos grandes de modo correspondente, o que pode aumentar permanentemente a marca d'água alta do espaço de log interno. Por exemplo, uma única transação que exclui todos os dados em seu cluster de banco de dados pode gerar um grande log interno. Esse registro exige a alocação de uma grande quantidade de armazenamento interno, o que reduz permanentemente o espaço disponível para dados gráficos.
Para evitar isso, divida as transações grandes em transações menores e reserve um tempo entre elas para que os logs internos associados tenham a chance de expirar e liberar seu armazenamento interno para reutilização pelos logs subsequentes.
Para monitorar o crescimento do volume do seu cluster Neptune, você pode definir um CloudWatch alarme na
VolumeBytesUsedCloudWatch métrica. Isso poderá ser particularmente útil se os dados estiverem atingindo o tamanho máximo do volume do cluster. Para obter mais informações, consulte Usando CloudWatch alarmes da Amazon.
Se seu cluster de banco de dados tiver uma grande quantidade de espaço alocado não utilizado, você poderá reduzir seu armazenamento. Para fazer isso, exporte todos os dados em seu gráfico e recarregue-os em um novo cluster de banco de dados. Consulte o serviço e o utilitário de exportação de dados do Neptune para obter uma maneira fácil de exportar dados de um cluster de banco de dados e o carregador em massa do Neptune para uma maneira fácil de importar dados de volta para o Neptune.
nota
Criar e restaurar um snapshot não reduz a quantidade de armazenamento alocada para seu cluster de banco de dados, porque um snapshot retém a imagem original do armazenamento subjacente do cluster. Se uma quantidade considerável do armazenamento alocado não estiver sendo usada, a única maneira de reduzir a quantidade de armazenamento alocado é exportar os dados do grafo e recarregá-los em um novo cluster de banco de dados.
Confiabilidade e alta disponibilidade do armazenamento do Neptune
O Amazon Neptune foi projetado para ser confiável, durável e tolerante a falhas.
Como as cópias dos dados do Neptune são mantidas em três zonas de disponibilidade (AZs), o armazenamento dos dados é altamente durável, com uma probabilidade muito baixa de perda de dados. O Amazon Neptune replica os dados automaticamente nas zonas de disponibilidade, independentemente de haver instâncias de banco de dados nelas. A quantidade de replicação independe do número de instâncias de banco de dados no cluster.
Isso significa que é possível adicionar uma réplica de leitura rapidamente, porque o Neptune não cria uma cópia dos dados do grafo. Em vez disso, a réplica de leitura se conecta ao volume de cluster que já contém os dados. Da mesma forma, remover uma réplica de leitura não remove nenhum dos dados subjacentes.
Você pode excluir o volume do cluster e seus dados somente depois de excluir todas as suas instâncias de banco de dados.
O Neptune também detecta automaticamente as falhas nos segmentos que compõem o volume do cluster. Quando uma cópia dos dados em um segmento é corrompida, o Neptune repara imediatamente esse segmento, usando outras cópias dos dados dentro do mesmo segmento para garantir que os dados reparados estejam atualizados. Como resultado, o Neptune evita a perda de dados e reduz a necessidade de realizar uma restauração pontual para se recuperar de uma falha no disco.