/graduate-datascientist

Documentação de todo e qualquer conhecimento adquirido em minha experiência acadêmica e/ou profissional sobre Data Science, Big Data, Data Analytics e Inteligência Artificial (machine learning, deep learning, neural networks)

MIT LicenseMIT

PROJETO OBJETIVO PROGRAMAÇÃO CIÊNCIA DA COMPUTAÇÃO
Formação Cientista de Dados Dominar o conhecimento em Ciência de Dados Python, R, JavaScript Inteligência Artificial
LinkedIn : https://www.linkedin.com/in/claudineien/

VISÃO GERENCIAL EM BIG DATA

A era da informação e conhecimento sempre existiram. Para saber disto basta lembrar de Sócrates 469 a.C, Platão 428 a.C, Aristóteles 384 a.C, entre outros filósofos, matemáticos, físicos, cientitas, escritores, entre outros contribuidores, que contribuiram com milhares de milhares de informações e conhecimentos.

A diferença entre a época dos citados seres humanos e nossa época é que nos últimos 30 anos foram produzidos uma quantidade incomparável de informações e conhecimentos em relação os anteriores últimos 1000 anos, por conta da alta velocidade de propagação

Analisar dados é sobreviver, esta além de ser uma simples atividade

A globalização e competitividade mundial obriga as organizações a serem talentosamente eficientes na extração de informações e conhecimentos no enorme universo exponencial de dados eletrônicos

O produto do talento eficiente na extração de informações e conhecimento será no mínimo : menos custo, mais vendas, clientes mais satisfeitos, fornecedores mais eficientes, conformidade com órgãos reguladores e conformidade com órgãos fiscalizadores

O PMBOK (2013) define que um projeto é um esforço temporário para produzir um produto ou serviço exclusivo. Um projeto Big Data possui estas mesmas características, e pode gerar resultados por tempo indeterminado.

Um projeto Big Data esta entre os mais complexos e com maiores riscos de todas as indústrias, produzindo algo abstrato, não tangível, envolve muitas estruturas, sistemas, formatos, pessoas e infraestrutura

Um projeto que envolve uma única fonte de dados relacionais para produzir dimensões em um data mart, não pode ser considerado Big Data.

ENTENDER O PROJETO BIG DATA

Envolve grandes volumes de dados (petabytes, exabytes, etc...), velocidade, variedade, veracidade e valor.

PROJETO BIG DATA

Um projeto Big Data envolve fontes de diversos tipos e origens de dados, os que envolvem poucas fontes de dados deve haver uma desestruturada ou semi-estruturada ou fontes de dados NoSQL, ou volumes de dados além de um projeto tradicional.

O PMBOK registra que nem todos os processos são obrigatórios. Nem aplicarmos aplica-los com a mesma intensidade. Quais processos usar e intensidade aplicar será responsabilidade do gerente do projeto e sua equipe. Os fatores que envolve são: complexidade, novos elementos relacionados, pessoas, tecnologias, dados de origem ou origem dos dados.

CRIAR PROTÓTIPOS

  1. Baixa complexidade : há experiência prévia e tecnologia madura e testada, talvez seja dispensável um protótipo
  2. Média complexidade : pouca experiência e com entrega de artefatos de visualização, pode ter protótipos em ferramentas que simulem maquetes de telas
  3. Grande complexidade : quase sem experiência alguma, pode requerer protótipo funcional para verificar viabilidade e minimizar riscos

DIFERENÇA ENTRE PROJETO TRADICIONAL DE ANÁLISE DE DADOS E PROJETO BIG DATA

Características Projeto Tradicional Projeto Big Data
Veracidade Pode demorar semanas ou meses Pode ser milhões de vezes mais rápido, e de forma contínua, e com maior índice de acerto
Valor Pode demorar semanas ou meses, para ter certeza se o resultado é positivo ou negativo Provavelmente em algumas horas saiba se o resultado é positivo ou negativo
Velocidade Auditoria manual, por amostragem, pode demandar semanas ou meses, definido período para executar Com computador o processo é quase todo eletrônico, o mínimo de erro, milhões de vezes mais rápido, e de forma contínua
Volume Construídos em data warehouse, contendo até terabytes de dados Construídos em data warehouse e/ou nuvem, a partir de petabyte de dados
Variedade Dados relacionais estruturados, hieráquico ou de rede Além do tradicional, incluem dados não estruturados, semi-estruturados : redes sociais, sensores, web, documentos, emails, etc, etc...
Arquitetura Projeto Centralizado em um servidor Projeto Distribuído entre servidores
Crescimento Vertical : +memória, +cpu, +servidor Horizontal : adicionados data nodes
Virtualizados Normalmente não Geralmente Sim
Tráfego de dados Mais dados do servidor ao cliente ou do servidor para fora da empresas O maior tráfego é entre os nós dos servidores
Carga de dados Normalmente é realizado após pré-análise e identificação de valor agregado. Os dados são tratados e carregados em repositórios pequenos (para padrões Big Data), para apoiar decisões. Geralmente carregam grandes volumes (a partir de petabytes) de dados em um sistema HDFS -Hadoop Distributed File System ou para Serviços Cloud, mesmo sem identificar informação com valor agregado. O nome dado a formação de dados é data lakes (lago de dados). Posteriormente parte destes dados podem ser tranferidos a um tradidional data mart

