O Couchbase oferece uma única instalação onde você pode habilitar todos os serviços ou selecionar e escolher para personalizar de acordo com as necessidades do seu projeto. Este tutorial instalará todos os serviços por conveniência. Saiba mais sobre os serviços do Couchbase e o dimensionamento multidimensional.

Você deve ser redirecionado para o Painel. Usaremos dados do bucket de exemplo neste tutorial. Para instalar os dados, clique Buckets de Amostra.
Se, por algum motivo, você não ver o Bucket de Amostras link no painel, acesse Configurações a partir do menu esquerdo, olhe próximo ao canto superior direito da interface do usuário e você verá um item de menu para Buckets de Amostra, conforme mostrado abaixo.

Verifique beer-sample e clique Carregar Dados de Exemplo.

Espere alguns minutos para carregar, depois clique Baldes na navegação à esquerda.
Você deve ver o bucket beer-sample que acabamos de carregar.

Vamos ver os documentos. Clique no Documentos link à direita, ao lado de Estatística.
Vamos sincronizar documentos do tipo beer. Você pode colocar um filtro (type=”beer”) na caixa WHERE do N1QL e clicar Recuperar Documentos para conseguir esses documentos; será um pouco mais fácil ver e testar assim.

Criar Usuário do Couchbase
Criaremos um usuário para o aplicativo GlueSync utilizar. Isso é para fins de tutorial e você deve seguir suas práticas de segurança ao gerenciar seus usuários em conjunto com os requisitos do Couchbase e do GlueSync.
Vá para o Segurança link à esquerda e depois clique ADICIONAR USUÁRIO no canto superior direito.

Preencha as informações do usuário, conforme mostrado abaixo. Estamos usando o nome de usuário de usuário-cb e Senha RandomCBPass2!; guarde esta informação para depois. Certifique-se de verificar Administrador Completo em funções. Assim que estiver preenchido, clique no Adicionar Usuário botão.

Você deve ver o usuário que acabamos de criar.

Adicionar um bucket de metadados do GlueSync
O GlueSync usa o serviço de Eventing do Couchbase. O Eventing requer um bucket de Metadados, e criaremos um agora. Obter mais informações no GlueSync e no bucket de metadados.
Ir para Baldes no menu à esquerda e clique ADICIONAR BALDE no canto superior direito.

Insira o Nome dos Metadados e clique Adicionar Bucket. Usaremos os padrões para as outras opções.

Você deve ver dois baldes agora.

MSSQL
Usaremos o SQL Server Management Studio para configurar o MSSQL, que foi instalado na etapa acima. Se você precisar instalar o management studio, você pode encontre aqui.
Faça o login com as credenciais passadas para o comando Docker na etapa anterior, neste caso, Login: Olá e Senha: RandomMSSQLPass2!.

Criar Novo Banco de Dados
Criaremos um novo banco de dados para onde os dados do Couchbase serão carregados.

Nesse caso, como sou muito criativo, vou usar cb, e escolha Ok.

Criar Login
Em seguida, crie um Logon do MSSQL. Clique com o botão direito na pasta Logons e escolha Novo login....

O nome de login que estamos usando é usuário-mssql e a senha é RandomMSSQLUserPass2!.
Definir banco de dados padrão como cb, o banco de dados criado acima.
Você deve seguir seus padrões de segurança ao criar usuários. As instruções neste artigo são apenas para fins de tutorial e algumas opções que estou escolhendo são para simplificação.

Ir para Mapeamento de Usuários, à esquerda embaixo Selecione uma página, e selecione cb sob Usuários mapeados para este login e db_owner sob Associação a função de banco de dados.

Agora que temos essa configuração, verifique se você consegue fazer login com o usuário. Saia da conta sa e faça login novamente com o novo usuário.
Criar Tabela
Vamos criar uma tabela para os dados a serem sincronizados para e do Couchbase. Vá para o Bancos de dados, então cb, depois abra um Nova Consulta janela. Os campos desta tabela correspondem aos atributos no documento beer-samples do Couchbase. O SQL para criar a tabela está abaixo.

