• Nenhum resultado encontrado

A LINGUAGEM DE CONSULTA GEOMDQL

6.4.1 DWG DATASUS

Este DWG est´a inserido no contexto da sa´ude p´ublica. Trata-se de um Data Warehouse Ge- ogr´afico com dados sobre o Sistema ´Unico de Sa´ude (SUS - www.datasus.gov.br) brasileiro [83]. Os dados geogr´aficos foram adquiridos do Instituto Brasileiro de Geografia e Estat´ıstica (IBGE - www.ibge.gov.br). Estes dados contemplam a geometria do pa´ıs, das regi˜oes brasileiras, dos estados, das meso-regi˜oes, das micro-regi˜oes, dos munic´ıpios e das ´areas clim´aticas brasileiras.

Os dados anal´ıticos utilizados para a constru¸c˜ao do DWG, extra´ıdos do site do Minist´erio da Sa´ude, produzem informa¸c˜oes sobre a sa´ude da mulher, o controle de doen¸cas e a sa´ude bucal, as taxas de mortalidade infantil, os ´obitos neo natais, a taxa de mortalidade materna, o percentual de nascidos abaixo do peso, entre outros. Estes dados foram extra´ıdos do site do DataSus

Conseq¨uentemente, este GDW pode ajudar autoridades nos processos de planejamento, administra¸c˜ao e avalia¸c˜ao de pol´ıticas p´ublicas de sa´ude, bem como pode ser um meio eficiente de elaborar metas para melhorar os servi¸cos de sa´ude p´ublica dispon´ıveis para a popula¸c˜ao brasileira, uma vez que permite a an´alise tanto anal´ıtica como geogr´afica com a visualiza¸c˜ao dos dados por meio de tabelas, gr´aficos e mapas. O esquema deste DWG ´e apresentado na Figura 6.4. Como pode ser observado, utilizamos a ferramenta GeoDWCASE [119] para realizar a sua modelagem . Obviamente, este esquema segue as defini¸c˜oes do modelo de DWG, discutido no Cap´ıtulo 4.

Como sabemos, a partir de um esquema de DW ou DWG, podemos criar in´umeros cubos de dados. Para este estudo de caso, com base no esquema apresentado na Figura 6.4, definimos um cubo de dados chamado BrSaude, que possui os fatos Populacao, Obitos Menores de Um Ano, Nascidos Vivos, Nascidos Vivos Abaixo do Peso, Obitos Neonatais, Obitos Maternos e Atendidos PSF. Estes fatos representam as medi¸c˜oes dos valores armazenados na tabela de fatos

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 106

Figura 6.4 DWG para Sa´ude P´ublica

do DWG, levando em considera¸c˜ao os n´ıveis das dimens˜oes do cubo. Vale salientar que todos os fatos deste cubo s˜ao convencionais e s˜ao obtidos atrav´es da fun¸c˜ao de agrega¸c˜ao soma. O cubo BRSaude possui uma dimens˜ao convencional Tempo, a qual ´e formada por uma hierarquia que cont´em um n´ıvel chamado Ano. No cubo criado, a dimens˜ao Clima tamb´em est´a presente e ´e composta por uma hierarquia que cont´em o n´ıvel Zona. Esta dimens˜ao representa as diferentes zonas clim´aticas existentes no DWG. A dimens˜ao geogr´afica Localizacao ´e composta por uma hierarquia formada pelos n´ıveis Pais, Estado, Meso Regiao, Micro Regiao e Municipio.

CONSULTA 1 (Mostrar a quantidade de ´Obitos Maternos, de ´Obitos Menores de Um Ano e de ´Obitos Neonatais dos estados brasileiros com Popula¸c˜ao superior a 3 milh˜oes de habitantes).

SELECT [Measures].[Obitos Maternos], [Measures].[Obitos Menores de Um Ano], [Measures].[Obitos Neonatais] ON COLUMNS,

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 107

Figura 6.5 Consulta GeoMDQL de Mapeamento Utilizando o Operador Filter

FROM [BRSaude] WHERE [Tempo].[Todos].[2002] ON MAP

