O lançamento do Couchbase 6.5 é um dos maiores lançamentos em termos de conteúdo para o Couchbase. Para o serviço de consulta N1QL, nosso foco é trazer as funcionalidades do banco de dados corporativo para o banco de dados Couchbase. Expandir o N1QL com funções adicionais para atender aos requisitos de aplicativos corporativos com o objetivo de aumentar a produtividade dos desenvolvedores.
Aqui está o resumo dos recursos do N1QL.
Pesquisa N1QL()
O N1QL adicionou um recurso de pesquisa de texto completo com a função N1QL Search(). Ela aproveita o Couchbase Full Text Search para fornecer uma variedade de recursos de pesquisa de texto, como palavra-chave e pesquisa difusa. O Full Text Search faz parte da Couchbase Data Platform, que é executada como um serviço separado com seu recurso Multi Dimensional Scaling. Não há necessidade de um mecanismo de pesquisa separado, nem de importar os dados para um serviço separado. Os usuários do N1QL agora podem aproveitar o Full Text Search e os predicados padrão do N1QL em uma única instrução.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
Match Query: SELECT * FROM `beer-sample` b WHERE SEARCH(b,{"match":"hoppiest","field":"description"}) AND b.abv > 3 ORDER BY b.abv DESC LIMIT 10 OFFSET 20 Fuzzy Match: SELECT RAW META(t1).id FROM `travel-sample` AS t1 WHERE SEARCH(t1, { "match": "interest", "field": "reviews.content", "fuzziness":2}) ; Regexp: SELECT RAW META(t1).id FROM `travel-sample` AS t1 WHERE SEARCH(t1, {"regexp": "inter.+", "field": "reviews.content"}); Date Range: SELECT RAW META(t1).id FROM `travel-sample` AS t1 WHERE SEARCH(t1, { "start": "2001-10-09T10:20:30-08:00", "end": "2016-10-31", "inclusive_start": false, "inclusive_end": false, "field": "reviews.date" }); Geospatial: SELECT RAW META(t1).id FROM `travel-sample` AS t1 WHERE SEARCH(t1, { "location": { "lon": -2.235143, "lat": 53.482358 }, "distance": "100mi", "field": "geo" }); |
Janela N1QL e função analítica
As funções de janela estendem a agregação de consulta básica para permitir perguntas comerciais complexas com uma construção N1QL intuitiva, que, de outra forma, exigiria que o usuário escrevesse consultas e uniões complexas.

Expressão de tabela comum N1QL
O Common Table Expression introduz a construção WITH no N1QL para permitir que o usuário atribua um nome ao bloco de consulta, que pode ser referenciado posteriormente no restante da consulta.

Função definida pelo usuário N1QL
Permite que os desenvolvedores definam funções N1QL personalizadas que podem ser chamadas a partir de consultas N1QL. Permite o isolamento da lógica do aplicativo N1QL que pode ser reutilizada por qualquer aplicativo e microsserviços.
|
1 2 3 4 5 |
CREATE FUNCTION func1(type) { (select * from `travel-sample` where `travel-sample`.type = type) } EXECUTE FUNCTION func1("airline") |
Subquery JOIN
O banco de dados Couchbase aprimora seu suporte ao ANSI Join para incluir a união com subconsultas, permitindo o uso de conjuntos de resultados de consultas dinâmicas na união.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
SELECT cus.name Customer, cus.industry Industry, usr.name Owner, count(1) NumOfMeetings, sum(to_number(act.duration)) `Time Spent` FROM crm act INNER JOIN crm cus ON act.accid = cus.id AND cus.type = 'account' INNER JOIN crm usr ON cus.owner = usr.id AND usr.type = 'user' <strong>JOIN</strong> ( select thl.id from crm thl WHERE thl.type ='_territory_hier_level' AND thl.parent='ter3') ter <strong>ON</strong> cus.terid = ter.id WHERE act.type='activity' AND act.activityType='Appointment' AND DATE_PART_STR(act.startDate, 'year') =2018 GROUP BY cus.name, cus.industry, usr.name |
Os seguintes recursos também estarão disponíveis na versão 6.5 como Developer Preview.
Consultor de índices (DP)
O usuário agora pode usar o Index Advisor para criar os índices mais adequados para suas consultas. Os índices recomendados também incluem uma seção para índices de cobertura. As consultas que aproveitam os índices de cobertura podem se beneficiar da necessidade de executar a busca de serviços de dados adicionais e, assim, melhorar o desempenho geral da consulta. O Index Advisor funciona para consultas específicas ou carga de trabalho de solicitações concluídas.

Outros aprimoramentos do N1QL no Couchbase v6.5

Resumo
Estamos muito animados com o novo conteúdo N1QL para o Couchbase v6.5, pois esses recursos atenderão a muitas solicitações de nossos clientes. Como sempre, somos todos ouvidos quando se trata de feedback sobre nossos novos recursos e, especialmente, sobre o Index Advisor (DP).
Recursos
- Baixar: Faça o download do Couchbase Server 6.5
- Documentação: Couchbase Server 6.5 O que há de novo
- Todos os blogs 6.5
Gostaríamos muito de saber se você gostou dos recursos da versão 6.5 e como ela beneficiará sua empresa no futuro. Compartilhe seu feedback por meio dos comentários ou na seção fórum.