#PensandoEmDados [4] – Integração de dados

Integração de dados é combinação de processos técnicos e de negócios utilizados para combinar dados de…

Integrar dados é unificar diferentes bases

A busca por informações sobre qualquer assunto requer dados íntegros e confiáveis. É de interesse de todos que dados verdadeiros e completos sejam recolhidos para uma análise, seja para um relatório mensal/semestral de uma instituição ou o resultado de uma busca na internet. A fonte dos dados é de vital importância nesse aspecto e, por isso, integração de dados é tema recorrente nas pesquisas, artigos e nos estudos sobre DADOS.

O termo INTEGRAÇÃO vem justamente de integrar, tornar íntegro, formando um conjunto de dados a partir de fontes e origens distintas. A IBM é uma gigante da área de computação e de lidar com dados. Em seu site oficial, ela nos traz a seguinte definição:

“A integração de dados é a combinação de processos técnicos e de negócios utilizados para combinar dados de fontes distintas em informações valiosas e relevantes através de um software de integração.”

IBM, 2018

Diversas empresas e organizações passaram a criar mecanismos para que diferentes tipos de dados pudessem ter uma conexão, principalmente após o termo Big Data ficar em evidencia. Empresas como a Microsoft, Oracle, Amazon e a própria IBM tem criado grupos de trabalho e pesquisa e com isso temos hoje diversas formas de realizar essa integração e análise de dados de maneira rápida, com baixo custo e com uso de inteligência artificial no processo.

Apache Hadoop

Hadoop é uma plataforma da Apache Foundation criada para computação distribuída. Ou seja, é um sistema que consegue unificar várias máquinas (computadores) que passam a ser enxergados como um só. Com ele, trabalhar com processamento de dados em grandes volumes a tarefa passa a ser menos penosa. Além do Hadoop, a Apache se destaca de várias formas com produtos que atendem a diversas demandas voltadas a dados. Por ser uma fundação, não tem necessariamente fins lucrativos, o que torna o uso de seus sistemas práticos para diversos projetos, sejam eles públicos ou privados.

Com ferramentas com essa, é possível receber dados vindos de um banco de dados Relacional, outro de um banco Não Relacional, de um .TXT ou .CSV, uma planilha ou de diversos outros sistemas, conecta-los entre si e criar visualizações a partir dessa unificação.

Em resumo, integração de dados é preciso para que possamos ter a consolidação da informação e, com isso, a geração de conhecimento acerca de um ou de vários tipos de dados.

#PensandoEmDados [3] – Armazenando dados

Como você deve saber, os dados são passíveis de serem coletados de várias maneiras. Sensores, formulários, bases de dados, câmeras e variados sistemas, em conjunto ou separadamente, podem ser usados como coletores de dados. Mas, você já se perguntou onde SEUS DADOS são ARMAZENADOS?

Armazenando dados

Se você já tem conhecimento na área de sistemas e desenvolvimento, sabe que o meio mais tradicional de armazenamento de dados são os Bancos de dados (BD). Os BDs são bases que contém uma estrutura e regras para armazenagem de dados em formatos geralmente pré-estabelecidos, utilizando SGBDs (Sistemas Gerenciadores de Banco de Dados). Os modelos de bancos de dados mais tradicionais e ainda grandemente utilizados são os bancos de dados Relacionais.

O termo RELACIONAL vem do conceito matemático de relações, onde um dado conjunto A pode se relacionar com um B, que por sua vez pode ser relacionado a um C. O conceito de “estar contido” ou “não estar contido” te remete a alguma coisa? Pois é, esse princípio matemático define o que seriam os relacionamentos.

Os BDs relacionais são baseados em TABELAS, que possuem um nome e colunas que definem que tipo de dado será guardado. Os tipos de dados a serem armazenados devem ser definidos na criação da tabela e cada campo da tabela terá um tipo específico de dado, como: String (caracteres), Double/Float/Integer (tipos numéricos), Boolean (tipo booleano), Data/Datatime/TimeStamp (tipos que armazenam data e/ou data e hora), entre outros.

Dos bancos relacionais no mercado, se destacam os robustos ORACLE, SQL SERVER (da Microsoft), BD2 (da IBM) como Bancos proprietários (pagos). Para os gratuitos temos  POSTGRESQL e MySQL (pertencente a Oracle mas com a versão MariaDB gratuita).