Execute o comando create table.
create table beer
(
name varchar(200) not null constraint beer_pk primary key nonclustered,
abv numeric(5, 2) not null,
brewery_id varchar(max) not null,
category varchar(max),
description varchar(max) not null,
ibu int not null,
srm int not null,
style varchar(max),
upc int not null,
updated varchar(max) not null
)
go
Configurar e executar o GlueSync para Couchbase para MSSQL
O GlueSync tem dois componentes, um para Couchbase para MSSQL e outro para MSSQL para Couchbase. Isso configurará a aplicação para sincronizar dados do Couchbase para o MSSQL. A configuração para a outra direção é muito semelhante.
Criar pasta de configuração
Crie uma pasta para o arquivo de configuração do GlueSync. Vamos compartilhar isso com o contêiner do Docker ao iniciá-lo.
mkdir c:\agluesync\config
Obter os endereços IP da rede Docker para o Couchbase e o MSSQL
Precisamos das informações da rede Docker para os containers do Couchbase e do MSSQL para configurar o GlueSync.
Obtenha os IDs dos contêineres.
C:UsersDavid Elliott> docker container ls -a
ID DO CONTÊINER IMAGEM COMANDO CRIADO STATUS PORTAS NOMEES
10b985792024 mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04 "/opt/mssql/bin/perm…" 34 minutos atrás Ativo há 34 minutos 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp mssql
d2df1bad1647 couchbase:enterprise-6.6.3 "/entrypoint.sh couc…" 40 minutos atrás Ativo há 40 minutos 0.0.0.0:8091-8096->8091-8096/tcp, :::8091-8096->8091-8096/tcp, 11207/tcp, 0.0.0.0:11210-11211->11210-11211/tcp, :::11210-11211->11210-11211/tcp, 18091-18096/tcp cb-663
Agora, obtenha os endereços IP para os contêineres usando esses IDs através do comando Docker Inspect no Couchbase.
C:UsersDavid Elliott> docker inspect d2df1bad1647 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
Execute o comando Docker Inspect no MSSQL.
C:\UsersDavid Elliott> docker inspect 10b985792024 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
Os endereços IP são:
- Couchbase – 172.17.0.2
- MSSQL – 172.17.0.3
NOTA: Se você parar e reiniciar os contêineres, o endereço IP poderá mudar e você precisará verificar se a configuração ainda está correta.
Criar o arquivo de configuração do GlueSync
Atualize as informações abaixo com suas informações específicas e salve-as no arquivo config.json na pasta que você criou acima, ou seja, c:\agluesync\config\config.json
{
"sourceHost": "172.17.0.2",
"sourcePort": "8091",
"sourceName": "beer-sample",
"sourceUsername": "cb-user",
"sourcePassword": "RandomCBPass2!",
"sourceEntities": {
"beer": {}
},
"sourceChangeRetention": 5,
"copySourceEntitiesAtStartup": true,
"targetHost": "172.17.0.3",
"targetPort": "1433",
"targetName": "cb",
"targetUsername": "mssql-user",
"targetPassword": "RandomMSSQLUserPass2!",
"maxItemsCountPerTransaction": 100,
"maxTransactionCountPerIteration": 100,
"couchbase": {
"timeoutSeconds": 60,
"indexReplicaCount": 0,
"eventing": {
"baseUrl": "https://172.17.0.2",
"metadataBucketName": "Metadata"
}
}
}
Obter credenciais do GlueSync para baixar a imagem do GlueSync do Docker
Consulte a seção Antes de Começarmos acima para obter informações sobre a licença do GlueSync para o registro Docker e o download do produto.
Assim que tiver essas informações, siga os passos abaixo para instalar o GlueSync.
Como você já pode ter credenciais armazenadas, talvez queira sair. Se você tiver problemas com credenciais, este pode ser o motivo.
Removendo credenciais de login para registry.gitlab.com
Faça login no registro – este pode ser um registro diferente do que você costuma usar, portanto, verifique esse valor novamente.
C:UsersDavid Elliott> docker login registry.gitlab.com
Username: xxxusernamexxx
Password:
Login Succeeded
Baixe a imagem.
C:UsersDavid Elliott> docker pull registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
latest: Pulling from molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql
Digest: sha256:55e476fa05853c9dc5dfc1263cd5d2a5d3e1ea98f69b4d15d8edb83b91dcb142
Status: Downloaded newer image for registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
C:UsersDavid Elliott>
Você pode querer sair novamente (já tive problemas quando não saí e obtive erros na próxima vez que executei um comando).
Removendo credenciais de login para registry.gitlab.com
Iniciar o container/aplicativo GlueSync
Atualize o caminho para o arquivo de configuração no comando do Docker abaixo para corresponder ao caminho no seu computador.
docker run -d --name gluesync-cb-to-mssql -v c:/a/gluesync/config:/opt/app/config registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:1.2.3
Você deve ter três contêineres rodando no Docker.

Se não estiver rodando, verifique os logs do contêiner em busca de mensagens. Sem querer, coloquei o arquivo de configuração na pasta errada e o GlueSync não iniciou; os logs me avisaram o que estava acontecendo.
Veja a Mágica
Vá para o MSSQL e faça uma consulta na tabela; você deverá ver os dados do bucket do Couchbase na tabela que criamos. Uma vez que o GlueSync foi iniciado, ele sincronizou os dados do Couchbase para o MSSQL.

Para testar, você pode modificar os dados e ver as alterações sincronizadas entre os bancos de dados. Vá para os documentos de beer-samples e faça uma alteração. Aqui, atualizei dois documentos. Você pode ver o log de saída do Docker abaixo da interface do Couchbase. O GlueSync detectou as duas alterações.

Mudando para o MSSQL, consigo ver as atualizações no MSSQL também.

Conclusão
Frequentemente precisamos trabalhar com vários bancos de dados, particularmente quando estamos fazendo uma modernização. Podemos ter um lançamento em fases ou precisar trazer dados existentes de um banco de dados relacional mais antigo para o Couchbase. Isso pode envolver código personalizado e testes ou considerar um produto como o GlueSync, que torna o processo mais integrado.
Finalizar compra GlueSync para obter mais informações sobre seus produtos e capacidades.
Neste post, usaremos o Docker enquanto percorremos as etapas para configurar e configurar o Couchbase, o Microsoft SQL Server e o GlueSync, demonstrando a sincronização de dados entre os dois.
Antes de Começarmos
Docker
Primeiro, este tutorial usa Docker e, se você não tiver o Docker, pode encontrar mais informações aqui https://www.docker.com/. Você precisará instalar o Docker para concluir as etapas abaixo.
GlueSync
Em seguida, o GlueSync requer uma licença. Para concluir este tutorial, você precisará de uma licença da equipe do GlueSync. Você pode acessar https://gluesync.com/plans/ e ver mais informações sobre seus planos e https://gluesync.com/contact-sales/ para entrar em contato com a equipe do GlueSync.
Etapas de alto nível
- Executar e Configurar o Couchbase e o MSSQL
- Criar o arquivo de configuração para o GlueSync
- Configurar e executar o GlueSync para Couchbase para MSSQL
- Veja a mágica
Execute o Couchbase e o MSSQL
Couchbase
Usaremos o Couchbase 6.6.3 para este tutorial. O seguinte comando Docker colocará o Couchbase em funcionamento, expondo as portas de que precisamos.
docker run -d --name cb-663 -p 8091-8096:8091-8096 -p 11210-11211:11210-11211 couchbase:enterprise-6.6.3
MSSQL
Para o comando de execução do Docker do MSSQL, note que estamos incluindo a senha do SA. Atualize-a e anote-a, nós a usaremos mais tarde.
docker run -d --name mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=RandomMSSQLPass2!' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04
Verificar Contêineres
Agora você deve ter dois containers em execução, Couchbase e MSSQL. Vamos iniciar o container do GlueSync depois de configurá-los.

Configure o Couchbase com GlueSync e MSSQL
Começaremos com o Couchbase e faremos uma instalação básica.
Configurar Novo Cluster
A execução dos comandos do Docker acima teria iniciado o Couchbase e exposto as portas para que você possa abrir a interface do Couchbase acessando https://localhost:8091/ui/index.html.
Nós escolheremos Configurar Novo Cluster e configure um cluster de um nó (não recomendado para produção, mas funciona ótimo para desenvolvimento e para fazer um tutorial).

Insira as informações do novo cluster e clique Avançar: Aceitar os Termos. Anote sua senha, vamos precisar dela mais tarde. Estamos usando RandomCBPass2! para esta instância.

