Consulta SQL++ / N1QL

JSON para Insights: Analisando dados de saúde dos EUA.

"Nada é certo, exceto a morte e os impostos."

Esse não é um conjunto de dados criado com um canteiro de rosas ou grama verde bem cuidada. Um pouco mais sério. Vamos ver se podemos aprender algo rapidamente aqui. O conjunto de dados é o seguinte.

"name" : "NCHS - Principais causas de morte: Estados Unidos",
"attribution" : "National Center for Health Statistics" (Centro Nacional de Estatísticas de Saúde),

O público dataset está disponível em https://data.cdc.gov/api/views/bi63-dtpu/rows.json?accessType=DOWNLOAD

Etapa 1: Faça o download do arquivo em um arquivo local (por exemplo, health.json). Carregue esse arquivo em um dos nós do cluster do Couchbase.

Etapa 2Importar os dados para um compartimento chamado causa. Depois de criar o bucket, crie o índice primário. Você precisará dele para fazer consultas.

/opt/couchbase/bin/cbimport json -c couchbase://127.0.0.1 -u Administrator -p password -b cause -d file://health.json -g cause:0 -f sample

CREATE PRIMARY INDEX ON cause;

Etapa 3. Inspecione a estrutura dos dados.

Todos os dados são fornecidos em um ÚNICO documento JSON. Por esse motivo, o INFER não ajuda. Você terá que inspecionar e entender a estrutura manualmente. Esses dados são um conjunto de dados típico do governo, com muitos dados em matrizes simples, com o significado de cada entidade fornecido nos metadados.

Matriz simples:

 

 

 

 

 

 

 

 

Ele simplesmente contém uma matriz de dados sem o esquema. Para os conjuntos de dados públicos, o esquema está no campo meta.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Vamos transformar a estrutura em pares simples de valores-chave JSON para que possamos lidar com esses bits de forma mais eficaz. Você pode saber mais sobre como essa mágica aconteceu neste artigo.

 

 

 

 

 

 

 

 

Tarefa 1: Descubra a causa da maioria das mortes em um estado, por ano.

A expressão de tabela comum (CTE) na cláusula WITH (csdata) transforma os dados json complexos em JSON simples. Você pode fazer isso dinamicamente ou fazer isso uma vez e INSERTAR de volta em um bucket, como discuti no artigo sobre Nomes de bebês de Nova York. Neste artigo, eu uso CTEs.

 

 

 

 

 

 

 

 

Nesse caso, todas as mortes na Califórnia estão no topo, principalmente devido à sua população.

Tarefa 2. Descubra as principais causas de morte em cada estado no ano de 2016.

Consulta 2: Use o conjunto de resultados da consulta anterior e, em seguida, use a função de janela FIRST_VALUE() para determinar a causa principal. O particionamento por estado (na cláusula OVER BY) lhe dará as partições por estado e ORDER BY dx.totdeaths dentro da cláusula OVER BY lhe dará a causa principal em cada estado.

 

 

 

 

 

 

 

 

Tarefa 3.  Descubra como o principal motivo mudou ao longo do ano, de 1999 a 2016, por estado.

Consulta 3:  Basta gerar o relatório para todos os anos (199-2016) e, em seguida, determinar o motivo principal e, finalmente, obter o motivo mais alto agrupando por estado, ano e obtendo MAX(topcount) para a causa do motivo principal.

Aqui está o resultado parcial.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A visualização disso nos dá o seguinte histograma.

 

 

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

Autor

Postado por Keshav Murthy

Keshav Murthy é vice-presidente de P&D da Couchbase. Anteriormente, ele trabalhou na MapR, IBM, Informix e Sybase, com mais de 20 anos de experiência em design e desenvolvimento de bancos de dados. Ele liderou a equipe de P&D de SQL e NoSQL na IBM Informix. Recebeu dois prêmios President's Club na Couchbase e dois Outstanding Technical Achievement Awards na IBM. Keshav é bacharel em Ciência da Computação e Engenharia pela Universidade de Mysore, Índia, detém dez patentes nos EUA e tem três patentes pendentes nos EUA.

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.