Outros tipos de Bases de dados

Existem outros tipos de bancos de dados além dos relacionais. Um dos que está em maior crescimento são os NoSQL (acrônimo para Não Apenas SQL), também conhecidos por Bancos Não Relacionais. Os NoSQL dividem-se basicamente em 4 modelos: Documentos, Grafos, Colunas e Chave-valor [baseado em Amazon, 2018]. O modelo que tem tido maior volume de utilizadores é o baseado em Documentos, dentre eles se destaca o MongoDB.

Além de um banco de dados e seu SGBD, os dados podem ser armazenados em arquivos de texto, planilhas ou em bancos de dados de outro tipo como Objeto-Relacional, Hierárquico, Rede, etc.

De um modo geral, armazenar dados pode ser feito de diversas maneiras e, com isso, sistemas heterogêneos podem ser criados. Para poder gerenciar essa gama de dados vindos e armazenados em distintos formatos, temos o importante papel da INTEGRAÇÃO DE DADOS, tema de nossa próxima postagem. Até lá!

Siga-me nas redes sociais:

Aprendendo banco de dados com MySQL e Workbench

Uma nova série-tutorial sobre MySQL com a ferramenta Workbench.Um pontapé inicial para quem quer aprender banco de dados

MySQL é um dos bancos de dados mais populares do mundo. Hoje comandado pela Oracle, sua versatilidade e o fato de ser open source favorecem a popularidade.

Estou começando uma série-tutorial sobre MySQL com a ferramenta Workbench. Ela será um pontapé inicial para quem quer aprender banco de dados e principalmente o MySQL.

Os vídeos estarão disponíveis publicados em meu canal no Youtube (já clique aqui e se inscreva). A série mostrará desde como instalar o banco e a ferramenta até a manipulação de dados, com a criação de Schemas, Tabelas, Inserção de dados e um CRUD completo.

Vem comigo, inscreva-se em meu canal e siga-me em meu blog para ter acesso a todo o material.

#Java: Como começar a aprender?

Muita gente pergunta qual a melhor maneira de aprender Java, ou como se faz para começar, ou variações desse tema. Não só isso, muita gente começa a aprender Java e inunda as listas de discussão com perguntas que poderiam ser facilmente respondidas através de recursos básicos que todo desenvolvedor Java deveria conhecer.

A seguir irei elencar recursos baseado em várias fontes. Neles, espero poder auxiliar a quem tiver iniciando como um dia eu estive. Alguns dos materiais citados são em inglês, que de antemão antecipo que não pode ser um empecilho na vida de qualquer pessoa que pense em se tornar um programador/desenvolvedor ou profissional na área de TI. Tudo pelo fato de a maioria dos tutoriais e manuais oficiais em TI serem lançados primeiramente em inglês para depois ter uma tradução.

  1. Aprender Java é muito difícil?

O Java é, junto com .NET, frontend, desenvolvimento mobile, php e ruby, uma das plataformas que mais interessam aos estudantes e iniciantes. Há vários motivos para isso. Você pode ter um primo mais velho que já trabalha com Java, sua faculdade pode estar cobrando exercícios e trabalhos nessa linguagem, quer programar para Android ou simplesmente gostou do logo da plataforma. Como começar?

Antes de aprender a programar em qualquer linguagem, é preciso aprender Lógica de programação. Uma cadeira básica em qualquer curso de tecnologia da informação, mas cujo conhecimento também pode ser adquirido com uma apostila básica ou curso presencial e/ou online. Procure no Youtube que você de certo achará aos montes.

2. Java – por onde eu começo?

Se você nunca ouviu falar de Java, comece lendo o documento no site oficial “What Is the Java Platform” (O Que É A Plataforma Java). Se você já ouviu falar, sugiro que você leia esse documento assim mesmo. Isso vai te dar algumas informações importantes sobre os objetivos básicos da tecnologia Java.

Outra coisa importante é que Java é uma tecnologia orientada a objetos. Se você nunca ouviu falar disso, ou se você não conhece a terminologia básica de orientação a objetos, sugiro que você comece lendo algo a respeito. Uma opção é ler o material da Oracle  que contém um conjunto de lições com informações básicas sobre OO.

