terça-feira, 11 de agosto de 2015

Datazen - Solução de BI para plataformas móveis da Microsoft – Arquitetura

Neste post, vou apresentar um pouco da arquitetura do Datazen, o que é necessário ter para poder ser elegível a utilizar a solução e nos próximos posts, o desenvolvimento de alguns relatórios de exemplo. 

Não vou falar de instalação neste blog, porque há dezenas de posts mostrando detalhadamente como realizar este procedimento. Os documentos que são entregues junto do instalador (manual da ferramenta, e um docx com as melhores praticas) também são bem práticos para realizar a instalação e integrações, sem maiores problemas.

O Datazen foi adquirido pela Microsoft em abril deste ano para dar suporte a uma necessidade de usuários on-premisses acessarem dashboards, KPIs e relatórios através de dispositivos moveis (tablets e Smartfones). Nada que já não fosse possível realizar com o Reporting Services ou Sharepoint, mas a grande cobrança, que era do Power View em html5 pode ter sido um dos motivos para a aquisição do Datazen. 

O Power View, solução de relatórios em silverligth, dependente do Sharepoint, só foi adequada a acesso em html5 no PowerBI, serviço de nuvem. Dentro da empresa, tínhamos que utilizar soluções de terceiros, tipo o próprio Datazen!

Vamos começar falando de aquisição da ferramenta para sua empresa ou negócio. A Microsoft no momento, não disponibiliza em sua carteira de licenças o Datazen, se você possui pelo menos uma licença de SQL Server Enterprise, da versão 2008 em diante, e possui contrato de Software Assurence, já pode usar o Datazen. E é só assim. Tem que se enquadrar nas duas regras, simultaneamente, e não adianta chorar...

Para baixar a ultima versão do Datazen, que saiu a alguns dias (versão 3.0.3305) clique aqui. Essa versão já vem com umas melhorias quanto a nome de campos no resultado de um dataset, e o suporte aos dois eixos do MDX (na versão anterior, era necessário criar membros de medidas para as informações, e o nome das colunas não eram editáveis, dando um certo trabalho arrumar o dataset), mas isso vamos ver em outros posts.

Acima, temos a arquitetura da solução. Toda a parte de autenticação pode ser feita integrada ao Active Directory ou ADFS,  e também possui a opção de conexão externa, utilizando informações de HTTP header ou cookie.

A camada de acesso a dados já disponibiliza clientes de conexão aos principais players de banco de dados de mercado.

Já a camada de acesso do usuário aos dashboards e KPIs é feita tanto por browser quanto por APPs disponíveis nas principais lojas (Windows Store, GooglePlay e AppleStore) gratuitamente.

A parte de servidor fica dividida em 4 componentes: Core Service, Data Acquisition Service, Rendering Service e Web Applications. É possível escalar esses componentes, onde se deve manter os três primeiros serviços no mesmo servidor e múltiplos servidores para web applications, configurando load-balancer para ambientes com grande número de acessos.

Abaixo uma descrição de cada serviço:

Core Service
  • Repositório para os serviços do windows, usuários, KPIs, dashboards, datasets, mapas customizados, permissionamento, pacotes de customizações (brands) e cache de dados;
  • Suporte para leituras de acesso instantâneo e grande número de clientes conectados;
Data Acquisition Service
  • Serviço para realizar consultas periódicas de dados externos armazenando os resultados em caches no Core Service Repository;
Rendering Service
  • Responsável em processar e renderizar os dashboards thumbnails;
Web Applications
  • Web-API, baseado em REST, interface de acesso a todos os tipos de aplicações cliente (tanto o app de publicação quanto os apps de acesso para dispositivos moveis e Windows);
  • Control Panel, interface de configurações e administração via browser;
  • Viewer, interface de acessso a dashboards e KPIs via browser.





Falando de segurança, é possível implementar criptografia de dados em todos os níveis do acesso.

Todo o repositório do Core Server é implementado em RavenDB, banco de dados NoSQL com suporte a criptografia.

Os dados trafegados podem ser criptografados por protocolo https.

Informações sensíveis como credenciais, strings de conexão que são trafegadas entre serviços podem ser tratados por certificados de segurança SSL.

Controle de acesso aos dados por usuário podem ser implementados direto nas conexões de dados, e os datasets podem realizar o acesso aos dados em tempo real ou pode ser agendados para realizar a atualização em janelas de tempos diferentes (horas, dias, semanas, etc...). 

Com isso, a experiencia de acesso e utilização pelos usuários é praticamente instantânea após o primeiro acesso.

Minha ideia é apresentar um pouco de cada componente, sempre semanalmente. 

No próximo post, vou mostrar o acesso ao painel de controle, mostrar a parte de criação de usuários, divisão de acesso a objetos, e outras configurações.

Mais informações sobre o Datazen, clique aqui.

Abraços Pessoal e até a próxima!




Nenhum comentário:

Postar um comentário