Se você aceitar os termos e condições, marque essa opção e clique Concluir com Padrões.
NOTA O GlueSync funciona com o Couchbase usando algumas tecnologias do Couchbase, o Sync Gateway e o serviço Eventing. Estamos usando a opção Eventing neste tutorial. O recurso Eventing será instalado com o Concluir com Padrões seleção abaixo.
O Couchbase oferece uma única instalação onde você pode habilitar todos os serviços ou selecionar e escolher para personalizar de acordo com as necessidades do seu projeto. Este tutorial instalará todos os serviços por conveniência. Saiba mais sobre os serviços do Couchbase e o dimensionamento multidimensional.

Você deve ser redirecionado para o Painel. Usaremos dados do bucket de exemplo neste tutorial. Para instalar os dados, clique Buckets de Amostra.
Se, por algum motivo, você não ver o Bucket de Amostras link no painel, acesse Configurações a partir do menu esquerdo, olhe próximo ao canto superior direito da interface do usuário e você verá um item de menu para Buckets de Amostra, conforme mostrado abaixo.

Verifique beer-sample e clique Carregar Dados de Exemplo.

Espere alguns minutos para carregar, depois clique Baldes na navegação à esquerda.
Você deve ver o bucket beer-sample que acabamos de carregar.

Vamos ver os documentos. Clique no Documentos link à direita, ao lado de Estatística.
Vamos sincronizar documentos do tipo beer. Você pode colocar um filtro (type=”beer”) na caixa WHERE do N1QL e clicar Recuperar Documentos para conseguir esses documentos; será um pouco mais fácil ver e testar assim.

Criar Usuário do Couchbase
Criaremos um usuário para o aplicativo GlueSync utilizar. Isso é para fins de tutorial e você deve seguir suas práticas de segurança ao gerenciar seus usuários em conjunto com os requisitos do Couchbase e do GlueSync.
Vá para o Segurança link à esquerda e depois clique ADICIONAR USUÁRIO no canto superior direito.

Preencha as informações do usuário, conforme mostrado abaixo. Estamos usando o nome de usuário de usuário-cb e Senha RandomCBPass2!; guarde esta informação para depois. Certifique-se de verificar Administrador Completo em funções. Assim que estiver preenchido, clique no Adicionar Usuário botão.

Você deve ver o usuário que acabamos de criar.

Adicionar um bucket de metadados do GlueSync
O GlueSync usa o serviço de Eventing do Couchbase. O Eventing requer um bucket de Metadados, e criaremos um agora. Obter mais informações no GlueSync e no bucket de metadados.
Ir para Baldes no menu à esquerda e clique ADICIONAR BALDE no canto superior direito.

Insira o Nome dos Metadados e clique Adicionar Bucket. Usaremos os padrões para as outras opções.

Você deve ver dois baldes agora.

MSSQL
Usaremos o SQL Server Management Studio para configurar o MSSQL, que foi instalado na etapa acima. Se você precisar instalar o management studio, você pode encontre aqui.
Faça o login com as credenciais passadas para o comando Docker na etapa anterior, neste caso, Login: Olá e Senha: RandomMSSQLPass2!.

Criar Novo Banco de Dados
Criaremos um novo banco de dados para onde os dados do Couchbase serão carregados.

Nesse caso, como sou muito criativo, vou usar cb, e escolha Ok.

Criar Login
Em seguida, crie um Logon do MSSQL. Clique com o botão direito na pasta Logons e escolha Novo login....

O nome de login que estamos usando é usuário-mssql e a senha é RandomMSSQLUserPass2!.
Definir banco de dados padrão como cb, o banco de dados criado acima.
Você deve seguir seus padrões de segurança ao criar usuários. As instruções neste artigo são apenas para fins de tutorial e algumas opções que estou escolhendo são para simplificação.

Ir para Mapeamento de Usuários, à esquerda embaixo Selecione uma página, e selecione cb sob Usuários mapeados para este login e db_owner sob Associação a função de banco de dados.

Agora que temos essa configuração, verifique se você consegue fazer login com o usuário. Saia da conta sa e faça login novamente com o novo usuário.
Criar Tabela
Vamos criar uma tabela para os dados a serem sincronizados para e do Couchbase. Vá para o Bancos de dados, então cb, depois abra um Nova Consulta janela. Os campos desta tabela correspondem aos atributos no documento beer-samples do Couchbase. O SQL para criar a tabela está abaixo.

