Habilitar a pesquisa de texto completo em bancos de dados Neptune existentes - Amazon Neptune

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

Habilitar a pesquisa de texto completo em bancos de dados Neptune existentes

Essas são as abordagens estabelecidas para permitir a pesquisa de texto completo nos bancos de dados existentes do Amazon Neptune. Dependendo se você pode pausar suas workloads de gravação ou não, as etapas podem variar um pouco. Este guia descreve as etapas recomendadas para ambos os cenários. Ele abrange a habilitação de streams do Neptune, a criação de um clone de banco de dados, a sincronização de dados com um domínio do OpenSearch e a configuração de atualizações contínuas. Essa orientação utiliza serviços da AWS e ferramentas de código aberto para agilizar o processo e minimizar o tempo de inatividade.

Se for possível pausar as workloads de gravação

A melhor maneira de habilitar a pesquisa de texto completo em um banco de dados Neptune existente geralmente é a seguinte, desde que seja possível pausar as workloads de gravação. Isso requer a criação de um clone, a ativação dos fluxos usando um parâmetro de cluster e a reinicialização de todas as instâncias. Criar um clone é uma operação relativamente rápida, portanto, o tempo de inatividade necessário é limitado.

As etapas necessárias são:

  1. Interromper todas as workloads de gravação no banco de dados.

  2. Habilitar fluxos no banco de dados (consulte Enabling Neptune Streams).

  3. Criar um clone do banco de dados (consulte Database Cloning in Neptune).

  4. Retomar as workloads de gravação.

  5. Use a ferramenta export-neptune-to-elasticsearch no github para realizar uma sincronização única do banco de dados clonado para o domínio do OpenSearch.

  6. Use o modelo do CloudFormation da região para iniciar a sincronização do banco de dados original com atualização contínua (nenhuma alteração na configuração é necessária no modelo).

  7. Exclua o banco de dados clonado e a pilha CloudFormation criada para a ferramenta export-neptune-to-elasticsearch.

nota

O export-neptune-to-elasticsearch atualmente não oferece suporte ao OpenSearch sem servidor. As implantações que exigem uma sincronização única dos dados existentes no Neptune devem usar clusters gerenciados do OpenSearch.

Se não for possível pausar as workloads de gravação

Se você não puder suspender as workloads de gravação no banco de dados, veja uma abordagem que exige ainda menos tempo de inatividade do que a abordagem recomendada acima, mas precisa ser realizada com cuidado:

  1. Habilitar fluxos no banco de dados (consulte Enabling Neptune Streams).

  2. Criar um clone do banco de dados (consulte Database Cloning in Neptune).

  3. Obtenha o eventID mais recente dos fluxos no banco de dados clonado executando um comando desse tipo no endpoint da API de fluxos (consulte Calling the Neptune Streams REST API para obter mais informações):

    curl "https://(your neptune endpoint):(port)/(propertygraph or sparql)/stream?iteratorType=LATEST"

    Anote os valores nos campos commitNum e opNum no objeto lastEventId na resposta.

  4. Use a ferramenta export-neptune-to-elasticsearch no github para realizar uma sincronização única do banco de dados clonado para o domínio do OpenSearch.

  5. Use o modelo do CloudFormation da região para iniciar a sincronização do banco de dados original com atualização contínua.

    Faça a seguinte alteração ao criar a pilha: na página de detalhes da pilha, na seção Parâmetros, defina o valor do campo StartingCheckpoint como commitNum:opnum usando os valores commitNum e opNum registrados acima.

  6. Exclua o banco de dados clonado e a pilha CloudFormation criada para a ferramenta export-neptune-to-elasticsearch.