Trabalhando com o QlikView


Exemplo: 'Sweden' as Country Quando essa expressão é usada como parte da lista de campos em um comando LOAD



Baixar 11.43 Mb.
Pdf preview
Página21/117
Encontro09.04.2020
Tamanho11.43 Mb.
1   ...   17   18   19   20   21   22   23   24   ...   117

Exemplo:

'Sweden' as Country

Quando essa expressão é usada como parte da lista de campos em um comando

LOAD ou SELECT, a

string de texto "



Sweden" será carregada como valor de campo no campo QlikView "Country".

Exemplo:

"land" as Country

Quando essa expressão é usada como parte da lista de campos em um comando

LOAD ou SELECT, o

conteúdo do campo de banco de dados ou coluna da tabela com o nome "



land" será carregado como valores

de campo do campo QlikView "



Country". Isto é, land será tratado como uma referência de campo.

Diferença entre números e literais de string

A diferença entre nomes e literais de string torna-se mais clara na comparação dos seguintes exemplos.

Exemplo:

Trabalhando com o QlikView - QlikView 12, November 2017

227


8   Introdução ao carregamento de dados

'12/31/96'

Quando essa string é usada como parte de uma expressão, na primeira etapa ela é interpretada como a

string de texto "12/31/96", que por sua vez pode ser interpretada como uma data se o formato da data for

‘MM/DD/YY’. Nesse caso, será armazenada como um valor duplo com uma representação numérica e uma

textual.


Exemplo:

12/31/96


Quando essa string for usada como uma parte de uma expressão, será interpretada numericamente como 12

dividido por 31 dividido por 96.

Usando caracteres de cota única em uma string

Se você precisar incluir caracteres de cota única em uma string, é possível usar uma cota única extra como

caractere de escape.

Exemplo:

A string


'10 O''clock News'

será interpretada como Notícia das 10 horas.

8.12 Caracteres curingas nos dados

Também é possível usar caracteres curingas nos dados. Existem dois caracteres curingas diferentes: o

símbolo de asterisco, interpretado como todos os valores desse campo, e um símbolo opcional, interpretado

como todos os valores remanescentes desse campo.

O símbolo de asterisco

O símbolo de asterisco é interpretado como todos os valores (listados) desse campo, isto é, os valores

listados em qualquer lugar nessa tabela. Se for utilizado em um dos campos do sistema (

USERID,

PASSWORD, NTNAME ou SERIAL) em uma tabela carregada na seção de acesso do script, ele será

interpretado como todos os valores possíveis desse campo (inclusive os não listados).

O símbolo de asterisco não é permitido em arquivos de informações. Além disso, não pode ser utilizado em

campos chave, isto é, campos utilizados para unir tabelas.

Não haverá símbolo de asterisco disponível a menos que ele seja especificado explicitamente.

OtherSymbol

Em muitos casos, é necessário representar todos os demais valores em uma tabela, isto é, os valores que

não foram encontrados explicitamente nos dados carregados. Isso é feito com uma variável especial

chamada

OtherSymbol. Para definir que OtherSymbol seja tratado como “todos os demais valores”, use a

seguinte sintaxe:

SET OTHERSYMBOL=;

antes de um comando



LOAD ou SELECT pode ser qualquer string.

Trabalhando com o QlikView - QlikView 12, November 2017

228


8   Introdução ao carregamento de dados

A ocorrência do símbolo definido em uma tabela interna fará com que o QlikView o defina como todos os

valores não carregados anteriormente no campo em que for encontrado. Os valores encontrados no campo

após a ocorrência de



OtherSymbol serão, dessa forma, descartados.

Para restaurar essa funcionalidade, use:

SET OTHERSYMBOL=;

Exemplo:

Table Customers

CustomerID

Name

1

ABC Inc.



2

XYZ Inc.


3

ACME INC


+

Undefined



Table Orders

CustomerID

Name

1

1234



3

1243


5

1248


7

1299


Insira o seguinte comando no script antes do ponto em que a primeira tabela acima é carregada:

SET OTHERSYMBOL=+;

Qualquer referência a um

CustomerID diferente de 1, 2 ou 3, por exemplo, ao clicar em OrderID 1299,

resultará em



Undefined em Name.

OtherSymbol não tem o propósito de ser utilizado para criar outer joins entre tabelas.

8.13


