Buscar

BigData

Prévia do material em texto

Primeiro, vamos falar sobre a Big Data Platform do Google. Então, por que você deveria usar o Google para uma grande análise de dados? O Google Cloud Platform fornece uma ampla gama de ferramentas e serviços que podem ser integrados em sua grande estratégia de processamento de dados. Essas ferramentas podem ser integradas juntas. Eles exigem pouca ou nenhuma administração, eles são projetados para executar uma escala do Google em nosso seguro e confiável. O Big Data Tools do Google pode transformar a maneira como você analisa dados de negócios e cria aplicativos inovadores e ajuda seu cliente e sua empresa. Sua aplicação pode ser desenvolvida mais rapidamente. Você pode analisar dados em tempo real e integrar capacidades de aprendizado de máquinas poderosas em seus sistemas.
A Plataforma de Dados Big Cloud do Google inclui vários serviços que o ajudam a coletar, ingerir e analisar seus dados. Estes incluem o Google BigQuery, Google Cloud Pub Pub / Sub, Google Cloud Dataflow, Google Cloud Dataproc e Google Cloud Datalab. Cada um desses serviços é discutido neste módulo. Cada serviço Big Data é totalmente gerenciado e requer NoOps. Cada um desses serviços pode desempenhar um papel importante em seus aplicativos de processamento Big Data. Vamos olhar para eles individualmente. O BigQuery é o armazenamento de dados de análise, custo baixo e analítico totalmente gerenciado do Google petabyte. Com o BigQuery, não há infraestrutura para administrar ou administrar. Você pode analisar grandes conjuntos de dados em segundos, permitindo a criação de aplicativos interativos em tempo real. Analisar dados é simples, pois você usa a mesma sintaxe de consulta SQL que você já conhece ao consultar grandes conjuntos de dados de consulta. O BigQuery fornece provisões de hardware e escalas para fazer suas consultas rapidamente. Não há alavancas para puxar ou para girar, apenas funciona.
O BigQuery é executado na enorme infraestrutura do Google. Existe armazenamento praticamente ilimitado disponível, o armazenamento é usado para calcular nós em uma rede petabit incrivelmente rápida. O BigQuery alocará milhares de nós de processamento para sua consulta, se necessário, para que ele seja feito rapidamente.
Não há custos de pagamento ou de provisionamento prévios, você só pagará a quantidade de dados armazenados em dois centavos por gigabyte ou menos. Além disso, você paga a quantidade de dados processados, atualmente com a taxa de US $ 5 por terabyte, com um terabyte grátis por mês.
As tecnologias Shine são um ótimo estudo de caso para o poder do BigQuery.
 O BigQuery forneceu um sistema fácil de usar com uma curta curva de aprendizado que era poderosa o suficiente para lidar com qualquer grande carga de processamento de dados. Com o BigQuery, eles conseguiram analisar conjuntos de dados com bilhões de linhas usando consultas complexas a uma taxa consistente de apenas 20 a 25 segundos.
Cloud Pub / Sub é o sistema de mensagens assíncronas escalável do Google.
Com Pub / Sub você começa criando tópicos. Os tópicos podem ter qualquer número de editores que enviam mensagens e tópicos podem ter qualquer número de assinantes lendo mensagens. Pub / Sub é confiável, escrevendo mensagens em várias regiões para tolerância a falhas e garantindo que cada mensagem seja entregue. Pub / Sub pode lidar com o volume na escala do Google e é capaz de lidar com mais de um milhão de mensagens por segundo. Pub / Sub tem integração simples com o Google App Engine, BigQuery e Cloud Dataflow permitindo que as mensagens sejam processadas e analisadas em tempo real. Existem vários casos de uso para Pub / Sub, que podem ser usados ​​para coletar dados de dispositivos e sensores IoT. Você pode enviar dados de marketing e vendas de qualquer fonte em Pub / Sub, pode ser implementar notificações push em seus aplicativos em nuvem. Ele pode ser usado como uma fila de processamento assíncrona em diferentes aplicativos.
 O Google Cloud Dataflow é usado para criar pipelines de processamento de dados. O fluxo de dados fornece duas coisas, primeiro, há uma estrutura de programação de código aberto para a construção de aplicativos de transformação de dados. Esta estrutura atualmente suporta dutos de dados escritos em Java ou Python.