O gráfico a seguir mostra a relação inversa entre tempo de produção da informação e o valor da informação

Grafico : Valor Informação x Tempo de produção da Informação

DIFERENÇAS NA ESTRUTURA BÁSICA DE SOLUÇÃO DE ANÁLISE DE DADOS

Elementos Análise Tradicional de Dados Análise de Big Data
Fontes de dados Normalmente dados relacionais estruturados, hieráquico ou de rede. Alguns casos não estruturados Estruturados e não estruturados com enorme quantidade de variedades de fontes de dados
Carga Realizado por um processo de carga, web service ou uma API Realizado por um processo de carga, web service ou uma API
Armazenamento Em um banco de dados relacional ou dimensional Em sistemas de arquivos distribuídos com HDFS e em bancos de dados NoSQL
Análise Utilizar consultas em linguagem estruturada (Pig Latin ou SQL) ou algorítimo machine learning (aprendizado de máquina) utilizando cubos de decisão Utilizar consultas em linguagem estruturada (Pig Latin ou SQL) ou algorítimo machine learning (aprendizado de máquina) utilizam map reduce
Visualização Painéis, relatórios, KPIs, entre outros Painéis, relatórios, KPIs, entre outros

OBJETIVO DO PROJETO BIG DATA

Projetos big data são altamente complexos e envolvem grande número de variáveis, para alcançar seu objetivo que é : Responder Perguntas.

Agrupando todos os elementos envolvidos para alcançar o objetivo, um projeto big data envolve : pessoas, processos, dados e tecnologia. A seguir o Triângulo dos projetos Big Data :

Grafico : Triangulo-Pessoas,Processod,Dados,Tecnologia

Elementos Objetivo do elemento
Pessoa É o elemento mais importante do Big Data, por que os projetos Big Data são feitos por pessoas para pessoas envolvidas no processo. As pessoas que produzem : dados de origem, configuram sistemas de processamento, programam scripts, definem regras de negócios, fornecem suporte, interpretam legislação, geram relatórios, parametrizam KPIs, definem requisitos técnicos e funcionais das soluções, entre outros
Processo Definem os requisitos funcionais do projeto. São definidos por pessoas, normas internas, necessiddes gerenciais, legislação, conformidade ou regras de mercado
Dado É a Matéria-prima que será analisada, tratada e adequada a realidade do negócio, tornado-se qualificada aos objetivos do projeto, e ainda será processado por um ou mais algoritmos matemáticos, estatísticos e/ou relacionais em que o usuário final será capaz de extrair informações e conhecimento.
Tecnologia São conectores, softwares de extração, softwares de transformação, softwares de qualidade de dados, algoritmos de aprendizado de máquina, softwares de visualização, discos rígidos, clusters, roteadores, switches, banco de dados, redes, internet, website, webapp, etc...

PROJETO COM FOCO NO NEGÓCIO

  1. Trazer vantagem competitiva ao resolver um problema de negócio para vender mais, gastar menos, ser mais eficiente, ser mais eficaz, entre outros benefícios
  2. Desenvolver produto ou serviço que oferece solução à valorizar os dados como : mecanismo de buscas, um serviço de previsão de preços de passagens áreas, um BI self-service, etc

PROJETO COM FOCO NOS OBJETIVOS

  1. Negócios : considere projeto com foco no negócio
  2. Auditoria : encontrar fraudes, desperdícios, vírus, spams, e/ou erros
  3. Conformidade : atender uma ou mais normas específicas, associada a alguma entidade reguladora ou fiscalizadora. Ex : eSocial, secção 404 da Sarbanes-Oxley
  4. Operação : atender requisitos operacionais. Ex : controle de linha de produção, Controle Estatísticos de Processos, monitoramento de sitema de informação, etc...
  5. Pesquisa : qualquer projeto de pesquisa em qualquer área. Exemplo: GIMPS-Great Internet Mersenne Prime Search

