Data Virtualization: Uma das facetas do Big Data Clusters

Provavelmente você já ouviu falar o termo Virtualização de Dados por ai, em artigos ou conteúdo relacionado a Big Data ou Cloud. Virtualizar os dados não “tem muita” ligação com Maquina Virtual (VM) como já conhecemos e usamos a muitos anos em nossas arquiteturas.

A Virtualização de Dados (VD) é uma abordagem de arquitetura para gerenciamento e manipulação dos dados permitindo que aplicações acesse dados sem exigir detalhes técnicos sobre a infraestrutura que os dados estão alocados e também da estrutura original dos dados, como por exemplo, formato, estrutura e onde estão localizados fisicamente. Além de desacoplar toda a complexidade da infraestrutura a Virtualização de dados também fornece uma camada de acesso único aos dados, descomplicando em muito ambientes com centenas de pontos de origem e manipulação de dados.

Para exemplificar vamos pensar no seguinte cenário:
Imagine um ambiente onde temos dados no MongoDB, Hadoop e bancos de dados relacionais (SQL Server, Oracle). Agora imagine uma necessidade de integração entre as três fontes para geração de relatórios ou algo do tipo. O processo de ETL (Extração, Transformação e Carga) seria altamente necessário, pois precisaríamos capturar os dados das 3 fontes, tratar e disponibilizar em um formato compatível para a aplicação requisitante. Deu para visualizar o pênalti que pagamos nesse tipo de processo? duplicação de dados, poder computacional para processar os dados, tempo e complexidade para manter todos os dados íntegros durantes os vários ciclos até chegar no sistema requisitantes. Isso é errado? não, é apenas uma forma de resolver o problema e como toda solução tem suas variáveis positivas e negativas. Podemos ver a representatividade na imagem abaixo:

Com a virtualização, o processo e a necessidade do ETL (Extração, Transformação e Carga) diminui. Em arquiteturas remanescentes os dados são mantidos em seus locais de origem e a camada de virtualização de dados passa a ser o intermediário entre os dados e os requisitantes. Isso diminui muito os ricos durante o processamento da jornada ETL. A tecnologia responsável pela camada da virtualização dos dados (existem várias) também tem a responsabilidade de prover a camada semântica e para isso utiliza técnicas de abstração e transformação no background.

A “mágica” da virtualização muda tudo. Assimilei a palavra “mágica” com a da “virtualização” de propósito :), pois para os usuários e aplicações a sensação é que todos os dados estão alocados em um único lugar no formato correto para que sua aplicação usufrua desse dado, como em um passe de mágica tudo aconteceu. Mas sabemos que no background não é bem assim (rsrs), tem muitas horas de trabalho de Arquitetura e Engenharia por trás dessa mágica.

Dados distribuídos em vários locais são consolidados em uma única fonte. A virtualização de dados permite às empresas tratar os dados como um tipo de suprimento dinâmico, oferecendo recursos de processamento capazes de reunir dados de diversas fontes, acomodar facilmente novas fontes e transformar os dados de acordo com as necessidades dos usuários. As ferramentas de virtualização de dados funcionam como múltiplas fontes de dados e permitem que essas fontes sejam tratadas como uma só. Dessa forma, os dados necessários são fornecidos no formato e no momento certo para qualquer aplicação ou usuário.
fonte: https://www.redhat.com/pt-br/topics/virtualization/what-is-virtualization

Quando pensamos em ambientes de Dados Multi-Cloud, como por exemplo um Data Lake provenientes em Cloud Providers diferentes (Azure, AWS, Google) a virtualização de dados tem um papel fundamental para manter a Governança e manipulação dos dados e principalmente o fluxo de acesso.

Onde o Big Data Clusters (SQL2019) pode ajudar com tudo isso?

Para quem ainda não conhece o Big Data Clusters, recomendo a leitura da série que estou publicando com bastante dedicação.

Além de todas as coisas legais do BDC que mencionei nos posts anteriores, a Virtualização de Dados é sem sombra de dúvida um recurso muito interessante que aproveita a arquitetura escalável baseada em Kubernetes (no Azure AKS) para criar a camada de virtualização de dados entre diversas fontes (CosmosDB, Oracle, Teradata, HDFS…).

Fornecendo através do Data Pool (Shared data) um ponto único de acesso aos dados para as aplicações se conectarem e consumirem dados em formato relacional, mesmo que esses dados estejam alocados dentro do HDFS ou MongoDB. Não acredita? da uma olhada nesse vídeo.

Apresentação do Big Data Clusters para o Canal do PASS

Semana que vem tem post novo na série #BigDataClusters e vamos aprender como ingerir dados no HDFS e ler via T-SQL (Virtualização de dados no ao vivo).

Até o próximo posts meus amigos e qualquer duvida estou sempre a disposição.

Garetti

6 thoughts on “Data Virtualization: Uma das facetas do Big Data Clusters

  1. Muito legal Luiz
    Na minha empresa estamos começando a pensar no Lake Multi cloud devido as necessidades de negocio… gostei de como vc explicou abriu alguns horizontes aqui.
    Sobre o BDC… vou testar isso eu não conhecia essa funcionalidade

    1. Obrigado pelo comentário Carlos.
      Sim cara, o BDC tem consegue fazer a virtualização dos dados para várias fontes e compativel com spark e HDFS. Se o seu parque já for “Microsoft” a integração fica ainda muito mais fácil.
      Boa sorte na missão ai e precisando só me pingar.

  2. Luiz, seus posts me ajudaram muito para a implementação de um bdc onpremise. Estamos em fase de avaliação da ferramenta e a virtualização será uma feature realmente diferencial. Contudo não estou conseguindo visualizar os caracteres de acentuação, mesmo o arquivo sendo UTF-8 e o enconding correto no banco de dados e colunas varchar e nvarchar. Se utilizao esta função os caracteres na tabela ficam errados, se uso uma função de importação, com o Management Studio por exemplo, funciona. Achei pouca documentação disponível e não consegui achar nada, nem procurando pelo Polybase. Você sabe me orientar um caminho para que eu possa resolver este problema? Muito obrigado e parabéns pelo site.

Comente sobre isso: