Recentemente, foram disponibilizadas algumas novas versões do cliente Python do Couchbase. Ele apresenta uma nova API que é mais fácil de usar. Como o SDK agora é baseado em libcouchbaseAlém disso, ele é muito mais rápido. Agora também é compatível com o Python 3!

Breve histórico

Foi necessária uma reescrita, pois o Python SDK tem um longo histórico. Ele se originou em um script Python Dustin Sallings que foi usado pela equipe de engenharia de qualidade do Couchbase para escrever seus testes. Havia muitos recursos excelentes, mas não era uma API coesa para um novo desenvolvedor.

Posteriormente, ela foi levada adiante por Benjamin Young para o próximo nível para ser o cliente Python oficial do Couchbase. Ele ainda tinha o ônus de ser compatível com versões anteriores e, portanto, não podia ser tão fácil de usar quanto muitos previam.

Com a decisão de reescrever e basear-se na libcouchbase na versão 0.9 usando o CythonTambém decidimos quebrar a API. Dessa forma, você obterá o melhor desempenho, mas também uma boa API. Posteriormente, mudamos para a API Python C diretamente na versão 0.10.

Qual é a aparência?

A nova API é fortemente inspirada na do cliente Ruby.

    importação couchbase

# Conecte-se ao localhost na porta 8091 por padrão
cliente = Couchbase.conectar(nome de usuário="amostra de cerveja, senha=,
balde="amostra de cerveja)

cerveja = cliente.obter('aass_brewery-juleol')
impressão("{0}, ABV: {1}".formato(cerveja["nome, cerveja['abv'])

cerveja['comentário'] = "Cerveja aleatória da Noruega"
cliente.substituir('aass_brewery-juleol', cerveja)

Obter o cliente

Atualmente, você precisa criar o módulo por conta própria, embora isso seja tão fácil quanto executar um único comando. Primeiro, instale a libcouchbase; as instruções podem ser encontradas em Página do Couchbase. Em seguida, obtenha o pacote python do couchbase:

shell> pip install couchbase

E, finalmente, construí-lo:

shell> python setup.py build

Se você tiver a libcouchbase instalada em um caminho personalizado, precisará definir as variáveis de ambiente LD_LIBRARY_PATH, CFLAGS e LDFLAGS de acordo.

Orientações futuras

O cliente ainda não tem todos os recursos completos, por exemplo, o suporte a exibições ainda está evoluindo e a API mudará um pouco. As próximas etapas serão o preenchimento dessas lacunas. Se quiser ajudar ou tiver necessidade de um recurso não suportado, entre em contato conosco.

As contribuições podem variar desde corrigir erros de digitação ou tornar o processo de instalação na documentação mais claro até a implementação de recursos ausentes.

As instruções sobre como contribuir podem ser encontradas no repositório couchbase-python-client no Github.

Entre em contato conosco

Se tiver alguma dúvida, quiser apenas dizer olá ou quiser começar a contribuir, há várias maneiras de entrar em contato conosco. Entre na seção Discussão com desenvolvedores do Couchbase ou nos encontre no canal IRC #libcouchbase no Freenode.

Autor

Postado por Volker Mische, engenheiro de software, Couchbase

Volker Mische é engenheiro de software da Couchbase. Ele faz parte da equipe de engenharia de visualização, trabalhando principalmente em Erlang, C/C++ para aprimorar a indexação geoespacial e de mapreduce.

Um comentário

  1. Existe um cliente twistedmatrix?

Deixar uma resposta