PROJETO COM FOCO NAS ANÁLISES

  1. Descritivos ou Exploratórios : analisar dados para conhecê-los ou apresentar resultados consolidados. Ex : vendas por tipo de produto ou funcionários por departamento. Forte na produção de gráficos de dispersão, diagrama de caixa, setores, barras, etc
  2. Inferência: apresentar prováveis fatos a partir de uma parte menor da população de dados, com uma margem de erro
  3. Análiticos : buscar relações entre diversos dados. Ex : vendas de acordo com o sexo do cliente, absenteismo de acordo com o cargo do funcionário
  4. Preditivos : prever fatos futuros, com base em fatos ocorridos. Ex : prever bom pagador, aluno com melhor desempenho, tempo que um funcionário ficará na empresa, etc
  5. Prescritivos : trazer informações que permita mudar evento futuro. Ex : ações para funcionário permanecer na empresa

PROJETO COM FOCO NA FONTE DE DADOS

  1. modelo : relacional, rede, hireráquico, orientado a objetos, chave-valor, dimensional, etc
  2. fornecedor : Aws Amazon, Oracle, Dell, Sbt Televisão, IBM
  3. origem : sistemas de produção, midias sociais, pesquisas, benchmarking, sensores, etc

  4. Estes dados podem ser :

    1. estruturados : estrutura rígida e fixa de dados organizados em linha e em colunas. Ex : planilhas , banco de dados relacionais
    2. semi-estruturados : não é homogênea e não é fixa. Ex : XML e json
    3. não estruturados : sem qualquer tipo de estrutura definida. Ex : documentos, e-mails, sites, etc

VALOR DE NEGÓCIO

O Gerente de Projetos aceita o Business Case amplamente discutido, analisado e aprovado, e trabalha para garantir o seu sucesso aplicando as seguintes técnicas :

CRITÉRIOS DE SUCESSO DE PROJETOS BIG DATA

Usados para medir se o projeto foi bem-sucedido. Podem ser os mais diversos, vejamos a seguir alguns dos mais comuns :

  1. Usuários satisfeitos
  2. Patrocinadores satisfeitos
  3. Aumento de vendas
  4. Redução de fraudes
  5. Redução do custo operacional
  6. Disponibilidade
  7. TCO

Fatores de sucesso

A seguir os fatores que o gerente de projeto e sua equipe devem observar para aumentar as chances do projeto ser bem-sucedido :

  1. Suporte do patrocinador : é fundamental que acredite no projeto, esteja interessado e o priorize
  2. Envolvimento dos interessados : os interessados devem ser envolvidos e saber que teem valor no projeto
  3. Metas do projeto :
    1. Entrega com mínima variação de prazo
    2. Com escopo acordado
    3. Com custos previsto
    4. Com valor de negócio
  4. Orientado a negócio : avaliar o que quer produzir, qual o seu objetivo.
  5. Sub-Orientado a tecnologia : avaliar as tecnologias existentes.

Volume e crescimento dos dados

Analisar com a equipe do projeto respostas às seguintes perguntas :

  • Qual será o volume de dados ?
  • Quantas serão as transações por minuto ?
  • Qual volume de dados diário e mensal em terabytes, petabytes ?
  • Quantos datanodes e namenodes são necessários ?
  • Qual estimativa de volume nos próximos 3 três anos ?
  • Como deve ser e/ou será a infraestrutura necessária quanto ao armazenamento, rede e o processamento ?

Velocidade dos dados

Analisar os seguintes itens :

  • Qual a origem da velocidade ?
  • Qual a melhor latência possível ?
  • Serão dados em fluxo (streaming) analisados em memória ?
  • Serão informações estáticas ?
  • Por dia, semana, meses os dados seão : [ ]em tempo real [ ]próximo ao tempo real [ ]Com baixa latência ?
  • Os dados em tempo serão : [ ]milessegundos [ ]segundos [ ]minutos [ ]horas ?
  • Qual será a infraestrutura de rede Ethernet em gigabit ?

Variedade dos dados