Execute o comando create table.
create table beer
(
name varchar(200) not null constraint beer_pk primary key nonclustered,
abv numeric(5, 2) not null,
brewery_id varchar(max) not null,
category varchar(max),
description varchar(max) not null,
ibu int not null,
srm int not null,
style varchar(max),
upc int not null,
updated varchar(max) not null
)
go
Configurar e executar o GlueSync para Couchbase para MSSQL
O GlueSync tem dois componentes, um para Couchbase para MSSQL e outro para MSSQL para Couchbase. Isso configurará a aplicação para sincronizar dados do Couchbase para o MSSQL. A configuração para a outra direção é muito semelhante.
Criar pasta de configuração
Crie uma pasta para o arquivo de configuração do GlueSync. Vamos compartilhar isso com o contêiner do Docker ao iniciá-lo.
mkdir c:\agluesync\config
Obter os endereços IP da rede Docker para o Couchbase e o MSSQL
Precisamos das informações da rede Docker para os containers do Couchbase e do MSSQL para configurar o GlueSync.
Obtenha os IDs dos contêineres.
C:UsersDavid Elliott> docker container ls -a
ID DO CONTÊINER IMAGEM COMANDO CRIADO STATUS PORTAS NOMEES
10b985792024 mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04 "/opt/mssql/bin/perm…" 34 minutos atrás Ativo há 34 minutos 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp mssql
d2df1bad1647 couchbase:enterprise-6.6.3 "/entrypoint.sh couc…" 40 minutos atrás Ativo há 40 minutos 0.0.0.0:8091-8096->8091-8096/tcp, :::8091-8096->8091-8096/tcp, 11207/tcp, 0.0.0.0:11210-11211->11210-11211/tcp, :::11210-11211->11210-11211/tcp, 18091-18096/tcp cb-663
Agora, obtenha os endereços IP para os contêineres usando esses IDs através do comando Docker Inspect no Couchbase.
C:UsersDavid Elliott> docker inspect d2df1bad1647 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
Execute o comando Docker Inspect no MSSQL.
C:\UsersDavid Elliott> docker inspect 10b985792024 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
Os endereços IP são:
- Couchbase – 172.17.0.2
- MSSQL – 172.17.0.3
NOTA: Se você parar e reiniciar os contêineres, o endereço IP poderá mudar e você precisará verificar se a configuração ainda está correta.
Criar o arquivo de configuração do GlueSync
Atualize as informações abaixo com suas informações específicas e salve-as no arquivo config.json na pasta que você criou acima, ou seja, c:\agluesync\config\config.json
{
"sourceHost": "172.17.0.2",
"sourcePort": "8091",
"sourceName": "beer-sample",
"sourceUsername": "cb-user",
"sourcePassword": "RandomCBPass2!",
"sourceEntities": {
"beer": {}
},
"sourceChangeRetention": 5,
"copySourceEntitiesAtStartup": true,
"targetHost": "172.17.0.3",
"targetPort": "1433",
"targetName": "cb",
"targetUsername": "mssql-user",
"targetPassword": "RandomMSSQLUserPass2!",
"maxItemsCountPerTransaction": 100,
"maxTransactionCountPerIteration": 100,
"couchbase": {
"timeoutSeconds": 60,
"indexReplicaCount": 0,
"eventing": {
"baseUrl": "https://172.17.0.2",
"metadataBucketName": "Metadata"
}
}
}
Obter credenciais do GlueSync para baixar a imagem do GlueSync do Docker
Consulte a seção Antes de Começarmos acima para obter informações sobre a licença do GlueSync para o registro Docker e o download do produto.
Assim que tiver essas informações, siga os passos abaixo para instalar o GlueSync.
Como você já pode ter credenciais armazenadas, talvez queira sair. Se você tiver problemas com credenciais, este pode ser o motivo.
Removendo credenciais de login para registry.gitlab.com
Faça login no registro – este pode ser um registro diferente do que você costuma usar, portanto, verifique esse valor novamente.
C:UsersDavid Elliott> docker login registry.gitlab.com
Username: xxxusernamexxx
Password:
Login Succeeded
Baixe a imagem.
C:UsersDavid Elliott> docker pull registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
latest: Pulling from molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql
Digest: sha256:55e476fa05853c9dc5dfc1263cd5d2a5d3e1ea98f69b4d15d8edb83b91dcb142
Status: Downloaded newer image for registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
C:UsersDavid Elliott>
Você pode querer sair novamente (já tive problemas quando não saí e obtive erros na próxima vez que executei um comando).
Removendo credenciais de login para registry.gitlab.com
Iniciar o container/aplicativo GlueSync
Atualize o caminho para o arquivo de configuração no comando do Docker abaixo para corresponder ao caminho no seu computador.
docker run -d --name gluesync-cb-to-mssql -v c:/a/gluesync/config:/opt/app/config registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:1.2.3
Você deve ter três contêineres rodando no Docker.

Se não estiver rodando, verifique os logs do contêiner em busca de mensagens. Sem querer, coloquei o arquivo de configuração na pasta errada e o GlueSync não iniciou; os logs me avisaram o que estava acontecendo.
Veja a Mágica
Vá para o MSSQL e faça uma consulta na tabela; você deverá ver os dados do bucket do Couchbase na tabela que criamos. Uma vez que o GlueSync foi iniciado, ele sincronizou os dados do Couchbase para o MSSQL.

Para testar, você pode modificar os dados e ver as alterações sincronizadas entre os bancos de dados. Vá para os documentos de beer-samples e faça uma alteração. Aqui, atualizei dois documentos. Você pode ver o log de saída do Docker abaixo da interface do Couchbase. O GlueSync detectou as duas alterações.

Mudando para o MSSQL, consigo ver as atualizações no MSSQL também.

Conclusão
Frequentemente precisamos trabalhar com vários bancos de dados, particularmente quando estamos fazendo uma modernização. Podemos ter um lançamento em fases ou precisar trazer dados existentes de um banco de dados relacional mais antigo para o Couchbase. Isso pode envolver código personalizado e testes ou considerar um produto como o GlueSync, que torna o processo mais integrado.
Finalizar compra GlueSync para obter mais informações sobre seus produtos e capacidades.
O GlueSync permite replicar dados de e para RDBMS (Microsoft SQL Server e Oracle) em tempo real com o Couchbase.
Neste post, usaremos o Docker enquanto percorremos as etapas para configurar e configurar o Couchbase, o Microsoft SQL Server e o GlueSync, demonstrando a sincronização de dados entre os dois.
Antes de Começarmos
Docker
Primeiro, este tutorial usa Docker e, se você não tiver o Docker, pode encontrar mais informações aqui https://www.docker.com/. Você precisará instalar o Docker para concluir as etapas abaixo.
GlueSync
Em seguida, o GlueSync requer uma licença. Para concluir este tutorial, você precisará de uma licença da equipe do GlueSync. Você pode acessar https://gluesync.com/plans/ e ver mais informações sobre seus planos e https://gluesync.com/contact-sales/ para entrar em contato com a equipe do GlueSync.
Etapas de alto nível
- Executar e Configurar o Couchbase e o MSSQL
- Criar o arquivo de configuração para o GlueSync
- Configurar e executar o GlueSync para Couchbase para MSSQL
- Veja a mágica
Execute o Couchbase e o MSSQL
Couchbase
Usaremos o Couchbase 6.6.3 para este tutorial. O seguinte comando Docker colocará o Couchbase em funcionamento, expondo as portas de que precisamos.
docker run -d --name cb-663 -p 8091-8096:8091-8096 -p 11210-11211:11210-11211 couchbase:enterprise-6.6.3
MSSQL
Para o comando de execução do Docker do MSSQL, note que estamos incluindo a senha do SA. Atualize-a e anote-a, nós a usaremos mais tarde.
docker run -d --name mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=RandomMSSQLPass2!' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04
Verificar Contêineres
Agora você deve ter dois containers em execução, Couchbase e MSSQL. Vamos iniciar o container do GlueSync depois de configurá-los.

