Buscar

arquitetura de dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Em um cenário hipercompetitivo, é necessário que os gestores sejam assertivos nas tomada de decisões operacionais, táticas e estratégicas. Em contrapartida, a tecnologia da informação deve estar preparada, para atender a organização por meio de métodos e ferramentas tecnológicas, apoiando os gestores de forma a obterem informação inteligente. Nesse sentido, é necessário compreender os conceitos de arquitetura de dados estruturados e não estruturados. Dentro da arquitetura de dados estruturados, veremos os conceitos de sistemas de bancos de dados transacionais e operacionais, específicos para a tomada de decisão operacional e tática. Na arquitetura não estruturada, veremos os conceitos e ferramentas para manipulação de dados multidimensionais, específicos para a tomada de decisão tática e estratégica.
Caro(a) estudante, ao ler este roteiro, você vai:
· compreender os conceitos de arquitetura de dados estruturados e não estruturados;
· estudar a arquitetura de dados estruturados: os banco de dados relacionais e os princípios da linguagem SQL;
· compreender a arquitetura de dados não estruturados: business intelligence e os princípios da linguagem NoSQL;
· compreender os conceitos das base multidimensionais: data warehouse e data marts;
· refletir sobre o uso da inteligência artificial e do data mining (mineração de dados).
Introdução
Atualmente, os sistemas computacionais têm a finalidade de assegurar que todas as informações imputadas, em transações ou em concorrência, devem ser armazenadas com segurança, em termos de confiabilidade, integridade e eficiência.
Existem dois tipos de arquitetura de dados e cada qual tem a sua aplicabilidade. A arquitetura de dados mais estruturada está relacionada às aplicações operacionais e transacionais de uma organização. Já dentro de uma arquitetura de dados multidimensional semiestruturada e não estruturada, as aplicações dizem respeito à descoberta de inteligência de diversas fontes para a tomada de decisão gerencial e estratégica.
Contudo, é de responsabilidade do gestor de TI a escolha por sistemas de banco de dados consistentes, seguros e eficientes. Já a sua programação, para a manipulação coerente dos dados, é de responsabilidade do analista ou administrador de sistemas e banco de dados. Portanto, conhecer os conceitos, características e as diversas técnicas, para gerenciar dados estruturados, semi e não estruturados, para as suas aplicações organizacionais, são de grande importância para estes profissionais.
Compreenderemos, além dos conceitos de arquiteturas de dados estruturados, por meio dos princípios de gerenciamento de banco de dados relacionais e da linguagem SQL, os conceitos de arquitetura de dados não-estruturados, pelas linguagens NoSQL. Veremos também os conceitos das bases multidimensionais (data warehouse e data marts) e o uso da inteligência artificial, especificamente, relacionado à mineração de dados.
Conceitos de Dados Estruturados e não Estruturados
Atualmente, com a criação das mais diversas tecnologias móveis e web, houve uma necessidade do desenvolvimento de novas estruturas de dados, mais ágeis e diversificadas, como as arquiteturas de dados semiestruturados e não estruturados. Os dados estruturados em sistemas de bancos de dados relacionais e transacionais, a rigor, seguem padrões normalizados para efetuarem os devidos relacionamentos. Já nos modelos semi e não estruturados, devido a suas essências de aplicabilidade, não possuem uma normalização ou padrão.
Os sistemas de bancos de dados relacionais seguem uma característica de relação entre tabelas formadas por linhas (registros, objetos) e colunas (campos, atributos). Para Ramakrishnan e Gehrke (2011, p. 50, grifado), “o principal construtor para representar dados no modelo relacional é a relação. Uma relação consiste em um esquema de relação e em uma instância de relação”. A instância da relação se refere a uma tabela (no paradigma relacional) ou classe (no paradigma orientado a objeto) que contém todos os registros de dados ou uma coleção de objetos. Já o esquema de relação descreve o cabeçalho da tabela, ou seja, os campos da tabela, ou atributos de uma classe ou também denominados de “colunas de uma tabela”. Uma tabela, para Heuser (2004), é um conjunto ordenado de linhas, também chamadas de tuplas. Cada tupla é um registro de dados. Um exemplo é uma tabela de funcionários de uma empresa (tabela Funcionario) em que cada linha ou registro é composta de uma série de campos (ou atributo).
Já em nos modelos não estruturados e semiestruturados, podem ser classificados em chave-valor (key-value), orientados a documentos (document), coluna familiar (column family) e banco triplo (triple). O tipo “chave-valor”, segundo Rockenbach, Anderle, Griebler e Souza (2018) são aqueles bancos que possuem informações associadas à respectiva chave. Muito utilizados em sistemas web e-commerce. No modelo orientado a documentos, as informações são armazenadas em árvores tipo XML. Já em um modelo do tipo “colunas familiares”, a estrutura é equivalente à tradicional, contudo, as informações são armazenadas em colunas em vez de linhas. E, por fim, no modelo banco triple, as informações são armazenadas em registros triplos: sujeito, propriedade e relacionamento.
Leitura
Arquitetura de Dados Estruturados: Banco de Dados Relacionais e os Princípios da Linguagem SQL
Para obter uma melhor eficiência nos projetos de banco de dados, tanto na questão de otimização de consultas como no acesso aos dados, é necessário compreender a arquitetura interna do gerenciador de banco de dados, indexação de tabelas, estruturas de armazenamento, controle de concorrência e a recuperação de falhas. Silberschatz, Korth e Sudarshan (2006) comentam que os sistemas de banco de dados são projetados para gerenciar grandes blocos de informação e para gerenciar tal quantidade de informação, é necessário definir estruturas para armazenamento de informação e fornecer mecanismo para manipulação de informações.
O Sistema de Gerenciamento de Dados (SGBD), segundo Date (2003, p. 37), é um software que trata de todo o acesso ao banco de dados. Conceitualmente, o SGBD realiza uma intercepção de alguma solicitação advinda dos usuários pelas aplicações. Esse procedimento é realizado por meio de alguma linguagem de manipulação de dados, como o SQL. Após a intercepção, o SGBD inspeciona um esquema externo para este usuário (esquema conceitual), o mapeamento conceitual interno e a definição do banco de dados armazenado. Para Feitosa (2013, p. 73), o SGBD é um software executado no nível de serviços, ou seja, um serviço é executado em segundo plano (background), no qual aguarda requisições do programa/usuário. Para se comunicar com o SGBD, é necessário construir uma aplicação que estabeleça conexões com uma porta lógica e o SGBD. O fabricante dos SGBD devem fornecer aplicações com interfaces, para realizar o gerenciamento do banco de dados. O SGBD recebe comando SQL por esta porta lógica em uma cadeia de caracteres tipo string. Na sequência, o SGBD realiza a análise de sintaxe desta cadeia de caracteres e o executa. O esquema abaixo ilustra as principais funcionalidades de execução de um SGBD.
Figura 1 - Funcionalidade de um SGBD
Fonte: Elaborada pelo autor.
Na Figura 1, após a requisição do usuário por uma consulta de relatório de clientes por meio de uma aplicação específica, veja que o serviço irá utilizar o processador de DQL (linguagem de consultas de dados), verificando a sintaxe, inspecionando os esquemas da base de dados, executando a instrução SQL e retornando ao usuário as informações solicitadas.
A estrutura de gerenciamento de banco de dados é formada por uma série de objetos, como compiladores, mecanismos de avaliação, gerenciadores, dicionários de dados, arquivos, registros, campos e índices. A maioria dos bancos de dados da atualidade são modelos relacionais, projetados com a sub linguagem DML (Linguagem de Manipulação de Dados) e DDL (Linguagem de Definição de Dados) nos seus SGDs (Sistemas Gerenciadores de Banco de Dados). Já umaestrutura de Sistema de Banco de Dados é mais ampla e é composta de três camadas de acesso e de processamento de dados, como: 1. Processador de consulta; 2. Gerenciador de armazenamento; e 3. Armazenamento em disco, como ilustra a Figura 2, a seguir:
Figura 2 - Sistema de um banco de dados
Fonte: Elaborada pelo autor.
A linguagem SQL (Structured Query Language) foi desenvolvida pela IBM, na década de 1970, para implementações em modelos relacionais, tornando-se padrão, desde 1986, quando a ANSI (American National Standards Institute) endossou a SQL como linguagem padrão para os bancos de dados relacionais. Essa poderosa linguagem é utilizada, para consultar, criar tabelas, inserir, excluir e alterar dados em um banco de dados. A SQL é uma linguagem declarativa, ou seja, ela permite definir metadados (DDL - Linguagem de definição de dados), manipular dados (DML - Linguagem de manipulação de dados) e definir comandos para a segurança e integridade dos dados (DCL - Linguagem de controle de dados). O usuário, pelos comandos SQL, consegue montar consultas complexas e poderosas sem criar um código de programação (CARDOSO; CARDOSO, 2012).
LEITURA
Arquitetura de Dados não Estruturados: Business Intelligence e os Princípios da Linguagem NoSQL
Atualmente, os sistemas de banco de dados transacionais e operacionais armazenam uma quantidade massiva de fontes de dados internas e externas das organizações, por exemplo, dos sistemas de gestão empresariais e das mídias digitais, das redes sociais e dos diversos dispositivos móveis. Para uma tomada de decisão eficiente, estruturação de uma inteligência competitiva ou uma contrainteligência, é necessária uma busca de informações eficiente e inteligente. Para isto, é necessário utilizar-se de ferramentas de mineração de dados (data mining) e de projetos de data warehouse (busca inteligente de informações nos negócios). Apesar de a consolidação se referir às informações sumarizadas, as técnicas de mineração de dados (data mining) e de busca de informações nos armazéns de dados não deixam de ser uma consolidação de padrões e dados selecionados. Estes dados selecionados de maneira inteligente por ferramentas específicas servem para que os mesmos possam ser trabalhados pelos tomadores de decisão. Os algoritmos de data mining e os projetos de data warehouse são de suma importância para tomada de decisão rápida e de qualidade.
Outro grande armazém de dados não estruturados é o big data. Segundo Alexandre e Cavique (2013, p. 38), “o NoSQL vem trazer solução para o grande volume de informação que é gerada e tem que ser analisada e com a necessidade das organizações manterem a informação durante um longo período de tempo, o Big Data”.  
Ainda sobre o NoSQL, Elmasri e Navathe (2018, p. 795):
[...] o termo NoSQL é geralmente interpretado como Not Only SQL [...] e tem como finalidade transmitir a ideia de que muitas aplicações precisam de sistemas diferentes dos sistemas SQL relacionais tradicionais para ampliar suas necessidade de gerenciamento de dados. A maioria dos sistema NoSQL são bancos de dados distribuídos ou sistemas de armazenamento distribuído com foco no armazenamento de dados semiestruturados, alto desempenho, disponibilidade e replicação de dados, e escalabilidade, ao contrário da ênfase em consistência imediata de dados, linguagens de consultas poderosas [Caso da SQL] e armazenamento de dados estruturados.
Os sistemas big date utilizam NoSQL e possuem características denominadas 3V, volume, velocidade e variedade de dados. O que difere um sistema de dados data warehouse, data mining e big data é a sua organização, arquitetura e volume de seus dados.
Em um sistema de banco de dados do tipo big data, o armazenamento é realizado a partir de um grande volume de dados não estruturados ou semiestruturados. Já no data mining e no data warehouse, o armazenamento, em volume menor, é feito a partir de bases estruturadas, semiestruturadas e não estruturadas.
‍‍
LEITURA
Conceitos das Bases Multidimensionais: Data Warehouse e Data Marts
O data warehouse (DW), o termo significa armazém de dados ou depósito de dados, é um acervo lógico que concentra vários tipos diferentes de bancos de dados e que possui a função de consolidar as informações para a análise de negócio e tomada de decisão. Os data warehouses consolidam as informações orientadas a assuntos das atividades organizacionais a partir de um grande volume de dados, favorecendo relatórios e análise de informações estratégicas. Para Alves (2018, p. 132), o data warehouse (DW) pode ser entendido como:
[...] um banco de dados especializado, capaz de trabalhar com um número maior de dados, e não apenas com dados internos da empresa. [...] Estes softwares são capazes de processar informações e não apenas dados, e podem fazer parte dos sistemas de apoio à decisão.
As fontes de bases de dados do data warehouse são bases transacionais e operacionais internas e externas (OLTP – Online Transaction Processing ou processamento de transações em tempo real, que incluem inserções, atualizações e exclusões, além de requisitos de consultas), que correspondem às  informações das diversas áreas organizacionais internas, como marketing, vendas, estoque, faturamento. E as bases externas são as que contêm informações sobre a concorrência, do negócio e setor, análise do mercado de ações etc. Para Alves (2018, p. 132), “o DW armazena e combina estes dados, gerando algumas informações e ferramentas, por exemplo, para consultas de informações e relatórios de diversos tipos, oferecendo uma visão multidimensional da empresa”. As informações destas bases de dados passam por um processo de extração, transformação e carregamento (ETL – Extraction, Transformation, and Loading) e são armazenadas para dentro de um armazém de dados, como ilustra a Figura 3, abaixo, representando um data warehouse. O data warehouse surgiu, na década de 1980, por meio de um conceito acadêmico, para suprir a deficiência dos sistemas transacionais e operacionais OLTP, ao realizar as tarefas de análise com tarefas de relatórios consolidados. Hoje, o data warehouse faz parte de uma das principais soluções de business intelligence do mercado.
Figura 3 - Business intelligence por meio de um projeto de data warehouse
Fonte: Elaborada pelo autor.
Descrição: os dados do data warehouse são coletados de bases transacionais pela ETL (extração, transformação e leitura), após armazenados de forma catalogada no armazém de dados. O data warehouse também podem gerar pequenos cubos de dados, os data marts.
Observe, na Figura 3, que todas as bases transacionais internas e externas passam por uma extração de dados sendo consolidadas em um enorme cubo de dados (warehouse) e depois em cubos menores (data marts). Estes cubos de dados possuem dimensões diferentes das bases transacionais e operacionais. São bancos de dados multidimensionais. A dimensão de um banco de dados é uma característica da informação. Cada camada de um data warehouse ou data mart representa um tipo de informação. E o cubo é a representação da multidimensionalidade dessas informações.
Observe também, na figura, que os cubos data marts são criados de forma personalizada, para facilitar as extensivas pesquisas por assuntos específicos, como um data mart específico de vendas com informações do mercado e da concorrência, ou um data mart de produção x estoque x pedidos ou ainda um data mart de informações do mercado econômico-financeiro x mercado de ações.
Para Alves (2018, p. 136), a “orientação por assunto é uma característica marcante de um DW, pois toda modelagem é desenhada em torno dos principais assuntos da empresa. Já os sistemas transacionais estão voltados para processos e aplicações específicas”.
A estrutura multidimensional facilita a pesquisa para a geração de relatórios e gráficos sumarizados e de forma analítica, dependendo dos recursos da ferramenta de leitura do cubo. Após a criação do cubo data mart, os usuários, por aplicativos específicos de leitura, podem destrinchar e detalhar as informações por meio da adiçãode dimensões, cruzando-as para visualização. Esse procedimento é denominado de análise multidimensional. O diagrama da Figura 4, abaixo, ilustra um cubo representando as três dimensões de informações (produto x cliente x região). Mas a representação na prática da multidimensionalidade é infinita.
Figura 4 - Diagrama representando as três dimensões de um cubo de informação de vendas
Fonte: Elaborada pelo  autor.
Descrição: o cubo data mart possui multidimensões.
Com o cubo de vendas com várias dimensões inter-relacionadas, é possível verificar quais foram os produtos vendidos, em determinada região, por clientes específicos. Uma possível tomada de decisão seria a atuação de uma maior força de vendas para as regiões de menor venda ou efetuar ainda um marketing mais agressivo para estes determinados clientes ou regiões. Se acrescentarmos uma nova dimensão ao cubo, por exemplo, “contas a receber” da base financeira, rodando o extrator de dados, migra-se, assim, dados do data warehouse e gera-se um novo data mart (produtos x clientes x região x contas a receber). Por meio da adição dessa nova dimensão ao data mart, é possível detalhar qual a razão de possíveis inadimplências de clientes, mesmo que tenham uma alta quantidade de pedidos fechados (alta quantidade de vendas). A análise pelo cruzamento das informações com um data mart se torna mais rica e rápida para a tomada de decisão. Em um DW ou DM (data mart), “as informações fornecem padrões consistentes, gerando, assim, relacionamentos informacionais correlacionados e transformando a informação em nova informação” (ALVES, 2018, p. 136). Com estas ferramentas de business intelligence, dos modelos de data warehouse e de data mart são reduzidas as customizações de programas específicos para a criação de relatórios a partir das bases transacionais e operacionais. Reduzem também o tempo de extração de dados das bases, evitando a elaboração de planos de otimização de índices e estudo de recuperação de dados.
Explore mais o assunto sobre análise multidimensional nas recomendações a seguir.
LEITURA
Inteligência Artificial e Data Mining (mineração de dados)
Nas organizações, as bases transacionais são utilizadas, para rastrear padrões e tendências às complexas tomadas de decisões em qualquer nível organizacional. Uma área da inteligência artificial que está ajudando a encontrar conhecimento em grandes bases de dados, para resolver problemas à tomada de decisão é a mineração de dados. Segundo Yanaze (2011, p. 281)
[...] a mineração de dados ou Data Mining são ferramentas que possibilitam a extração de informações úteis de bancos de dados volumosos e complexos, da descoberta de padrões, associações, mudanças e anomalias nos dados existentes [...]”.
A mineração de dados pode levar a uma capacidade preditiva e analítica poderosa de dados. As funcionalidades da mineração de dados são usadas, para especificar os tipos de informações nas tarefas descritivas e preditivas. As tarefas descritivas caracterizam as propriedades gerais dos dados, já as preditivas fazem inferência a partir dos dados, objetivando predições. Para encontrar informações necessárias em uma base de dados, é necessário se chegar a uma análise descritiva ou agrupamento. Já para uma descoberta de conhecimento, é necessário fazer com que o algoritmo aprenda de acordo com o seu desempenho (classificando, estimando ou associando dados).
É possível dividir uma mineração de dados em uma sequência de etapas para a descoberta do conhecimento:
1. Pré-processamento de dados: etapa que diz respeito ao processo de preparação da base de dados, limpeza, integração, redução, transformação e discretização dos dados;{
2. Análise descritiva dos dados: etapa que se refere ao processo de visualização dos dados;
3. Análise de grupos: etapa que diz respeito ao processo de agrupamento de dados (similaridades e formas de representação dos agrupamentos);
4. Aprendizagem: é a etapa de aprendizagem através de algoritmos de aprendizagem que podem ser por classificação, estimação ou por regras de associação;
As ferramentas de inteligência nos negócios (BI - business intelligence), como o data mining, é um dos principais subsídios da inteligência competitiva organizacional.
Segundo Sferra e Corrêa (2003, p. 136) citados por Alves (2018, p. 136), o data mining, também conhecido como mineração de dados,
[...] é uma tecnologia que emergiu da intersecção de três áreas: estatística clássica, inteligência artificial e aprendizado máquina, sendo a primeira mais antiga delas. Observa-se que o Data Mining é parte de um processo conhecido como KDD (Knowledge Discovery in DataBase) - em português: Descoberta do conhecimento em base de dados.
O BI está relacionado a um processo de captura, processamento e análise de dados para a elaboração de estratégias e tomada de decisão corporativa, podendo alcançar resultados surpreendentes na busca de inteligência nos negócios.

Continue navegando