Couchbase Mobile

Suporte a novas plataformas e administração avançada com o Couchbase Mobile 3

É com satisfação que anunciamos o lançamento do Couchbase Mobile 3, que inclui muitos aprimoramentos para o Couchbase Lite e Gateway de sincronização produtos para soluções de computação móvel e de borda. Nesta versão principal, continuamos a fazer grandes avanços na área de computação de borda expandindo nosso suporte à plataforma de dispositivos de borda com a introdução do API em C para o Couchbase Lite. A nova API C facilitará o uso do Couchbase Lite em uma ampla gama de plataformas incorporadas.

Além disso, estamos introduzindo aprimoramentos arquitetônicos significativos que simplificarão a configuração e a administração da plataforma. Modularizamos a configuração do Sync Gateway, tornando-o "sensível ao cluster" e agora fornecemos um ponto de extremidade seguro da API RESTful para simplificar a administração do tempo de execução. Isso além de várias atualizações relacionadas à segurança. Essa é apenas a ponta do iceberg!

Introduzimos vários recursos importantes que são discutidos nesta postagem. Para saber mais sobre as correções de bugs e pequenos aprimoramentos, confira nossa Gateway de sincronização e Couchbase Lite especificação de plataformac notas de versão.

Comece a trabalhar!

Veja como você pode começar a avaliar os novos recursos do Couchbase Lite e do Sync Gateway 3.0:

Couchbase Lite

Suporte à plataforma de API C

Há alguns anos, lançamos uma API em C para o Couchbase Lite como um projeto de laboratório de engenharia. Ficamos impressionados com o nível de interesse e com a variedade de casos de uso. Temos o prazer de anunciar que agora ofereceremos suporte oficial à API C para o Couchbase Lite. No processo de produção da API C, adicionamos suporte a recursos de nível empresarial, como criptografia de banco de dados, garantimos a paridade de recursos com outras plataformas Couchbase Lite, limpamos a API, otimizamos a implementação subjacente e muito mais.

Os desenvolvedores se beneficiam de várias maneiras:

  • Os desenvolvedores podem criar aplicativos de IoT em C que podem ser executados em plataformas incorporadas com um espaço relativamente pequeno de memória e recursos de computação em comparação com um desktop padrão ou um dispositivo móvel inteligente.
  • C é a língua franca das linguagens de programação. Portanto, é fácil criar vinculações de linguagem sobre a API C usando Interface de função estrangeira (FFI)o que significa que os desenvolvedores agora podem criar aplicativos incorporados com o Couchbase Lite usando uma ampla variedade de linguagens de programação, como Dart, Python, JS, Rust, Go etc.
  • A API C é verdadeiramente multiplataforma, oferecendo suporte a uma ampla gama de sistemas operacionais para dispositivos móveis, desktops e hardware incorporado personalizado. Agora você pode criar aplicativos multiplataforma que são executados em uma variedade de hardwares.

Saiba mais em Documentação da API C do Couchbase Lite.

Criptografia de nível de campo no lado do cliente

A nova API C também oferece suporte à criptografia em nível de campo no lado do cliente. Usando o novo recurso de criptografia do lado do cliente, os clientes do Couchbase Lite C podem criptografar campos em documentos antes de replicar os dados pelo fio para o Couchbase Server. Somente os clientes com acesso às chaves de criptografia corretas podem descriptografar e ler os dados protegidos. A criptografia no lado do cliente é compatível com o Formato de criptografia em nível de campo do SDK do servidor Couchbase.

Esses novos benefícios de criptografia incluem:

  • O verdadeiro suporte à criptografia de ponta a ponta garante que os dados confidenciais nunca vazem para agentes que não tenham credenciais ou privilégios para acessar os dados  
  • Os aplicativos podem criptografar/descriptografar campos confidenciais em documentos usando qualquer estrutura de criptografia

Saiba mais em Documentação de criptografia de campo do Couchbase Lite.

Linguagem de consulta SQL++/ N1QL para dispositivos móveis