Tratamento do valor NULL

Quando nenhum dado puder ser produzido para um determinado campo como resultado de uma consulta à

base de dados e/ou de uma junção entre tabelas, geralmente o resultado será normalmente um valor NULL.

A lógica do QlikView trata as seguintes ocorrências como valores NULL:

Trabalhando com o QlikView - QlikView 12, November 2017

229


8   Introdução ao carregamento de dados

l

Valores NULL retornados de uma conexão



ODBC

l

Valores NULL criados como resultado de uma concatenação forçada de tabelas no script de



carregamento

l

Valores NULL criados como resultado de uma junção feita no script de carregamento



l

Valores NULL criados como resultado da geração de combinações de valores de campo a serem

mostrados em uma tabela

Geralmente, é impossível usar esses valores NULL para associações e seleções, exceto

quando o comando NullAsValue estiver sendo usado.

Por definição, os arquivos de texto não podem conter valores NULL.

Associando/selecionando valores NULL do ODBC

É possível associar e/ou selecionar valores NULL de uma fonte de dados ODBC. Para isso, foi definida uma

variável de script. A seguinte sintaxe pode ser usada:

SET NULLDISPLAY=;

O símbolo  substituirá todos os valores NULL da fonte de dados ODBC no nível mais baixo da entrada

de dados.  pode ser qualquer string.

Para restaurar essa funcionalidade à interpretação padrão, use a seguinte sintaxe:

SET NULLDISPLAY=;



O uso de NULLDISPLAY afeta somente os dados de uma fonte de dados ODBC.

Se desejar que a lógica do QlikView interprete valores NULL retornados de uma conexão ODBC como uma

string vazia, inclua o seguinte texto no script antes de qualquer declaração

SELECT:

SET NULLDISPLAY=";



Aqui, '' realmente significa duas aspas simples sem nada entre elas.

Criando valores NULL de arquivos de texto

É possível definir um símbolo que, quando ocorrer em um arquivo de texto ou em uma cláusula

inline, seja

interpretado como um valor NULL real. Use o seguinte comando:



SET NULLINTERPRET=;

O símbolo  deve ser interpretado como NULL.  pode ser qualquer string.

Para restaurar essa funcionalidade à interpretação padrão, use:

SET NULLINTERPRET=;

Trabalhando com o QlikView - QlikView 12, November 2017

230


8   Introdução ao carregamento de dados

O uso de NULLINTERPRET afeta somente os dados de arquivos de texto e cláusulas inline.

Propagação de valores NULL em expressões

Os valores NULL se propagarão por meio de uma expressão de acordo com algumas regras lógicas e

bastante razoáveis.

Funções

A regra geral é que as funções retornam NULL quando os parâmetros ficam fora do intervalo para o qual a



função está definida.

Exemplo:

asin(2)


retorna

NULL


log(-5)

retorna


NULL

round(A,0)

retorna

NULL


Como resultado, as funções em geral retornam NULL quando qualquer um dos parâmetros necessários à

avaliação é NULL.



Exemplo:

sin(NULL)

retorna

NULL


chr(NULL)

retorna


NULL

if(NULL, A, B)

retorna

B

if(True, NULL, A)



retorna

NULL


if(True, A, NULL)

retorna


A

A exceção à segunda regra são as funções lógicas para teste de tipo.



Exemplo:

isnull(NULL)

retorna

True (-1)



isnum(NULL)

retorna


False (0)

Operadores aritméticos e de caractere

Se NULL for encontrado em qualquer lado desses operadores, o resultado será NULL.

Exemplo:

Trabalhando com o QlikView - QlikView 12, November 2017

231


8   Introdução ao carregamento de dados

A

+



NULL

retorna


NULL

A

-



NULL

retorna


NULL

A

/



NULL

retorna


NULL

A

*



NULL

retorna


NULL

NULL


/

A

retorna



NULL

0

/



NULL

retorna


NULL

0

*



NULL

retorna


NULL

A

&



NULL

retorna


A

Operadores relacionais

Se NULL for encontrado em qualquer lado dos operadores relacionais, serão aplicadas regras especiais.

Exemplo:

NULL


rel.op

NULL


retorna

NULL


A

<>

NULL


retorna

True (-1)

A

<

NULL


retorna

False (0)

A

<=

NULL


retorna

False (0)

A