Configure o Couchbase com GlueSync e MSSQL
Começaremos com o Couchbase e faremos uma instalação básica.
Configurar Novo Cluster
A execução dos comandos do Docker acima teria iniciado o Couchbase e exposto as portas para que você possa abrir a interface do Couchbase acessando https://localhost:8091/ui/index.html.
Nós escolheremos Configurar Novo Cluster e configure um cluster de um nó (não recomendado para produção, mas funciona ótimo para desenvolvimento e para fazer um tutorial).

Insira as informações do novo cluster e clique Avançar: Aceitar os Termos. Anote sua senha, vamos precisar dela mais tarde. Estamos usando RandomCBPass2! para esta instância.

Se você aceitar os termos e condições, marque essa opção e clique Concluir com Padrões.
NOTA O GlueSync funciona com o Couchbase usando algumas tecnologias do Couchbase, o Sync Gateway e o serviço Eventing. Estamos usando a opção Eventing neste tutorial. O recurso Eventing será instalado com o Concluir com Padrões seleção abaixo.
O Couchbase oferece uma única instalação onde você pode habilitar todos os serviços ou selecionar e escolher para personalizar de acordo com as necessidades do seu projeto. Este tutorial instalará todos os serviços por conveniência. Saiba mais sobre os serviços do Couchbase e o dimensionamento multidimensional.

Você deve ser redirecionado para o Painel. Usaremos dados do bucket de exemplo neste tutorial. Para instalar os dados, clique Buckets de Amostra.
Se, por algum motivo, você não ver o Bucket de Amostras link no painel, acesse Configurações a partir do menu esquerdo, olhe próximo ao canto superior direito da interface do usuário e você verá um item de menu para Buckets de Amostra, conforme mostrado abaixo.

Verifique beer-sample e clique Carregar Dados de Exemplo.

Espere alguns minutos para carregar, depois clique Baldes na navegação à esquerda.
Você deve ver o bucket beer-sample que acabamos de carregar.

Vamos ver os documentos. Clique no Documentos link à direita, ao lado de Estatística.
Vamos sincronizar documentos do tipo beer. Você pode colocar um filtro (type=”beer”) na caixa WHERE do N1QL e clicar Recuperar Documentos para conseguir esses documentos; será um pouco mais fácil ver e testar assim.

Criar Usuário do Couchbase
Criaremos um usuário para o aplicativo GlueSync utilizar. Isso é para fins de tutorial e você deve seguir suas práticas de segurança ao gerenciar seus usuários em conjunto com os requisitos do Couchbase e do GlueSync.
Vá para o Segurança link à esquerda e depois clique ADICIONAR USUÁRIO no canto superior direito.

Preencha as informações do usuário, conforme mostrado abaixo. Estamos usando o nome de usuário de usuário-cb e Senha RandomCBPass2!; guarde esta informação para depois. Certifique-se de verificar Administrador Completo em funções. Assim que estiver preenchido, clique no Adicionar Usuário botão.

Você deve ver o usuário que acabamos de criar.

Adicionar um bucket de metadados do GlueSync
O GlueSync usa o serviço de Eventing do Couchbase. O Eventing requer um bucket de Metadados, e criaremos um agora. Obter mais informações no GlueSync e no bucket de metadados.
Ir para Baldes no menu à esquerda e clique ADICIONAR BALDE no canto superior direito.

Insira o Nome dos Metadados e clique Adicionar Bucket. Usaremos os padrões para as outras opções.

Você deve ver dois baldes agora.

MSSQL
Usaremos o SQL Server Management Studio para configurar o MSSQL, que foi instalado na etapa acima. Se você precisar instalar o management studio, você pode encontre aqui.
Faça o login com as credenciais passadas para o comando Docker na etapa anterior, neste caso, Login: Olá e Senha: RandomMSSQLPass2!.

Criar Novo Banco de Dados
Criaremos um novo banco de dados para onde os dados do Couchbase serão carregados.

Nesse caso, como sou muito criativo, vou usar cb, e escolha Ok.

Criar Login
Em seguida, crie um Logon do MSSQL. Clique com o botão direito na pasta Logons e escolha Novo login....

O nome de login que estamos usando é usuário-mssql e a senha é RandomMSSQLUserPass2!.
Definir banco de dados padrão como cb, o banco de dados criado acima.
Você deve seguir seus padrões de segurança ao criar usuários. As instruções neste artigo são apenas para fins de tutorial e algumas opções que estou escolhendo são para simplificação.

Ir para Mapeamento de Usuários, à esquerda embaixo Selecione uma página, e selecione cb sob Usuários mapeados para este login e db_owner sob Associação a função de banco de dados.

Agora que temos essa configuração, verifique se você consegue fazer login com o usuário. Saia da conta sa e faça login novamente com o novo usuário.
Criar Tabela
Vamos criar uma tabela para os dados a serem sincronizados para e do Couchbase. Vá para o Bancos de dados, então cb, depois abra um Nova Consulta janela. Os campos desta tabela correspondem aos atributos no documento beer-samples do Couchbase. O SQL para criar a tabela está abaixo.

