Paralelo - MicroStrategy

Propaganda
Tempo de Resposta em Sub-Segundos com o
novo MicroStrategy 10 In-Memory Analytics
Anderson Santos, Sales Engineer Brazil
Alta Performance não é mais “Desejável” em uma Aplicação Analítica
Expectativa dos Usuarios para a performance das
aplicações analíticas ser como em uma pesquisa
Google, especialmente em dispositivos móveis
Explosão da variedade e volumes dos dados
requer consolidação e agregação In-Memory
Direcionadores de
Alta Performance
Aplicações analíticas modernas contém 100’s de
vizualizações distribuida para 1000’s de usuários
diariamente
Queda drástica no custo de memória combinado com
o processamento em paralelo entrega desempenho
efetivo a baixo custo.
2
A Nova Arquitetura MicroStrategy’s New In-Memory Combina 3 Inovações
Armazenamento de dados In-Memory
Processamento de dados Massivo em
Paralelo utilizando Hardware de
Mercado
Analytics olhando para frente – Dados
Integrados e Camadas de Visualização
3
Exploração Interativa de
Terabytes de Conjuntos de
Dados por 100,000s de Usuários
Cubos In-Memory Particionados em Paralelo
Paralelo
Relacional
In-memory
Engine
Escalabilidade Linear para
1000s de CPUS
Schema flexível e dados
particionados
3x a 10x mais rápido
7x a 20x mais usuários
Exploração interativa
herméticamente acoplada
•
•
4
Conexões de dados
em paralelo para
alta taxa de
obtenção dos dados.
Renderização das
Visualizações de
Cubos in-memory.
•
•
Schema de cubos
muito mais flexisivel.
Não é necessário
pre-joins.
Melhor gestão de
memória
•
Camada in-memory
extremamente
aprimorada.
•
Suporte a mais de
2B de linhas por
cubo.
•
Engine In-Memory
hermeticamente
acoplada a engine
de visualização.
•
Rápido tempo de
resposta para as
aplicações.
Cubos Particionados em Paralelo Co-existem com Bases de Dados
Existentes no MicroStrategy
• Não substitui bases de dados
Cubos Particionados
em Paralelo
• Funciona como Camada de Dados
para aplicativos que exigem altíssimo
desempenho.
• Drill through para bancos de dados
(detalhes)
• Carga a partir de bancos de dados e
Hadoop
ORIGEM DOS DADOS
Processamento de Dados Massivo em Paralelo através de Hardware de
Mercado
Execução em Paralelo com
MSTR 10
BI Tradicional
Query Engines
Gargalo
Memória
Compartilhada
Execução em
Paraleo
Memória
Memória
Memória
Dados Distribuidos
•
Execução e Carga da Query em Paralelo
•
Hardware de Mercado baixo valor de investimento
Analytics olhando para frente – Dados Integrados e Camadas de
Visualização
BI Tradicional
Camada de
Visualização
Baixa
integração
Camada de
Dados
Analytics olhando
para frente
Camada Analítica
otimiza consulta aos
dados
Camada de Dados
analisa os
Dashboards e otimiza
as estruturas
•
A camada de dados não conhece a camada de
desenvolvimento de análises
•
Conexões otimizadas pelo menor denominador
comum.
Camada de Visualização
Camada de Dados
•
Camadas integradas favorecem a otimização
•
Camada analítica otimiza as consultas enviadas
aos dados com base nas estruturas.
Camada de dados “olhando adiante” e
planejando a consulta baseada no conhecimento
do Dashboard.
•
Carga de Dados Mais Rápidas com Particionamento em paralelo dos
Cubos In-Memory
Cubos Inteligentes levam muito tempo porque a thread única do ODBC
é muito lenta para buscar os dados.
Gargalo
API
VISUALIZAÇÃO
Application Engines
Ajuste o número de conexões através do VLDB.
O Default começa com 2.
Analytics Engines Analytics Engines
DADOS
DADOS
DATA
…
8
Os dados agora podem ser carregados em
paralelo, proporcionando rápida publicação dos
Cub.
DADOS
…
DADOS
Ampla Capacidade Analítica com Cubos Particionados In-Memory
Gargalo
Subsets de relatórios eram limitados a análises em um único passo
Particionamento em paralelo apoiará a geração de consultas em múltiplos passos, suportando todas as
funcionalidades analíticas das mesma forma que a Engine SQL.
Analytics em multiplos passos inclui suporte a Métricas, Qualificações, Relacionamentos, Filtros, etc.
9
Grandes Volumes de Dados com Particionamento em Paralelo dos
Cubos In-Memory
Gargalo
Limitação de Dados de 2B linhas por Cubo
Supere a limitação de 2B de linhas permitindo o particionamento de dados através de vários
cores de CPU, dividindo internamente os dados em multiplos pedaços de 2B de linhas.
Utiliza os Cores de CPU existentes de forma mais eficiente.
MSTR 10
9.4.1
Cubos particionados em paralelo
2B
Cubo OLAP
2B
2B
….
2B
…………….
DADOS
Core
1
Core
2
Core
3
DADOS
………….
Core
16
16 core CPU
10
Core
1
DADOS
Core
2
DADOS
Core
3
………….
………….
DADOS
Core
16
16 core CPU
OLAP Services In-Memory vs. Cubos In-Memory Particionados em Paralelo
11
Acesso aos Dados com
Melhor Performance
(Rendimento)
Crie e Publique o Cubo
Com
Alta Escalabilidade de Dados
Análise aos Dados
Com
Melhor Tempo de Resposta
9.4.1: OLAP Services
Data: 5M linhas
Tx obtenção: 5074kb/sec
9.4.1: OLAP Services
Dados: 2.35B de linhas
Falha devido ao limite em 2 bilhões
de linhas
9.4.1: OLAP Services
Dados: 8M rows
Tempo de Resposta: 0:06:33
MSTR 10: Carga em Paralelo
8 Threads
Data: 5M rows
Tx obtenção : 22454kb/sec
MSTR 10: Particionamento 8 Threads
Dados: 2.35B rows
Tempo p/ Publicaçaõ: 5:14:23
Tamanho do Cubo: 265GB
MSTR 10: Acesso em Paralelo 8
Threads
Data: 8M de linhas
Tempo de Resposta : 0:04:25
Carga 4 vezes
mais rápida
Aumenta a escalabilidade
dos dados em até 80 vezes
Interações
50% mais rápidas
OLAP Services In-Memory vs. Cubos In-Memory Particionados em Paralelo
0
1
2
3
4
5
0
5
10
15
Power Rating (KiloCycles)
MSTR 10 Cube 8-partition on 8-core Linux
MSTR 10 Cube 1-partition on 8-core Linux
MSTR 10 Cube non-partition on 8-core Linux
12
Tempo Médio de Resposta (sec)
Tempo Médio de Resposta (sec)
Cubos em paralelo não particionados tem capacidade até 20% maior que o Olap Services
1
2
3
4
5
6
7
0
5
10
Power Rating (KiloCycles)
MSTR 10 Cube 8-partition on 8-core Win64
MSTR 10 Cube 1-partition on 8-core Win64
MSTR 10 Cube non-partition on 8-core Win64
OLAP Services In-Memory vs. Cubos In-Memory Particionados em Paralelo
490
35
390
Response Time (sec)
Response Time (sec)
30
25
20
15
10
190
90
5
0
-10
R1
R3
R5
R7
R9 R11 R13 R15 R17 R19 R21 R23 R25
Customer A Reports
9.4.1 Cube
MSTR10 Cube Non Partition
MSTR10 Cube 32-Partition
•
•
13
290
R1 R3 R5 R7 R9 R11 R13 R15 R17 R19 R21 R23 R25 R27 R29
Customer B Reports
9.4.1 Cube
MSTR10 Cube Non Partition
MSTR10 Cube 32-Partition
O cubo particionado em memória tem ganho de desempenho significativo em quase todos
os casos, tanto para o Cliente A quanto B
Cubos OLAP e não Particionados têm tempo de resposta quase semelhante.
Obrigado
Download