=

NULL



retorna

False (0)

A

>=

NULL



retorna

False (0)

A

>

NULL



retorna

False (0)

8.14 Arquivos QVD

Um arquivo QVD (Dados do QlikView) é um arquivo que contém uma tabela de dados exportada do

QlikView. QVD é um formato QlikView nativo e pode ser gravado e lido apenas pelo QlikView. O formato de

arquivo é otimizado para agilização na leitura de dados de um script do QlikView e, ao mesmo tempo é

compacto. A leitura de dados de um arquivo QVD é geralmente de 10 a 100 vezes mais rápida do que a

leitura de outras fontes de dados.

Os arquivos QVD podem ser lidos em dois modos, padrão (rápido) e otimizado (mais rápido). O modo

selecionado é determinado automaticamente pela linguagem de script do QlikView. O modo otimizado pode

ser usado apenas quando todos os campos são lidos sem transformações (fórmulas que atuam nos campos),

embora a renomeação de campos seja permitida. Uma cláusula WHERE que faz o QlikView descompactar

os registros também desativará a carga otimizada. Um .qvd otimizado é extraído e identificado de acordo

com o carregamento de transformar e extrair (ELT) padrão quando uma transformação de campo é realizada

Trabalhando com o QlikView - QlikView 12, November 2017

232


8   Introdução ao carregamento de dados

e isso resulta na diminuição do desempenho. O formato especificado não será mantido e o formato numérico

da fileira subjacente será usado e reconhecido. Transformações do campo em um .qvd são permitidas e, em

seguida, o antigo .qvd "Otimizado" torna-se um .qvd não otimizado padrão.

Um arquivo QVD contém exatamente uma tabela de dados e consiste em três partes:

1. Um cabeçalho XML composto de modo apropriado (com o conjunto de caracteres UTF-8), que

descreve os campos da tabela, o layout das informações subsequentes e alguns outros

metadados.

2. Tabelas de símbolos em um formato com bytes.

3. Dados da tabela em um formato com bits.

Finalidade dos Arquivos QVD

Os arquivos QVD podem ser usados para vários fins. Pelo menos quatro usos principais podem ser

facilmente identificados. Mais de um deles pode se aplicar em determinadas situações:

Aumentando a velocidade de carga

Se forem armazenados em buffer blocos de dados de entrada de arquivos QVD, que não mudam ou mudam

aos poucos, a execução do script ficará consideravelmente mais rápida para conjuntos grandes de dados.

Diminuindo a carga nos servidores de base de dados

O volume de dados lidos de fontes de dados externas pode também ser bastante reduzido. Isso reduz a

carga de trabalho nas bases de dados externas e o tráfego na rede. Além disso, quando vários scripts do

QlikView compartilham os mesmos dados, basta carregá-los uma vez da base de dados de origem em um

arquivo QVD. Os outros aplicativos podem usar os mesmos dados por meio desse arquivo QVD.

Consolidando Dados de Vários Aplicativos QlikView

Com o comando de script

B i nári o, é possível carregar dados de um único aplicativo QlikView em outro

aplicativo, mas com os arquivos QVD, um script do QlikView pode combinar os dados de qualquer

quantidade de aplicativos QlikView. Isso permite, por exemplo, que aplicativos consolidem dados

semelhantes de unidades de negócio diferentes, entre outras possibilidades.

Carga incremental

Em muitos casos comuns, a funcionalidade QVD pode ser usada para facilitar a carga incremental, isto é,

para carregar exclusivamente novos registros de uma base de dados crescente.

Criar Arquivos QVD

Um arquivo QVD pode ser criado por um destes três métodos:

1. Criação e nomeação explícitas, usando o comando store no script do QlikView. Basta indicar

no script que uma tabela lida anteriormente ou parte dela deve ser exportada para um arquivo

nomeado explicitamente em um local de sua escolha.

2. Criação e manutenção automáticas a partir do script. Ao preceder um comando load ou

sel ect com o prefixo buffer, o QlikView criará automaticamente um arquivo QVD que, em

Trabalhando com o QlikView - QlikView 12, November 2017

233


8   Introdução ao carregamento de dados

determinadas circunstâncias, poderá ser usado no lugar da fonte de dados original ao

recarregar os dados.

3. Criação e nomeação manuais e explícitas a partir do layout ou por meio do Intepretador de



