PHP

PHP SDK 2.2.0 Beta3: Exemplos com subdocumento e gerenciamento de índice

Para dar suporte à próxima versão do Couchbase Server 4.5 e a algumas inovações na comunidade PHP com o PHP 7, estamos aprimorando nosso PHP SDK. Hoje, gostaria de anunciar o terceiro Beta, que traz alguns novos recursos, além de correções e melhorias internas. Nesta postagem do blog, demonstraremos alguns deles.

API de subdocumento

Nós já escreveu sobre essa API anteriormentemas, desta vez, vamos mostrar um pouco de PHP. Presumimos que você tenha instalado o Couchbase 4.5 beta, no mínimo, e tenha configurado o bucket de amostra aprimorado amostra de viagem. Primeiro, vamos fazer um código de serviço, no qual instanciamos uma conexão com o bucket e também definimos uma função de utilidade para informar sobre um hotel aleatório.

Agora estamos prontos. A API Sub-Document permite economizar o tráfego de rede ao operar em documentos grandes usando o controle refinado, por exemplo, vamos extrair algumas das propriedades do hotel_10025:

Aqui e posteriormente, os métodos de acessório aceitam o caminho como primeiro argumento. Isso é semelhante ao caminho N1QL conforme descrito na documentação. Se você obtiver esse documento usando a API normal, verá que ele não é o menor e contém muitas informações sobre o local, e com lookupIn você está transferindo apenas os dados de seu interesse. Isso se torna mais importante quando você deseja alterar pequenas partes de um documento enorme. Por exemplo, vamos adicionar mais uma pessoa ao public_likesAjuste o nome do hotel e remova uma das classificações.

O código é bastante autoexplicativo. Se você quiser usar o bloqueio otimistabasta passar o valor CAS como um segundo argumento para mutateIn. A lista completa de operadores de mutação está na referência da API https://docs.couchbase.com/sdk-api/couchbase-php-client-2.2.0beta3/classes/CouchbaseMutateInBuilder.html. Vamos exibir o que temos após a alteração, mas desta vez usaremos o atalho para lookupIn com vários obter operadores:

Gerenciamento de índices

Anteriormente, para listar, criar ou remover índices, era necessário criar manualmente a instrução N1QL. No próximo PHP SDK 2.2, haverá uma nova API que simplificará essa tarefa, expondo funções úteis em Gerenciador de baldecomo nas visualizações do Couchbase. Vamos ver quais índices estão definidos no amostra de viagem por padrão:

O resultado deve ser algo parecido com isto:

O exemplo a seguir demonstra a criação de índices em name:

A remoção de índices não é um pouco mais difícil:

Antes de encerrar, gostaria de mostrar uma mudança pequena, mas em alguns casos importante, que fizemos na versão beta3. O valor do CAS sempre foi opaco no protocolo do Couchbase, bem como nos SDKs, mas no PHP ele estava oculto até mesmo para o desenvolvedor do aplicativo por trás da referência de recurso do PHP, o que significa que é difícil transmiti-lo facilmente (por exemplo, para renderizar em uma página HTML). Nesta versão, codificamos o CAS como um token de cadeia de caracteres, de modo que ele ainda é opaco, mas muito mais fácil de ser serializado.

Se você não sabe o que é CAS, pode aprender com um exemplo aqui: https://github.com/couchbase/php-couchbase/blob/master/examples/cas/cas_replace.php

E, por fim, para instalar essa versão, use o seguinte comando (certifique-se de ter a libcouchbase 2.6.0+ instalada):

Isso é tudo por enquanto. Planejamos mais uma versão Beta antes do GA com ainda mais recursos. Se você encontrar algum problema, poste diretamente no site das Comunidades do Couchbase em https://www.couchbase.com/community/. Além disso, os bugs podem ser relatados diretamente em nosso rastreador de problemas disponível aqui: https://www.couchbase.com/issues/browse/PCBC/

Fique atento.

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

Autor

Postado por Sergey Avseyev, engenheiro de SDK, Couchbase

Sergey Avseyev é engenheiro de SDK na Couchbase. Sergey Avseyev é responsável pelo desenvolvimento do conector Kafka e da biblioteca subjacente, que implementa o DCP, o protocolo de replicação do Couchbase. Também mantém o PHP SDK para o Couchbase.

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.