Um exemplo de requisi¸c˜ao de mapeamento que pode ser especificada sobre o cubo BRSaude ´e a apresentada na Consulta 1. Nesta consulta, utilizamos o operador Filter que ´e aplicado sobre um conjunto de fatos, filtrando os mesmos de acordo com uma express˜ao l´ogica definida pelo usu´ario. No caso deste exemplo, ser˜ao recuperados somente os fatos associados aos membros do n´ıvel Estado no qual a quantidade de habitantes for superior a 3 milh˜oes. Como pode ser observado na Figura 6.5, s˜ao adicionados gr´aficos sobre o mapa, para representar os fatos requisitados na consulta (i.e. ´obitos maternos, ´obitos menores de um ano e ´obitos neonatais). Como pode ser observado no mapa da Figura 6.5, ap´os obter o resultado retornado, o usu´ario pode interagir com o mapa, mudando cores, adicionando legendas e at´e mesmo utilizando estes resultados para realizar novas consultas. No caso desta consulta, foram adicionados ao mapa, gr´aficos do tipo pizza, para representar de forma gr´afica os valores dos trˆes fatos envolvidos (i.e. Obitos Maternos, Obitos Neonatais e Obitos Menores de Um Ano).

CONSULTA 2 (Para cada estado das Regi˜oes Sul, Centro Oeste e Nordeste, mostrar a popula¸c˜ao no ano de 2002, juntamente com a posi¸c˜ao de cada estado no ranking geral da popula¸c˜ao (que considera os 27 estados brasileiros), e tamb´em a posi¸c˜ao de cada estado no ranking que mede a ´area geogr´afica de cada estado.

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 108

Mostrar tamb´em o ranking de todos os estados, considerando sua distˆancia at´e o Distrito Federal. Os dados com correspondˆencia geogr´afica devem ser exibidos no mapa ).

WITH SET [Estados Ordenados Por Area] AS ‘RankArea([Localizacao].[Estado].Members)’ MEMBER [Measures].[Ranking Area]

AS ‘Rank([Localizacao].CurrentMember, [Estados Ordenados Por Area])’ SET [Estados Ordenados Por Populacao]

AS ‘Order([Localizacao].[Estado].Members, [Measures].[Populacao], BDESC)’ MEMBER [Measures].[Ranking Populacao]

AS ‘Rank([Localizacao].CurrentMember, [Estados Ordenados Por Populacao])’ SET [Distancia do DF]

AS ‘LowDistance([Localizacao].[Todos].[Brasil].[Centro Oeste].[DISTRITO FEDERAL], [Localizacao].[Estado].Members)’

MEMBER [Measures].[Ranking Distancia]

AS ‘Rank([Localizacao].CurrentMember, [Distancia do DF])’ SELECT [Measures].[Populacao], [Measures].[Ranking Area], [Measures].[Ranking Populacao],

[Measures].[Ranking Distancia] ON COLUMNS, [Localizacao].[Todos].[Brasil].[Nordeste].Children, [Localizacao].[Todos].[Brasil].[Centro Oeste].Children, [Localizacao].[Todos].[Brasil].[Sul].Children ON ROWS FROM [BRSaude] where [Tempo].[Todos].[2002] ON MAP

Para resolver a Consulta 2, aplicamos o operador GeoMDQL RankArea para ordenar todos os membros do n´ıvel Estado, criando um conjunto com todos os Estados ordenados da maior ´

area para a menor (i.e. [Estados Ordenados Por Area] ), e com o uso do operador SET. Em seguida, ´e utilizado o operador Rank para gerar para cada estado, a posi¸c˜ao no ranking geral e criar um novo membro com o operador MEMBER. De forma semelhante, usamos o operador Order para criar um conjunto de todos os membros do n´ıvel estado ordenados pela quantidade da popula¸c˜ao. A instru¸c˜ao BDESC, utilizada em conjunto com o operador Order indica que a ordena¸c˜ao deve ocorrer em ordem crescente e que a hierarquia original do cubo n˜ao ´e consider- ada. Assim, a partir do uso do operador MEMBER ´e criado um novo membro que armazena a posi¸c˜ao de cada estado no ranking global de popula¸c˜ao. O operador LowDistance foi usado para criar um ranking considerando a distˆancia de cada estado at´e o Distrito Federal, criando um novo membro chamado [Measures].[Ranking Distancia]. Os fatos que representam a pop- ula¸c˜ao de cada estado (i.e. [Measures].[Populacao] ), a posi¸c˜ao de cada estado no ranking da

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 109