Macro I nterno. Os dados podem ser exportados do layout do QlikView por meio de

comandos da GUI ou macros de Automação. Na GUI você encontrará o QVD como um dos

possíveis formatos de exportação no comando

Exportar. . . , encontrado no menu objeto de

grande parte dos objetos de pasta.

Não há diferença entre os arquivos QVD resultantes, por exemplo, em relação à velocidade de leitura, etc.

Leitura de dados de Arquivos QVD

Um arquivo QVD pode ser lido ou acessado pelo QlikView pelos seguintes métodos:

1. Carregando um arquivo QVD como uma fonte de dados explícita. Os arquivos QVD podem ser

referenciados por um comando

l oad no script do QlikView, como qualquer outro tipo de

arquivo de texto (csv, fix, dif, biff etc). O



A ssi stente de A rqui vo: Ti po manipula os

arquivos QVD pelos mesmos princípios.



Exemplos:

load * from xyz.qvd (qvd);

load Nome, RegNo from xyz.qvd (qvd);

load Nome as a, RegNo as b from xyz.qvd (qvd);

2. Carregando automaticamente os arquivos QVD armazenados em buffer. Ao usar o prefixo



buffer em comandos l oad ou sel ect nenhuma declaração explícita de leitura é necessária.

O QlikView determinará como usará os dados do arquivo QVD, ao contrário da obtenção de

dados por meio do comando original

l oad ou sel ect.

3. Acessando arquivos QVD por meio do script. Várias funções de script (todas começando com



qvd) podem ser usadas para recuperar diversas informações dos dados contidos no

cabeçalho XML de um arquivo QVD.

Importações de QVD com asteriscos não são suportadas.

8.15 Direct Discovery

O recurso do Direct Discovery no QlikView amplia os possíveis casos de uso para Business Discovery,

permitindo que os usuários de negócios realizem a análise associativa em fontes de dados maiores. Ele

oferece a experiência associativa completa do QlikView além dos dados provenientes diretamente de fontes

de dados externas maiores e permite que os usuários combinem essas grandes quantidades de dados com

os dados armazenados na memória. Com o Direct Discovery, os usuários podem aproveitar todos os dados

úteis para a análise, sem limitações de escalabilidade.

Trabalhando com o QlikView - QlikView 12, November 2017

234


8   Introdução ao carregamento de dados

O recurso do Direct Discovery combina o recurso associativo do conjunto de dados da memória do QlikView

com um modelo de consulta onde nem todos os dados de origem são diretamente carregados no modelo de

dados do QlikView. O resultado da consulta agregada é transmitido de volta para a interface do usuário, para

que o conjunto de dados do Direct Discovery faça parte da experiência associativa. É possível acessar os

dados da memória e os dados do Direct Discovery como um conjunto unificado.

É possível criar gráficos para analisar os dados dos conjuntos de dados combinados, fazer seleções nos

dados em memória ou nos dados do Direct Discovery e visualizar as associações em todos eles com as

mesmas cores características do QlikView: verde, branco e cinza.

Para usar o Direct Discovery no QlikView, é necessário usar funções especiais no script de carregamento. A

maneira como os gráficos são criados a partir dos campos do Direct Discovery difere um pouco da forma

como acontece quando trabalhamos com outras fontes de dados, e como nem todos os dados são mantidos

em memória, pode haver problemas de desempenho quando grandes quantidades de dados são

recuperados.

Diferenças entre os dados em memória e os dados do Direct

Discovery

Modelo na memória

No modelo na memória do QlikView, todos os valores exclusivos nos campos selecionados a partir de uma

tabela no script de carga são carregados nas estruturas de campo e os dados associativos são

simultaneamente carregados na tabela. Os dados de campo e os dados associativos são mantidos na

memória.

Trabalhando com o QlikView - QlikView 12, November 2017

235


8   Introdução ao carregamento de dados

Uma segunda tabela relacionada, carregada na memória compartilharia um campo comum, e essa tabela

poderia adicionar novos valores exclusivos ao campo comum ou poderia compartilhar os valores existentes.

Trabalhando com o QlikView - QlikView 12, November 2017

236


8   Introdução ao carregamento de dados

Direct Discovery

Quando os campos da tabela são carregados com um comando Direct Discovery

LOAD (Direct Query),

uma tabela semelhante é criada apenas com os campos