O Couchbase Lite oferece suporte a um Criador de consultas que permite que os aplicativos consultem o banco de dados Couchbase Lite usando uma API fluente com semântica SQL. Na versão 3.0, estamos expandindo a API de consulta para oferecer suporte a N1QL strings de consulta formatadas, especialmente para uso da API C. O N1QL for Mobile é uma implementação do Couchbase de uma especificação emergente de linguagem de consulta SQL-for-JSON chamada SQL++. Os desenvolvedores agora podem enviar consultas baseadas em strings em um formato familiar de sintaxe SQL. Isso é um acréscimo à API QueryBuilder que continua a ser suportada.

Proposta de valor:

  • Os desenvolvedores de aplicativos podem reutilizar as mesmas consultas SQL++/N1QL no Couchbase Server e no Couchbase Lite, reduzindo assim o esforço necessário para desenvolver, testar e otimizar as consultas. Leia sobre algumas das Diferenças entre o Couchbase Lite e o Server N1QL.
  • Essa API única baseada em string simplifica muito o desenvolvimento de plug-ins de ponte por meio da API QueryBuilder para tecnologias híbridas ou entre plataformas, como Ionic e React Native.

Leia mais sobre o Implementação da string de consulta do Couchbase Lite na documentação.

Suporte a Kotlin no Android

Reconhecemos que o Kotlin é crescendo em popularidade como a linguagem preferida para o desenvolvimento de aplicativos Android. Antes da versão 3.0, os desenvolvedores de aplicativos Android aproveitavam o fato de a Kotlin ser totalmente interoperável com Java e, portanto, poderiam usar o Android Java SDK para Couchbase Lite em aplicativos Kotlin. A nova versão do Couchbase Lite para Android oferece uma API idiomática totalmente suportada e pronta para uso para Kotlin, que permitirá a integração perfeita com aplicativos Android desenvolvidos em Kotlin sem a necessidade de extensões personalizadas.

Proposta de valor:

  • Os desenvolvedores têm pedido isso e nós ouvimos! Agora, os desenvolvedores de Kotlin podem adotar o Padrões de Kotlin em seu aplicativo móvel para Android.

Leia mais em Documentação do Couchbase Mobile Kotlin.

Eliminação automática de dados do dispositivo na revogação do acesso ao canal

Canais são o mecanismo fundamental para a aplicação do controle de acesso usando o Sync Gateway. Eles garantem que somente os usuários com acesso a um canal específico possam acessar documentos nesse canal. Com o novo recurso de revogação de acesso ao canal na versão 3.0, quando um usuário perde o acesso a um canal e, consequentemente, perde o acesso aos documentos no canal, os clientes do Couchbase Lite eliminam automaticamente todos os documentos locais no dispositivo que pertencem ao canal revogado. Esse seria o caso, desde que o usuário não tenha acesso ao documento por meio de outro canal. Isso é importante para a aplicação de políticas de governança e retenção de dados.

A purga automática facilita o gerenciamento de políticas:

  • Os aprimoramentos da tecnologia de sincronização simplificam a implementação de fluxos de trabalho complexos relacionados à aplicação de políticas de governança e retenção de dados.
  • Por exemplo, aqui está um exemplo de um fluxo de trabalho desse tipo:
    •  Um associado de vendas, "Bob", encarregado de "Região_Leste" tem acesso temporário a um "Região_Oeste". Os canais incluem documentos principais específicos da região.
    •  Quando um novo associado é contratado para a região oeste, Bob tem seu acesso revogado ao "region_west" canal. 
    • Todos os documentos sincronizados anteriormente devem ser removidos do dispositivo de Bob.

Leia mais sobre purga automática na seção Documentação de replicação do Couchbase Lite.

Gateway de sincronização

Configuração modular persistente e centralizada

Nesta versão, apresentamos os principais aprimoramentos arquitetônicos que simplificarão a configuração e o gerenciamento de um Sync Gateway pelos administradores. Estamos nos afastando do modelo monolítico Arquivo de configuração JSON para uma abordagem mais modular e com reconhecimento de cluster para configurar os nós do Sync Gateway em um cluster. Agora, os usuários só precisarão especificar a configuração de inicialização básica que inicializará um nó do Sync Gateway e o conectará a um cluster do Couchbase Server.