Execute o comando create table.
create table beer
(
name varchar(200) not null constraint beer_pk primary key nonclustered,
abv numeric(5, 2) not null,
brewery_id varchar(max) not null,
category varchar(max),
description varchar(max) not null,
ibu int not null,
srm int not null,
style varchar(max),
upc int not null,
updated varchar(max) not null
)
go
Configurar e executar o GlueSync para Couchbase para MSSQL
O GlueSync tem dois componentes, um para Couchbase para MSSQL e outro para MSSQL para Couchbase. Isso configurará a aplicação para sincronizar dados do Couchbase para o MSSQL. A configuração para a outra direção é muito semelhante.
Criar pasta de configuração
Crie uma pasta para o arquivo de configuração do GlueSync. Vamos compartilhar isso com o contêiner do Docker ao iniciá-lo.
mkdir c:\agluesync\config
Obter os endereços IP da rede Docker para o Couchbase e o MSSQL
Precisamos das informações da rede Docker para os containers do Couchbase e do MSSQL para configurar o GlueSync.
Obtenha os IDs dos contêineres.
C:UsersDavid Elliott> docker container ls -a
ID DO CONTÊINER IMAGEM COMANDO CRIADO STATUS PORTAS NOMEES
10b985792024 mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04 "/opt/mssql/bin/perm…" 34 minutos atrás Ativo há 34 minutos 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp mssql
d2df1bad1647 couchbase:enterprise-6.6.3 "/entrypoint.sh couc…" 40 minutos atrás Ativo há 40 minutos 0.0.0.0:8091-8096->8091-8096/tcp, :::8091-8096->8091-8096/tcp, 11207/tcp, 0.0.0.0:11210-11211->11210-11211/tcp, :::11210-11211->11210-11211/tcp, 18091-18096/tcp cb-663
Agora, obtenha os endereços IP para os contêineres usando esses IDs através do comando Docker Inspect no Couchbase.
C:UsersDavid Elliott> docker inspect d2df1bad1647 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
Execute o comando Docker Inspect no MSSQL.
C:\UsersDavid Elliott> docker inspect 10b985792024 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
Os endereços IP são:
- Couchbase – 172.17.0.2
- MSSQL – 172.17.0.3
NOTA: Se você parar e reiniciar os contêineres, o endereço IP poderá mudar e você precisará verificar se a configuração ainda está correta.
Criar o arquivo de configuração do GlueSync
Atualize as informações abaixo com suas informações específicas e salve-as no arquivo config.json na pasta que você criou acima, ou seja, c:\agluesync\config\config.json
{
"sourceHost": "172.17.0.2",
"sourcePort": "8091",
"sourceName": "beer-sample",
"sourceUsername": "cb-user",
"sourcePassword": "RandomCBPass2!",
"sourceEntities": {
"beer": {}
},
"sourceChangeRetention": 5,
"copySourceEntitiesAtStartup": true,
"targetHost": "172.17.0.3",
"targetPort": "1433",
"targetName": "cb",
"targetUsername": "mssql-user",
"targetPassword": "RandomMSSQLUserPass2!",
"maxItemsCountPerTransaction": 100,
"maxTransactionCountPerIteration": 100,
"couchbase": {
"timeoutSeconds": 60,
"indexReplicaCount": 0,
"eventing": {
"baseUrl": "https://172.17.0.2",
"metadataBucketName": "Metadata"
}
}
}
Obter credenciais do GlueSync para baixar a imagem do GlueSync do Docker
Consulte a seção Antes de Começarmos acima para obter informações sobre a licença do GlueSync para o registro Docker e o download do produto.
Assim que tiver essas informações, siga os passos abaixo para instalar o GlueSync.
Como você já pode ter credenciais armazenadas, talvez queira sair. Se você tiver problemas com credenciais, este pode ser o motivo.
Removendo credenciais de login para registry.gitlab.com
Faça login no registro – este pode ser um registro diferente do que você costuma usar, portanto, verifique esse valor novamente.
C:UsersDavid Elliott> docker login registry.gitlab.com
Username: xxxusernamexxx
Password:
Login Succeeded
Baixe a imagem.
C:UsersDavid Elliott> docker pull registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
latest: Pulling from molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql
Digest: sha256:55e476fa05853c9dc5dfc1263cd5d2a5d3e1ea98f69b4d15d8edb83b91dcb142
Status: Downloaded newer image for registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
C:UsersDavid Elliott>
Você pode querer sair novamente (já tive problemas quando não saí e obtive erros na próxima vez que executei um comando).
Removendo credenciais de login para registry.gitlab.com
Iniciar o container/aplicativo GlueSync
Atualize o caminho para o arquivo de configuração no comando do Docker abaixo para corresponder ao caminho no seu computador.
docker run -d --name gluesync-cb-to-mssql -v c:/a/gluesync/config:/opt/app/config registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:1.2.3
Você deve ter três contêineres rodando no Docker.

Se não estiver rodando, verifique os logs do contêiner em busca de mensagens. Sem querer, coloquei o arquivo de configuração na pasta errada e o GlueSync não iniciou; os logs me avisaram o que estava acontecendo.
Veja a Mágica
Vá para o MSSQL e faça uma consulta na tabela; você deverá ver os dados do bucket do Couchbase na tabela que criamos. Uma vez que o GlueSync foi iniciado, ele sincronizou os dados do Couchbase para o MSSQL.

Para testar, você pode modificar os dados e ver as alterações sincronizadas entre os bancos de dados. Vá para os documentos de beer-samples e faça uma alteração. Aqui, atualizei dois documentos. Você pode ver o log de saída do Docker abaixo da interface do Couchbase. O GlueSync detectou as duas alterações.

Mudando para o MSSQL, consigo ver as atualizações no MSSQL também.

Conclusão
Frequentemente precisamos trabalhar com vários bancos de dados, particularmente quando estamos fazendo uma modernização. Podemos ter um lançamento em fases ou precisar trazer dados existentes de um banco de dados relacional mais antigo para o Couchbase. Isso pode envolver código personalizado e testes ou considerar um produto como o GlueSync, que torna o processo mais integrado.
Finalizar compra GlueSync para obter mais informações sobre seus produtos e capacidades.
Introdução
Você está modernizando seu processo de desenvolvimento? Está seguindo uma abordagem de desenvolvimento rápido para entregar capacidades de melhor qualidade e mais frequentes aos seus clientes? Parte desse processo frequentemente exige que trabalhemos com múltiplos bancos de dados durante um período de transição, quando precisamos de ambos os bancos de dados disponíveis. Precisamos de uma maneira de sincronizar os dados entre os bancos de dados; quanto mais transparente, melhor. Usando o Couchbase com GlueSync serve a esse propósito.
O GlueSync permite replicar dados de e para RDBMS (Microsoft SQL Server e Oracle) em tempo real com o Couchbase.
Neste post, usaremos o Docker enquanto percorremos as etapas para configurar e configurar o Couchbase, o Microsoft SQL Server e o GlueSync, demonstrando a sincronização de dados entre os dois.
Antes de Começarmos
Docker
Primeiro, este tutorial usa Docker e, se você não tiver o Docker, pode encontrar mais informações aqui https://www.docker.com/. Você precisará instalar o Docker para concluir as etapas abaixo.
GlueSync
Em seguida, o GlueSync requer uma licença. Para concluir este tutorial, você precisará de uma licença da equipe do GlueSync. Você pode acessar https://gluesync.com/plans/ e ver mais informações sobre seus planos e https://gluesync.com/contact-sales/ para entrar em contato com a equipe do GlueSync.
Etapas de alto nível
- Executar e Configurar o Couchbase e o MSSQL
- Criar o arquivo de configuração para o GlueSync
- Configurar e executar o GlueSync para Couchbase para MSSQL
- Veja a mágica
Execute o Couchbase e o MSSQL
Couchbase
Usaremos o Couchbase 6.6.3 para este tutorial. O seguinte comando Docker colocará o Couchbase em funcionamento, expondo as portas de que precisamos.
docker run -d --name cb-663 -p 8091-8096:8091-8096 -p 11210-11211:11210-11211 couchbase:enterprise-6.6.3
MSSQL
Para o comando de execução do Docker do MSSQL, note que estamos incluindo a senha do SA. Atualize-a e anote-a, nós a usaremos mais tarde.
docker run -d --name mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=RandomMSSQLPass2!' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04
Verificar Contêineres
Agora você deve ter dois containers em execução, Couchbase e MSSQL. Vamos iniciar o container do GlueSync depois de configurá-los.