A variedade dos dados pode ser detectada através das seguintes perguntas :

  • Serão dados : [ ]estruturados [ ]não estruturados?
  • Quais serão os fornecedores ?
  • Que tipo de dados não estruturados serão ? (imagens, vídeos, emails ...)
  • Que tipo de dados estruturados serão ?
  • Estão em plataforma baixa ou alta ?
  • Existem conectores conhecidos e funcionais para todas as fontes ?
  • Quais são os dados criptografados ?
  • Quais são os dados proprietários ?
  • Há dados gerados por máquinas ?
  • Serão necessários dados de dispositivos ?
  • Serão necessários dados de redes sociais ?
  • Quais tipos de dados serão necessário comprar de um data broker ?
  • As fontes de dados estão documentadas ?
  • A integridade referencial dos dados é : [ ]na aplicação [ ]no banco de dados ?
  • A estrutura dos dados esta em uma estrutura legível ?
  • As entidades do banco de dados são nomeadas com prefixo mais um número ?
  • Será necessário utilizar ferramenta de profile no banco de dados ?
  • Será necessário aplicar engenharia reversa sobre a fonte de dados ?
  • A fonte de dados é antiga ?
  • Há um conector conhecido com custo viável para trabalhar com a base de dados antiga ?

Disponibilidade

Ter requisito de disponibilidade com regras bem definidas de redundância evitará prejuízos e/ou até o fracasso do projeto

Prever falhas em hardwares, falhas em softwares, falta de luz, falhas de segurança, problemas físicos e/ou lógicos em redes, entre diversos outros problemas

A disponibilidade 99,999% (conhecida cinco noves), representa indisponibilidade de 5,26 minutos por ano.

Alta disponibilidade significa sistemas mais tolerantes a falhas.

É interessante a contratação de RTO-Recovery Time Objective em projetos críticos, para definir o tempo que o contratado tem para recuperar o sistema e colocar de volta em funcionamento

A seguir algumas tecnologias que possuem redundância nativa :

  • Hadoop
  • Google Cloud
  • AWS Cloud
  • Microsoft Azure

Virtualização

A virtualização tem reduzido custos, facilitado a gestão de e/ou nos projetos e possuem alto nível de segurança, portanto analisar quais partes do projeto Big Data virtualizar e como virtualizar.

BACKUP

Esta diretamente relacionado aos requisitos de disponibilidade e segurança do projeto. A seguir os tipos de backups que podem ser aplicados :

  • Backup Completo
  • Backup Incremental
  • Backup Diferencial
  • Backup Espelhado
  • Backup Local
  • Backup Externo
  • Backup Remoto
  • Backup em Nuvem

Segurança e privacidade

Considerar os requisitos de segurança e privacidade no inicio do projeto. A seguir alguns itens a observar :

  • ajustes na política de privacidade na rede
  • ajustes na política de privacidade na internet
  • ajustes na política de privacidade nos computadores
  • melhorar a política de segurança de senha
  • adequar a política de criptografia de dados
  • considerar que ferramentas de front end suportem autenticação integrada com LDAP-Lightweight Directory Access Protocol
  • considerar utilizar AD-Active Directory

Auditoria

Certos projetos de Big Data teem requisitos de auditoria de uso que normalmente vem associados a questões de segurança e privacidade bastante restritos.

Normalmente o acesso a equipe e ETL-Extract Transform Load tem acesso restrito a certas tabelas e colunas em uma fonte de origem.

A auditoria certificará que os dados que não deveriam ser acessados não foram extraidos, no staging registra quais dados foram atualizados e na visualização o sistema registra quais fatos e/ou painéis foram acessados e por quem, quando e onde.

Governança de dados

** **** **

  • ajustes na política de privacidade na rede
  • ajustes na política de privacidade na internet
  • ajustes na política de privacidade nos computadores
  • melhorar a política de segurança de senha
  • adequar a política de criptografia de dados
  • considerar que ferramentas de front end suportem autenticação integrada com LDAP-Lightweight Directory Access Protocol
  • considerar utilizar AD-Active Directory

-

-

Ferramentas

  • Spark
  • Hadoop
  • Serão dados em fluxo (streaming) analisados em memória ?
  • Serão informações estáticas ?
  • Por dia, semana, meses os dados seão : [ ]em tempo real [ ]próximo ao tempo real [ ]Com baixa latência ?
  • Os dados em tempo serão : [ ]milessegundos [ ]segundos [ ]minutos [ ]horas ?
  • Qual a origem da velocidade ?
  • Qual a origem da velocidade ?





Fontes de estudo