Para poder praticar o Java em seu computador, será necessário ter o JDK (Java Development Kit) instalado nele. Ele é a plataforma Java na versão para devenvolvedores, é gratuito e já instala tudo que você vai precisar para criar seus primeiros programas. Acesse o site oficial da Oracle para baixá-lo de graça.

3. Pratique muito.

Após os primeiros passos e o começo em entender os conceitos da linguagem, é necessário praticar. No começo, utilizar ferramentas como Eclipse e Netbeans pode lhe fazer ficar viciado nos auxilios que essas IDEs proporcionam. Tente programar tudo “na mão”, digitando cada exemplo e criando seus programas sem auxílios extras. Mas é importante que você não fique apenas nos exercícios que você vê nas apostilas ou na sua faculdade. É seu papel ir além, buscar implementar tudo aquilo que passa pela sua cabeça. Tente variações dos exercícios. Não se contente apenas com “agora deu certo”. Vá atrás de entender o que passa por debaixo dos panos. É uma característica importante de um programador.

4. Primeiros passos

Para começar, você pode utilizar materiais gratuitos e de boa qualidade. Indico de cara apostila do pessoal da Caelum. Eles possuem tanto uma apostila completa como um curso que te introduz ao Java e a programação orientada a objetos (POO). Além dela, indico também o pessoal da RLSystem , que possuem também um curso gratuito de introdução ao Java e uma versão completa. Com cursos pagos também tem os caras da Algaworks, com vários cursos e que sempre lançam mini-tutoriais gratuitos em vídeo.

Pra fechar, procure por referências em livros como os da Casa do Código. O livro Java como programar(considerada a bíblia Java), também é uma ótima pedida.

5. Concluindo

Lembre-se sempre: programação não é baseada em só decorar os comandos como alguns pensam, é preciso muito mais, por isso ter uma boa lógica é fundamental. Uma boa coisa para evoluir a lógica e o raciocínio é a matemática.

Seja qual for o caminho que você escolher, praticar e exercitar a linguagem são as principais forma de fixar seu conhecimento e demonstrá-lo! Se você quer chegar a ser um bom profissional em Java deverá conhecer profundamente as APIS básicas, como java.lang, java.util e java.io, além dos conceitos de orientação a objetos, é um grande diferencial que boas empresas saberão valorizar. É melhor focar seus estudos no coração da plataforma do que conhecer diversos frameworks e bibliotecas sem este embasamento.

 

Oracle propõe um novo projeto Mobile OpenJDK

A Oracle propôs um novo projeto para revigorar o estado do mobile no Java. Se adotado pelo OpenJDK, o novo Projeto Mobile será focado em portar o OpenJDK para plataformas móveis populares como o iOS, Android e Windows Mobile.

Bob Vandette, líder proposto para o novo projeto, confirmou que a Oracle tem a intenção de fazer contribuições essenciais para este novo projeto, que teria como base o OpenJDK 9. Os detalhes incluem suporte para:

  1. O equivalente ao profile compact2 do Java 8, mas como um módulo do Java 9;
  2. iOS x64 e arm64 (o arm64 através de um interpratador puro em C++);
  3. Android x86 e arm (32-bit com o JIT habilitado);
  4. Windows 10 x64 Surface Pro;
  5. Interface de ajuda JavaLauncher para simplificar a inclusão do Java em aplicações móveis.

A Oracle planeja contribuir com o sistema de compilação, além do Hotspot e mudanças no código da JDK para atingir plataformas móveis. O anúncio parece indicar que a Oracle incluiria a habilidade de produzir Java runtimes estáticas, como o iOS tem restrições a certos tipos de transformações de código dinâmico que são normalmente realizados pelo Java em tempo de execução.

Esta proposta ainda precisa ser aprovada pelos membros votantes elegíveis do OpenJDK, mas parece teve apoio em uma votação antecipada. Enquanto muitos analistas do setor tenham assumido que o Java móvel significava ou o Android ou as tecnologias JavaME em decadência. Este anúncio demonstra que a Oracle ainda acredita que é possível encontrar um mercado “real” para o Java em plataformas móveis modernas.

Fonte: InfoQ Brasil