Configure o Couchbase com GlueSync e MSSQL
Começaremos com o Couchbase e faremos uma instalação básica.
Configurar Novo Cluster
A execução dos comandos do Docker acima teria iniciado o Couchbase e exposto as portas para que você possa abrir a interface do Couchbase acessando https://localhost:8091/ui/index.html.
Nós escolheremos Configurar Novo Cluster e configure um cluster de um nó (não recomendado para produção, mas funciona ótimo para desenvolvimento e para fazer um tutorial).

Insira as informações do novo cluster e clique Avançar: Aceitar os Termos. Anote sua senha, vamos precisar dela mais tarde. Estamos usando RandomCBPass2! para esta instância.

Se você aceitar os termos e condições, marque essa opção e clique Concluir com Padrões.
NOTA O GlueSync funciona com o Couchbase usando algumas tecnologias do Couchbase, o Sync Gateway e o serviço Eventing. Estamos usando a opção Eventing neste tutorial. O recurso Eventing será instalado com o Concluir com Padrões seleção abaixo.
O Couchbase oferece uma única instalação onde você pode habilitar todos os serviços ou selecionar e escolher para personalizar de acordo com as necessidades do seu projeto. Este tutorial instalará todos os serviços por conveniência. Saiba mais sobre os serviços do Couchbase e o dimensionamento multidimensional.

Você deve ser redirecionado para o Painel. Usaremos dados do bucket de exemplo neste tutorial. Para instalar os dados, clique Buckets de Amostra.
Se, por algum motivo, você não ver o Bucket de Amostras link no painel, acesse Configurações a partir do menu esquerdo, olhe próximo ao canto superior direito da interface do usuário e você verá um item de menu para Buckets de Amostra, conforme mostrado abaixo.

Verifique beer-sample e clique Carregar Dados de Exemplo.

Espere alguns minutos para carregar, depois clique Baldes na navegação à esquerda.
Você deve ver o bucket beer-sample que acabamos de carregar.

Vamos ver os documentos. Clique no Documentos link à direita, ao lado de Estatística.
Vamos sincronizar documentos do tipo beer. Você pode colocar um filtro (type=”beer”) na caixa WHERE do N1QL e clicar Recuperar Documentos para conseguir esses documentos; será um pouco mais fácil ver e testar assim.

Criar Usuário do Couchbase
Criaremos um usuário para o aplicativo GlueSync utilizar. Isso é para fins de tutorial e você deve seguir suas práticas de segurança ao gerenciar seus usuários em conjunto com os requisitos do Couchbase e do GlueSync.
Vá para o Segurança link à esquerda e depois clique ADICIONAR USUÁRIO no canto superior direito.

Preencha as informações do usuário, conforme mostrado abaixo. Estamos usando o nome de usuário de usuário-cb e Senha RandomCBPass2!; guarde esta informação para depois. Certifique-se de verificar Administrador Completo em funções. Assim que estiver preenchido, clique no Adicionar Usuário botão.

Você deve ver o usuário que acabamos de criar.

Adicionar um bucket de metadados do GlueSync
O GlueSync usa o serviço de Eventing do Couchbase. O Eventing requer um bucket de Metadados, e criaremos um agora. Obter mais informações no GlueSync e no bucket de metadados.
Ir para Baldes no menu à esquerda e clique ADICIONAR BALDE no canto superior direito.

Insira o Nome dos Metadados e clique Adicionar Bucket. Usaremos os padrões para as outras opções.

Você deve ver dois baldes agora.

MSSQL
Usaremos o SQL Server Management Studio para configurar o MSSQL, que foi instalado na etapa acima. Se você precisar instalar o management studio, você pode encontre aqui.
Faça o login com as credenciais passadas para o comando Docker na etapa anterior, neste caso, Login: Olá e Senha: RandomMSSQLPass2!.

Criar Novo Banco de Dados
Criaremos um novo banco de dados para onde os dados do Couchbase serão carregados.

Nesse caso, como sou muito criativo, vou usar cb, e escolha Ok.

Criar Login
Em seguida, crie um Logon do MSSQL. Clique com o botão direito na pasta Logons e escolha Novo login....

O nome de login que estamos usando é usuário-mssql e a senha é RandomMSSQLUserPass2!.
Definir banco de dados padrão como cb, o banco de dados criado acima.
Você deve seguir seus padrões de segurança ao criar usuários. As instruções neste artigo são apenas para fins de tutorial e algumas opções que estou escolhendo são para simplificação.

Ir para Mapeamento de Usuários, à esquerda embaixo Selecione uma página, e selecione cb sob Usuários mapeados para este login e db_owner sob Associação a função de banco de dados.

Agora que temos essa configuração, verifique se você consegue fazer login com o usuário. Saia da conta sa e faça login novamente com o novo usuário.
Criar Tabela
Vamos criar uma tabela para os dados a serem sincronizados para e do Couchbase. Vá para o Bancos de dados, então cb, depois abra um Nova Consulta janela. Os campos desta tabela correspondem aos atributos no documento beer-samples do Couchbase. O SQL para criar a tabela está abaixo.