Em segundo lugar, o Cloud Data Flow é um ambiente completamente gerenciado para executar os trabalhos que você programa. As máquinas virtuais Compute Engine são criadas automaticamente para executar seus trabalhos e desativadas quando o trabalho estiver concluído. O fluxo de dados monitora automaticamente trabalhos, divide o trabalho em máquinas e reafectará o trabalho se determinadas máquinas se atrasarem. Você não precisa se preocupar com a configuração de clusters ou detalhes da máquina.
O Google Cloud Dataflow se integra facilmente com muitos outros serviços GCP. Os dados podem ser lidos ou escritos em Cloud Storage, Bigtable, Pub / Sub ou BigQuery. Além disso, usando os SDK de Java ou Python de código aberto, você pode criar fontes de dados personalizadas e sincronizar. O fluxo de dados pode ser usado para lote, extrair, transformar e carregar tarefas. Ele pode ser usado para transmitir dados de Pub / Sub para BigQuery, ou pode ser usado como um sistema de orquestração para mover dados entre diferentes serviços.
O Google Cloud Dataproc oferece um serviço completamente gerenciado para criação de aglomerados Hadoop e Spark. Você pode usá-lo para executar seus trabalhos existentes de Hadoop, Spark, Hive e Porco no GCP.
O Dataproc se integra facilmente com Cloud Storage, Bigtable e Cloud SQL para análise de dados.
Configurar clusters. O uso de Cloud Dataproc, Hadoop e Flocos de faísca pode ser criado em menos de alguns minutos. As máquinas dentro do cluster são faturadas por minuto, não por hora. Dataproc executa seus trabalhos em máquinas virtuais Compute Engine. Quando você tem um trabalho, crie o cluster para executá-lo e desligue tudo quando terminar, você só paga os minutos que as máquinas estavam executando. Clusters podem até ser redimensionados enquanto os trabalhos estão em execução. O Google Cloud SDK e RESTful APIs fornecem controle programático sobre clusters e seus trabalhos. Os clientes que já investiram no Hadoop podem facilmente migrar suas cargas de trabalho para o GCP usando Cloud Dataproc. 
Dataproc liberta você de ter que manter sua própria infraestrutura. Você pode armazenar seus dados no armazenamento em nuvem, em seguida, gire um cluster Hadoop usando Dataproc em alguns minutos. Depois que seu trabalho é executado, a liderança para o cluster imediatamente. 
Cloud Datalab é uma poderosa ferramenta interativa criada para explorar, analisar e visualizar dados no Google Cloud Platform. O Datalab suporta uma mistura de Python, SQL, JavaScript e Mark Up, que permite aos cientistas de dados colaborar em grandes modelos de modelos de análise de dados e modelos de aprendizagem de máquinas. O Datalab pode basear-se no projeto Open Source Jupyter, que é um spin off do IPython. Isso permite que você use um grande número de pacotes existentes para estatísticas, aprendizado de máquina e análise de dados. 
Além disso, existem muitos cadernos IPython publicados e uma comunidade IPython ativa para ajudá-lo a aprender. Cloud Datalab atualmente oferece suporte a Python, SQL e JavaScript para o usuário do BigQuery encontrar funções. 
Cloud Datalab combina código, documentação, resultados e visualizações em um formato de caderno intuitivo. Não há cobrança adicional para Cloud Datalab. Você só paga pelos recursos da nuvem que você usa, que consistem em um aplicativo do App Engine BigQuery e quaisquer recursos adicionais que você decidir usar, como o armazenamento em nuvem.
Agora vamos falar sobre aprendizado de máquina. A Plataforma Google Cloud Machine Inclui vários serviços para ajudar seu aplicativo a ver, ouvir e entender o mundo ao seu redor. Isso inclui Google Cloud Machine Learning, Vision API, Speech API e Translate API. Cada um desses serviços é discutido neste módulo. O Google oferece uma plataforma deaprendizado de máquina completa usada para construir modelos de aprendizado de máquina, executar esses modelos e integrar a aprendizagem de máquinas em suas aplicações. Muitos dos modelos internos de aprendizagem de máquinas do Google usaram um framework de aprendizado de máquina chamado TensorFlow. 
TensorFlow foi originalmente criado no Google, mas foi lançado como um produto de código aberto. O TensorFlow não é específico da plataforma de nuvem do Google e será executado em qualquer lugar mesmo em sua própria máquina de desenvolvimento. Ele é usado para tornar os modelos de programação de máquinas mais fáceis. Para executar modelos TensorFlow no GCP, você pode usar o Google Cloud ML. O Cloud ML é um novo serviço totalmente não gerenciado para executar os modelos TensorFlow. Ele fornece uma execução mais rápida e treinamento mais preciso para os modelos que você cria.
O Google também fornece uma série de serviços de aprendizagem de máquinas pré-treinados que você pode pesquisar usando sua aplicação imediatamente, incluindo serviços de visão, voz e tradução, juntamente com outros.
Casos de uso para aprendizagem de máquinas são vastos. Podemos usar a aprendizagem de máquinas para nos ajudar a obter novos clientes ou a manter nossos clientes existentes. O aprendizado de máquina pode ser usado para prever demanda por produtos. Os motores de recomendação geralmente usam modelos de aprendizado de máquina para prever com mais precisão o que um cliente gostaria de comprar. O aprendizado de máquina pode ser usado para detecção de fraude. A Cloud Vision API pode ser usada para determinar se uma imagem carregada possui conteúdo impróprio. Podemos usar modelos de aprendizado de máquina para analisar tweets e logs e mensagens. A aprendizagem de máquinas é um campo dinâmico em ciência da computação e novas capacidades e casos de uso estão acontecendo o tempo todo. O Google Vision API é usado para análise de imagens. Pode classificar imagens em categorias. Pode detectar objetos e faces individuais dentro de imagens. Pode encontrar e ler a palavra impressa contida nas imagens. Você pode criar metadados no seu catálogo de imagens. Conteúdo ofensivo moderado ou permitir novos cenários de marketing através da análise do sentimento da imagem.
As imagens podem ser analisadas quando carregadas em um pedido ou você pode integrar a Vision API com imagens armazenadas no Google Cloud Storage.
O Google Cloud Speech API permite aos desenvolvedores converter áudio para texto.
A API reconhece mais de 80 idiomas e variantes para suportar sua base de usuários global. Você pode traduzir o texto do ditador do usuário para o microfone de um aplicativo, habilitar comando e controle através de voz ou transcrever arquivos de áudio entre muitos outros casos usados.
Você pode reconhecer o áudio carregado na solicitação e se integrar ao seu armazenamento de áudio no Google Cloud Storage.
O Google Translate API fornece uma interface programática simples para traduzir texto de um idioma para outro. Traduzir API suporta dezenas de idiomas. Você pode até usá-lo para detecção de idioma se o idioma original for desconhecido.
Translate API é altamente responsivo e rápido para que as aplicações possam se integrar com o Translate API para traduções em tempo real. Pode ser usado por aplicativos escritos em vários programas diferentes em idiomas. Você pode vê-lo em ação, se quiser. Basta apontar seu navegador Chrome para um site em outro idioma e ele irá perguntar se você quer que o site seja traduzido. Por exemplo, se você é um falante de inglês, vá para yahoo.fr, você será solicitado a traduzir este site.
Você pode ver o poder da aprendizagem em máquina e da API de Aprendizado de Máquinas do Google e de muitas aplicações que gostamos de usar. Se você não está pronto, escolha o Google Translate no seu celular. Você pode apontar a câmera para o texto em um idioma e instantaneamente o traduz para outro.
O reconhecimento de fala é usado quando você diz, Ok Google, no seu telefone Android. O reconhecimento de imagem é usado para categorizar suas fotos no Google Fotos. Esperemos que em breve nossos carros não tenham volantes, e nós leremos as notícias, pois o Google nos leva a trabalhar.
Nesta demonstração, vou mostrar-lhe como começar a usar o Google Big Query. O Big Query é a solução de data warehousing e análise de dados do Google. É extremamente expansível, acessível, fácil de usar e fácil de começar. Vejamos como isso funciona. Então, do Google Cloud Platform Console, no menu de produtos e serviços, vou me deslocar para a grande seção de dados e escolher o grande número.
Big quary fornece duas características principais. Um deles é o de um data warehouse onde podemos armazenar dados. Podemos armazenar muitos terabytes ou petabytes de dados, se precisarmos. Uma vez que armazenamos nossos dados, podemos extrair facilmente os dados e analisá-lo usando a mesma declaração de seleção SQL que já conhecemos. Se eu quisesse armazenar dados no BigQuery dentro de um projeto, eu teria que primeiro criar um conjunto de dados. Então, para fazer isso, eu iria bater nesta lista aqui e dizer, Criar Dataset.
E vamos chamá-lo de meu primeiro conjunto de dados. Posso especificar um local do conjunto de dados se quiser. E eu também poderia especificar uma expiração se eu precisasse. Para começar, vamos apenas criar um conjunto de dados.
Agora, uma vez que eu tenho um conjunto de dados, podemos adicionar tabelas a ele. Então, novamente, agora a partir da seção de conjunto de dados da exibição de árvore. Vou selecionar criar uma nova tabela. E aqui é onde fica fácil. Para importar dados para o Big Query, eu realmente tenho que fazer é obter meus dados em um arquivo de texto. E depois carregá-lo. Observe quando eu quero carregar dados, eu especifico um local. Isso pode ser um upload de arquivos, ou se tivermos mais dados, também podemos usar uma localização do Google Cloud Storage ou do Google Drive.
Também precisa especificar o formato do arquivo.
E note que são suportados vários formatos de arquivos diferentes
CSV é provavelmente o mais fácil. Se eu tiver meus dados em um banco de dados relacional ou em alguma outra fonte de dados, tudo o que preciso fazer é exportá-lo como arquivos CSV, então eu posso importá-lo facilmente para o BigQuery. Eu também posso usar JSON como um formato de texto ou se eu tiver arquivos Avro em um sistema Hadoop, eu também poderia escolher isso. Mas, novamente, é super fácil, não é muito novo para aprender, basta exportar seus dados para um formato de texto e carregado para uma grande consulta. A grande consulta cuida de todos os detalhes de armazenamento para você, não há limite para a quantidade de dados que você pode armazenar na grande consulta e é muito, muito rentável. A grande consulta armazena seus dados em apenas dois centavos por mordida de giga por mês. E se você deixar uma tabela no BigQuery por mais de 90 dias, eles caem automaticamente esse preço pela metade. Portanto, é uma solução de armazenamento de dados extremamente acessível. Uma vez que eu tenho meus dados no BigQuery, então tudo o que tenho a fazer é escrever instruções de seleção SQL padrão para extrair esses dados. O Google fornece alguns conjuntos de dados públicos, que facilitam a aprendizagem de como usar uma grande consulta. Observe aqui que existe um conjunto de dados chamado grande consulta de dados públicos, nomes dos EUA. E dentro desse conjunto de dados é uma tabela. EUA _1910_2013. Se eu selecionar essa tabela, aqui mostra-me os campos que estão contidos nessa tabela. Então observe que há campo de estado, gênero e ano, e nome, e o número de vezes que esses nomes foram repetidos. Então, digamos que eu quero escrever uma consulta para extrair alguns dados dessa tabela Direita, então, muito simplesmente na UI, eu posso pressionar o botão Criar Tabela, e já preparei a consulta e coloquei na área de transferência. Mas vamos executá-lo. E se você conhece o SQL, isso deve parecer familiar. Então, vamos selecionar Nome. E então vamos resumir onúmero de ocorrências de cada nome. E vamos alias com o nome do campo, a contagem de nomes. E esta é a tabela que estamos consultando. Esse é o público, essa é essa tabela nesse conjunto de dados públicos. Estamos apenas preocupados com nomes femininos, e nós os agruparemos pelo nome. E então nós os ordenaremos Por contagem de nomes em ordem decrescente. E vamos limitar isso, digamos que vamos limitar isso a dez resultados. Então esse deve ser o top ten
Nomes femininos nos Estados Unidos entre os anos 1910 e 2013.
O número de ocorrências de cada um. Então, agora, esse é nosso aviso de consulta aqui no lado é uma pequena caixa de verificação verde. A caixa de seleção nos permitirá validar a consulta, então vamos clicar nisso e nos informa que a consulta é válida e também que essa consulta processará 99,9 megabytes de dados quando esta for executada. Então, vamos clicar em executar e ver quanto tempo leva, e isso retorna nossos resultados. Então, Mary foi o nome mais popular para as fêmeas naquele período de datas seguido de Patricia e [INAUDIBLE]. Vamos executar uma consulta que contenha um pouco mais de dados. Novamente, preparei a consulta. Deixe-me colar isso na janela. Ele irá acertar a caixa de seleção verde novamente.
Para validar a consulta. Então, ele diz que esta consulta é válida. E desta vez vamos processar 416 gigabytes de dados. Agora vamos dar uma olhada na consulta. Então, estamos selecionando o idioma em soma das visualizações. Mas desta vez, estamos usando alguns dados da Wikipedia. Então note que há outro projeto com algumas amostras. E o nome da tabela é Wiki 10 B. Bem, 10 B representa 10 bilhões. Esta é uma tabela com 10 bilhões de linhas. Quando executamos este procedimento, vamos processar 416 gigabytes de dados. Veremos o quão rápido isso 
E vai correr. Eu acredito no último período em que processamos cerca de 100 megabytes de dados. Então, novamente, vamos executar isso, então corremos essa consulta e notamos aqui, sob os resultados da consulta, ele disse que demorou 2,2 segundos para ser concluído. No entanto, observe aqui que saiu do dinheiro. Então, essa consulta já foi executada. E foi entregue de uma sentença de resultado já foi armazenada em cache. Agora, no Big Query, se você executar uma consulta e você retorna resultados que já foram armazenados em cache, não há cobrança por essa consulta. Mas isso não está realmente nos dando um resultado exato. Quanto ao tempo necessário para processar 416 gigabytes de dados. Então, vamos clicar neste botão chamado Mostrar Opções e vamos desmarcar Usar Resultados em Cache. 7: 19 E então vamos esconder as opções e executar essa consulta novamente. Então, vamos ver quanto tempo essa consulta leva para ser executada.
Sem usar o cache, assim como foi.
Então, eu processo 416 gigabytes de dados em 10 bilhões de linhas. E levou apenas 6,2 segundos para fazer isso. 7: 46 Agora vamos fazer um pouco mais difícil, eu sei que há uma outra tabela da Wikipedia, mas não com 10 bilhões de linhas, mas com 100 bilhões de linhas. Então, vamos alterar a consulta para consultar essa tabela e agora observe essa hora.
Quando a consulta é executada, vamos processar quatro terabytes de dados. Em um conjunto de dados com 100 bilhões de linhas, e vamos clicar em Mostrar opções aqui novamente, e nós nos certificaremos de que os Resultados de cache usados ​​foram desmarcados. E vamos executar a consulta. 8: 25 Por aqui, está me dizendo o quanto a consulta vai ser executada. Então, apenas assista e veja quanto tempo leva para processar quatro terabytes de dados dentro de cem bilhões de linhas usando a grande consulta 8: 51. É assim, 26 Seis segundos para processar essa quantidade de dados. Isso é incrivelmente rápido, e isso é de um sistema que não é completamente oferecido pelo Google. Então espero que tenha gostado da minha demonstração na grande consulta. Lembre-se com a grande consulta que você pode armazenar Terabytes, mesmo petabyte de dados e, em seguida, você pode analisar esses dados em apenas alguns segundos, que são declarações seletivas simples que você já conhece se você é um programador de banco de dados relacional. Obrigado por visualizar esta demo.

Continue navegando