Posteriormente, os usuários podem configurar os bancos de dados do Sync Gateway em todo o cluster, as políticas de controle de acesso, as replicações entre os Sync Gateways etc., por meio do Ponto de extremidade REST do administrador. As atualizações de configuração podem ser feitas de forma modular por meio do mesmo ponto de extremidade REST. A natureza da configuração com reconhecimento de cluster implica que as alterações feitas em um nó do Sync Gateway são automaticamente propagadas para todos ou para um subconjunto definido pelo usuário de nós do Sync Gateway no cluster. 

Proposta de valor:

  • As alterações de configuração do banco de dados Ad Hoc feitas por meio da API REST são mantidas nos buckets de servidor correspondentes e não são perdidas durante as reinicializações do gateway de sincronização, seja por falhas ou reinicializações deliberadas.
  • As atualizações centralizadas da configuração do banco de dados para grandes clusters simplificam a gerenciabilidade e a administração. As alterações no banco de dados feitas em um nó são aplicadas automaticamente a todos os nós de um cluster ou podem ser aplicadas a um subconjunto de nós. 
  • O A capacidade de administrar com segurança o cluster do Sync Gateway usando o ponto de extremidade admin REST permite o controle programático e simplifica a administração remota em implementações na nuvem sem depender de opções como o tunelamento SSH.
  • A manutenção de um arquivo monolítico é difícil, especialmente se a configuração for complexa. Vários bancos de dados de gateway de sincronização podem ser definidos em um único arquivo de configuração. Isso pode ter consequências indesejáveis em aplicativos com vários locatários, em que as alterações no banco de dados feitas para um locatário exigiriam a reinicialização do nó, afetando todos os locatários. 

Para simplificar o processo de migração, as configurações JSON existentes serão automaticamente migrado na atualização. Embora os usuários sejam incentivados a usar a nova abordagem baseada em configuração persistente, eles podem continuar com o modo legado de configuração do Sync Gateway definindo o parâmetro sinalizador disable_persistent_config. Então, quando os usuários estiverem prontos, eles poderão migrar para a nova abordagem. 

Saiba mais em Documentação de configuração do Sync Gateway 3.0.

Administração remota segura

Um grande aprimoramento nesta versão, que acompanha a introdução do Administração centralizada de configuração persistente, é a administração segura de um cluster por meio da API REST de administração do Sync Gateway. Nova na versão 3.0, a API de administração impõe autenticação e controle de acesso baseado em função por padrão. O usuário administrador deve ser configurado no Couchbase Server como um usuário Usuário RBAC com o gateway de sincronização funções. Consequentemente, somente usuários autorizados têm permissão para acessar o endpoint de administração do Sync Gateway.

Os benefícios da administração remota segura incluem:

  • Os Gateways de sincronização podem ser administrados com segurança sem a necessidade de mecanismos de controle de acesso baseados em infraestrutura de rede (túnel SSH ou regras de firewall). A administração remota é particularmente importante em implementações de nuvem distribuída. Os aplicativos de servidor de back-end, como servidores de identidade, exigem acesso programático à API REST de administração para configurar os usuários do gateway de sincronização. 
  • Aplicativos diferentes têm finalidades diferentes e usuários diferentes. A partir do Sync Gateway 3.0, somente os usuários com uma função específica do Sync Gateway poderão administrar o Sync Gateway por meio do ponto de extremidade admin REST.
  • As versões futuras do Couchbase Server incluirão suporte para funções mais refinadas do Sync Gateway, que permitirão um controle mais granular sobre a funcionalidade de administração. Portanto, fique atento!

Leia mais em Documentação de acesso à API REST do Sync Gateway 3.0.

Criptografia TLS ativada por padrão

A partir da versão 3.0, o TLS é ativado por padrão no Sync Gateway para comunicação com o Couchbase Server, garantindo que toda a comunicação no lado do servidor seja criptografada por padrão. Isso implica que o acesso ao Couchbase Server usando um esquema não TLS, como "couchbase://" ou "http://", não será permitido por padrão. Embora seja altamente recomendável ter sempre o TLS ativado, reconhecemos que os usuários podem querer desativá-lo para ambientes de desenvolvimento e teste. Portanto, os usuários têm a opção de desativar esse recurso.

Proposta de valor:

  • Com esse novo comportamento padrão, estamos aplicando e incentivando as práticas recomendadas de segurança.

Leia mais sobre Aplicação do TLS na documentação de segurança do Sync Gateway.