Execute o comando create table.
create table beer
(
name varchar(200) not null constraint beer_pk primary key nonclustered,
abv numeric(5, 2) not null,
brewery_id varchar(max) not null,
category varchar(max),
description varchar(max) not null,
ibu int not null,
srm int not null,
style varchar(max),
upc int not null,
updated varchar(max) not null
)
go
Configurar e executar o GlueSync para Couchbase para MSSQL
O GlueSync tem dois componentes, um para Couchbase para MSSQL e outro para MSSQL para Couchbase. Isso configurará a aplicação para sincronizar dados do Couchbase para o MSSQL. A configuração para a outra direção é muito semelhante.
Criar pasta de configuração
Crie uma pasta para o arquivo de configuração do GlueSync. Vamos compartilhar isso com o contêiner do Docker ao iniciá-lo.
mkdir c:\agluesync\config
Obter os endereços IP da rede Docker para o Couchbase e o MSSQL
Precisamos das informações da rede Docker para os containers do Couchbase e do MSSQL para configurar o GlueSync.
Obtenha os IDs dos contêineres.
C:UsersDavid Elliott> docker container ls -a
ID DO CONTÊINER IMAGEM COMANDO CRIADO STATUS PORTAS NOMEES
10b985792024 mcr.microsoft.com/mssql/server:2019-CU10-ubuntu-20.04 "/opt/mssql/bin/perm…" 34 minutos atrás Ativo há 34 minutos 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp mssql
d2df1bad1647 couchbase:enterprise-6.6.3 "/entrypoint.sh couc…" 40 minutos atrás Ativo há 40 minutos 0.0.0.0:8091-8096->8091-8096/tcp, :::8091-8096->8091-8096/tcp, 11207/tcp, 0.0.0.0:11210-11211->11210-11211/tcp, :::11210-11211->11210-11211/tcp, 18091-18096/tcp cb-663
Agora, obtenha os endereços IP para os contêineres usando esses IDs através do comando Docker Inspect no Couchbase.
C:UsersDavid Elliott> docker inspect d2df1bad1647 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
Execute o comando Docker Inspect no MSSQL.
C:\UsersDavid Elliott> docker inspect 10b985792024 | Select-String IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
Os endereços IP são:
- Couchbase – 172.17.0.2
- MSSQL – 172.17.0.3
NOTA: Se você parar e reiniciar os contêineres, o endereço IP poderá mudar e você precisará verificar se a configuração ainda está correta.
Criar o arquivo de configuração do GlueSync
Atualize as informações abaixo com suas informações específicas e salve-as no arquivo config.json na pasta que você criou acima, ou seja, c:\agluesync\config\config.json
{
"sourceHost": "172.17.0.2",
"sourcePort": "8091",
"sourceName": "beer-sample",
"sourceUsername": "cb-user",
"sourcePassword": "RandomCBPass2!",
"sourceEntities": {
"beer": {}
},
"sourceChangeRetention": 5,
"copySourceEntitiesAtStartup": true,
"targetHost": "172.17.0.3",
"targetPort": "1433",
"targetName": "cb",
"targetUsername": "mssql-user",
"targetPassword": "RandomMSSQLUserPass2!",
"maxItemsCountPerTransaction": 100,
"maxTransactionCountPerIteration": 100,
"couchbase": {
"timeoutSeconds": 60,
"indexReplicaCount": 0,
"eventing": {
"baseUrl": "https://172.17.0.2",
"metadataBucketName": "Metadata"
}
}
}
Obter credenciais do GlueSync para baixar a imagem do GlueSync do Docker
Consulte a seção Antes de Começarmos acima para obter informações sobre a licença do GlueSync para o registro Docker e o download do produto.
Assim que tiver essas informações, siga os passos abaixo para instalar o GlueSync.
Como você já pode ter credenciais armazenadas, talvez queira sair. Se você tiver problemas com credenciais, este pode ser o motivo.
Removendo credenciais de login para registry.gitlab.com
Faça login no registro – este pode ser um registro diferente do que você costuma usar, portanto, verifique esse valor novamente.
C:UsersDavid Elliott> docker login registry.gitlab.com
Username: xxxusernamexxx
Password:
Login Succeeded
Baixe a imagem.
C:UsersDavid Elliott> docker pull registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
latest: Pulling from molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql
Digest: sha256:55e476fa05853c9dc5dfc1263cd5d2a5d3e1ea98f69b4d15d8edb83b91dcb142
Status: Downloaded newer image for registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:latest
C:UsersDavid Elliott>
Você pode querer sair novamente (já tive problemas quando não saí e obtive erros na próxima vez que executei um comando).
Removendo credenciais de login para registry.gitlab.com
Iniciar o container/aplicativo GlueSync
Atualize o caminho para o arquivo de configuração no comando do Docker abaixo para corresponder ao caminho no seu computador.
docker run -d --name gluesync-cb-to-mssql -v c:/a/gluesync/config:/opt/app/config registry.gitlab.com/molo17srl/products/gluesync/nosql-to-sql-kotlin/couchbase-to-mssql:1.2.3
Você deve ter três contêineres rodando no Docker.

Se não estiver rodando, verifique os logs do contêiner em busca de mensagens. Sem querer, coloquei o arquivo de configuração na pasta errada e o GlueSync não iniciou; os logs me avisaram o que estava acontecendo.
Veja a Mágica
Vá para o MSSQL e faça uma consulta na tabela; você deverá ver os dados do bucket do Couchbase na tabela que criamos. Uma vez que o GlueSync foi iniciado, ele sincronizou os dados do Couchbase para o MSSQL.

Para testar, você pode modificar os dados e ver as alterações sincronizadas entre os bancos de dados. Vá para os documentos de beer-samples e faça uma alteração. Aqui, atualizei dois documentos. Você pode ver o log de saída do Docker abaixo da interface do Couchbase. O GlueSync detectou as duas alterações.

Mudando para o MSSQL, consigo ver as atualizações no MSSQL também.

Conclusão
Frequentemente precisamos trabalhar com vários bancos de dados, particularmente quando estamos fazendo uma modernização. Podemos ter um lançamento em fases ou precisar trazer dados existentes de um banco de dados relacional mais antigo para o Couchbase. Isso pode envolver código personalizado e testes ou considerar um produto como o GlueSync, que torna o processo mais integrado.
Finalizar compra GlueSync para obter mais informações sobre seus produtos e capacidades.

Deixe um comentário
Você precisa fazer o login para publicar um comentário.