DIMENSION. Como ocorre com os campos da

memória, os valores exclusivos dos campos



DIMENSION são carregados na memória. No entanto, as

associações entre os campos são deixadas no banco de dados.

Trabalhando com o QlikView - QlikView 12, November 2017

237


8   Introdução ao carregamento de dados

MEASURE são valores dos campos também deixados no banco de dados.

Trabalhando com o QlikView - QlikView 12, November 2017

238


8   Introdução ao carregamento de dados

Depois que a estrutura do Direct Discovery é estabelecida, os campos do Direct Discovery podem ser usados

com determinados objetos de gráfico e podem ser usados para associações com os campos da memória.

Quando um campo do Direct Discovery é usado, o QlikView automaticamente cria a consulta do SQL

adequada para ser executada nos dados externos. Quando as seleções são feitas, os valores dos dados

associados dos campos do Direct Discovery são usados nas condições WHERE das consultas do banco de

dados.

Com cada seleção, os gráficos com os campos do Direct Discovery são recalculados, com os cálculos



ocorrendo na tabela da base de dados de origem, por meio da execução da consulta SQL criada pelo

QlikView. O recurso de condição de cálculo pode ser usado para especificar quando gráficos devem ser

recalculados. Até que a condição seja atendida, o QlikView não envia consultas para recalcular os gráficos.

Diferenças de desempenho entre os campos da memória e os campos do

Direct Discovery

O processamento na memória é sempre mais rápido do que o processamento nos bancos de dados de

origem. O desempenho do Direct Discovery reflete o desempenho do sistema que executa o banco de dados

que processa as consultas do Direct Discovery.

Trabalhando com o QlikView - QlikView 12, November 2017

239


8   Introdução ao carregamento de dados

É possível usar as práticas recomendadas de ajuste de consulta e banco de dados para o Direct Discovery.

Todo o ajuste de desempenho deve ser feito no banco de dados de origem. O Direct Discovery não oferece

suporte para o ajuste de desempenho da consulta a partir do documento do QlikView. No entanto, é possível

fazer chamadas paralelas e assíncronas para o banco de dados com o recurso de pool de conexão. A sintaxe

do script de carga para configurar o recurso de pool é a seguinte:

SET DirectConnectionMax=10;

O armazenamento em cache do QlikView também melhora a experiência geral do usuário. Consulte



Armazenamento em cache e o Direct Discovery (página 241) abaixo.

O desempenho do Direct Discovery com os campos



DIMENSION também pode ser melhorado

desvinculando alguns dos campos das associações. Isto é feito com a palavra-chave



DETACH em DIRECT

QUERY. Embora os campos desvinculados não sejam consultados para associações, eles ainda fazem

parte dos filtros, acelerando os tempos de seleção.

Embora QlikView os campos da memória e Direct Discovery

DIMENSION mantenham todos os seus dados

na memória, a maneira pela qual eles são carregados afeta a velocidade das cargas na memória. Os campos

da memória do QlikView mantêm apenas uma cópia do valor de campo quando existirem várias instâncias

do mesmo valor. No entanto, todos os dados do campo são carregados e, em seguida, os dados duplicados

são classificados.


Baixar 11.43 Mb.

Compartilhe com seus amigos:
1   ...   17   18   19   20   21   22   23   24   ...   117




©bemvin.org 2020
enviar mensagem

    Página principal
Prefeitura municipal
santa catarina
Universidade federal
prefeitura municipal
pregão presencial
universidade federal
outras providências
processo seletivo
catarina prefeitura
minas gerais
secretaria municipal
CÂmara municipal
ensino fundamental
ensino médio
concurso público
catarina município
reunião ordinária
Dispõe sobre
Serviço público
câmara municipal
público federal
Processo seletivo
processo licitatório
educaçÃo universidade
seletivo simplificado
Secretaria municipal
sessão ordinária
ensino superior
Relatório técnico
Universidade estadual
Conselho municipal
técnico científico
direitos humanos
científico período
espírito santo
Curriculum vitae
pregão eletrônico
Sequência didática
Quarta feira
distrito federal
prefeito municipal
conselho municipal
língua portuguesa
nossa senhora
segunda feira
Pregão presencial
educaçÃo secretaria
recursos humanos
Terça feira
educaçÃO ciência
agricultura familiar