Atributos estendidos definidos pelo usuário (XAttrs) para metadados de controle de acesso

Atualmente, as informações de concessão de acesso, como canais e funções são normalmente incorporados ao corpo do documento como uma propriedade dedicada. Com esta versão, os usuários têm a opção de adicionais para especificar concessões de acesso em Atributos estendidos (XATTRs) fora do corpo do documento. O XAttr do documento pode ser acessado a partir do função de sincronização e pode ser usado para tomar decisões dinâmicas de roteamento de dados e concessão de acesso, como de costume.

A separação dos metadados de concessão de acesso do corpo do documento oferece vários benefícios:

  • A incorporação de metadados de concessão de acesso no corpo do documento implica que as alterações nas concessões de acesso associadas a um documento resultarão em uma atualização correspondente no corpo do documento. A atualização do documento, por sua vez, acionará uma replicação do documento para os clientes. As alterações de concessão de acesso são irrelevantes para os clientes, resultando em "ruído". Mais importante ainda, se a lista de canais for grande, as replicações de documentos poderão resultar em um uso significativo da largura de banda.
  • A incorporação de concessões de acesso a canais no corpo do documento tornará essas informações acessíveis a todos os usuários que estiverem sincronizando esse documento. Isso pode gerar alguns problemas de privacidade. Por exemplo, se os nomes de canal corresponderem a IDs de usuário, um usuário que replica um documento terá conhecimento de outros usuários que têm acesso ao documento.
  • O modelo de dados dos documentos existentes não precisa ser modificado para adaptar os dados de concessão de acesso com uma propriedade dedicada. Os processos e aplicativos existentes não precisam ser modificados para usar o Sync Gateway para sincronização de dados.

Há casos em que derivar o canal ou as informações de concessão de acesso com base no conteúdo do corpo do documento é a melhor opção, e essa opção continuará sendo compatível.

Leia mais sobre Controle de acesso XAttr na documentação.

Eliminação automática de dados do cluster na revogação do acesso ao canal 

Os clusters do Sync Gateway podem replicar dados entre si usando replicação inter-Sync Gateway tecnologia. Durante a replicação, se um usuário perder o acesso a um canal e, consequentemente, perder o acesso aos documentos no canal de replicação, o Sync Gateway no canal ativo será desativado. agrupamento no qual a replicação é iniciada pode ser configurado para limpar automaticamente os documentos no canal revogado. 

Esse é um recurso opcional.

Proposta de valor:

  • Os aprimoramentos da tecnologia de sincronização simplificarão a implementação de fluxos de trabalho complexos relacionados à aplicação de políticas de governança e retenção de dados.

Aqui está um exemplo de um fluxo de trabalho:

    •  Um navio de cruzeiro está sincronizando dados específicos da viagem a partir dos sistemas de back-end na nuvem. Os canais incluem documentos específicos da viagem.
    • Ao término da viagem, o acesso do navio ao canal de viagem é revogado
    • Todos os documentos relacionados à viagem no navio devem ser eliminados. 

Leia mais em documentação de purga de replicação.

Recursos

Mas isso não é tudo! Há uma série de outros aprimoramentos que são discutidos nas notas de versão específicas do produto. Aqui estão os links diretos para alguns recursos úteis. Você pode saber mais em nosso Couchbase Lite e Gateway de sincronização O que há de novo páginas vinculadas abaixo.

Se você tiver dúvidas ou comentários, o Fóruns de desenvolvedores do Couchbase é uma ótima maneira de interagir conosco. Deixe um comentário abaixo ou sinta-se à vontade para entrar em contato comigo via Twitter ou enviar-me um e-mail

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Priya Rajagopal, Diretora Sênior, Gerenciamento de Produtos

Priya Rajagopal é diretora sênior de gerenciamento de produtos da Couchbase, responsável pelas plataformas de desenvolvedor para a nuvem e a borda. Ela desenvolve software profissionalmente há mais de 20 anos em vários cargos técnicos e de liderança de produtos, com mais de 10 anos de foco em tecnologias móveis. Como delegada de padrões de IPTV da TISPAN, ela foi uma das principais colaboradoras das especificações de padrões de IPTV. Ela tem 22 patentes nas áreas de rede e segurança de plataforma.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.