Figura 6.6 Ranking de ´Area, de Popula¸c˜ao e de Distˆancia

´

area (i.e. [Measures].[Ranking Area] ), a posi¸c˜ao de cada estado no ranking da popula¸c˜ao (i.e. [Measures].[Ranking Populacao] ) e a posi¸c˜ao de cada estado no ranking que mede a distˆancia at´e o Distrito Federal (i.e. [Measures].[Ranking Distancia] ) s˜ao adicionados ao eixo coluna (ON COLUMNS). Por sua vez, cada estado das regi˜oes solicitadas (i.e. Sul, Centro Oeste e Nordeste) s˜ao adicionados ao eixo linha (ON ROWS). Para listar os estados de cada regi˜ao, foi utilizado o operador Children, que recupera todos os filhos de um determinado membro. Por fim, para restringir o resultado para os dados do ano 2002 ´e utilizada a instru¸c˜ao [Tempo].[Todos].[2002] na cl´ausula WHERE. A instru¸c˜ao ON MAP indica ao processador que os dados geogr´aficos precisam ser retornados, os quais ser˜ao exibidos em um mapa.

Como pode ser visualizado no resultado da consulta exibido na Figura 6.6, al´em da pop- ula¸c˜ao, do ranking de ´area e do ranking de popula¸c˜ao, ´e poss´ıvel perceber o ranking criado a partir das medi¸c˜oes das distˆancias de cada estado at´e o Distrito Federal.

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 110

Figura 6.7 Drillout no Estado de Pernambuco

CONSULTA 3 (Mostrar a quantidade de nascidos vivos e a quantidade de ´obitos maternos do ano de 2002, para todos os estados vizinhos de Pernambuco ).

SELECT [Measures].[Nascidos Vivos], [Measures].[Obitos Maternos] ON COLUMNS, Drillout([Localizacao].[Todos].[Brasil].[Nordeste].[PERNAMBUCO]) ON ROWS FROM [BRSaude] WHERE [Tempo].[Ano].[2002] ON MAP

A Consulta 3 ´e outro exemplo de consulta de integra¸c˜ao. Nesta consulta, ´e usado o operador Drillout da linguagem GeoMDQL para recuperar todos os estados vizinhos de Pernambuco. Para cada estado, ´e recuperado tamb´em os fatos correspondentes ao n´umero de nascidos vivos (i.e. [Measures].[Nascidos Vivos] ) e ´obitos maternos (i.e. [Measures].[Obitos Maternos] ). Na Figura 6.7, ´e exibido o resultado desta consulta. Como pode ser observado no mapa desta figura, com as funcionalidades disponibilizadas pela interface gr´afica, foram adicionados gr´aficos do tipo coluna, sobre cada estado exibido no mapa, representando de forma gr´afica os valores dos nascidos vivos e dos ´obitos maternos.

Na Figura 6.8, ´e apresentado o resultado da intera¸c˜ao do usu´ario com a interface gr´afica, utilizando a resposta da Consulta 3 para especificar outra consulta. Neste exemplo, o usu´ario aplica o operador Drilldown uma vez sobre o membro BAHIA, navegando at´e o n´ıvel Meso

6.4 APLICAC¸ ˜AO PR ´ATICA DA ABORDAGEM 111

Regi˜ao e duas vezes sobre os membros ALAGOAS e PARA´IBA, navegando at´e o n´ıvel Micro Regiao da dimens˜ao Localizacao.

Figura 6.8 DrillDown no Resultado Exibido na (Figura 6.7)