Lar Finanças Pessoais Hadoop Integração com R - dummies

Hadoop Integração com R - dummies

Índice:

Vídeo: RHadoop - Integrating R with Hadoop | How to Integrate R, Hadoop | R Programming Tutorial | Edureka 2025

Vídeo: RHadoop - Integrating R with Hadoop | How to Integrate R, Hadoop | R Programming Tutorial | Edureka 2025
Anonim

No início, grandes dados e R não eram amigos naturais. A programação R exige que todos os objetos sejam carregados na memória principal de uma única máquina. As limitações desta arquitetura são rapidamente percebidas quando grandes dados se tornam parte da equação.

Em contraste, sistemas de arquivos distribuídos, como Hadoop, estão faltando técnicas estatísticas fortes, mas são ideais para escalar operações e tarefas complexas. Soluções de dimensionamento vertical - exigindo investimentos em hardware de supercomputando caro - muitas vezes não podem competir com o retorno de custo-valor oferecido por clusters de hardware distribuídos e de mercadorias.

Para se adequar às limitações da memória R em memória, em uma única máquina, os cientistas de dados geralmente tiveram que restringir a análise a apenas um subconjunto dos dados de amostra disponíveis. Antes de uma integração mais profunda com o Hadoop, os programadores de linguagem R ofereceram uma estratégia de dimensionamento para superar os desafios em memória colocados por grandes conjuntos de dados em máquinas únicas.

Isto foi conseguido usando sistemas de passagem de mensagens e paginação. Esta técnica é capaz de facilitar o trabalho através de conjuntos de dados muito grandes para armazenar na memória principal simultaneamente; no entanto, sua abordagem de programação de baixo nível apresenta uma curva de aprendizado íngreme para aqueles que não estão familiarizados com paradigmas de programação paralela.

As abordagens alternativas buscam integrar as capacidades estatísticas da R com os clusters distribuídos da Hadoop de duas maneiras: interface com linguagens de consulta SQL e integração com Hadoop Streaming. Com o primeiro, o objetivo é aproveitar as plataformas de armazenamento de dados SQL existentes, como a Hive and Pig. Esses esquemas simplificam a programação do trabalho Hadoop usando instruções de estilo SQL para fornecer programação de alto nível para a realização de trabalhos estatísticos sobre dados Hadoop.

Para os programadores que desejam programar trabalhos MapReduce em idiomas (incluindo R) diferentes de Java, uma segunda opção é fazer uso da API de streaming do Hadoop. Os trabalhos MapReduce enviados pelo usuário sofrem transformações de dados com a ajuda de fluxos padrão e serialização UNIX, garantindo a entrada compatível com Java para o Hadoop - independentemente do idioma originalmente inserido pelo programador.

Os desenvolvedores continuam a explorar várias estratégias para alavancar a capacidade de computação distribuída do MapReduce e a capacidade de armazenamento quase infinita do HDFS de formas que podem ser exploradas por R.

A integração do Hadoop com R está em andamento, com ofertas disponíveis da IBM (Big R como parte do BigInsights) e Revolution Analytics (Revolution R Enterprise). Soluções de ponte que integram programação de alto nível e consultas de idiomas com Hadoop, como RHive e RHadoop, também estão disponíveis.

Fundamentalmente, cada sistema tem como objetivo fornecer as capacidades analíticas profundas do idioma R para conjuntos de dados muito maiores.

RHive

A estrutura RHive serve como uma ponte entre o idioma R e a colméia. A RHive entrega as ricas bibliotecas estatísticas e algoritmos de R aos dados armazenados no Hadoop, estendendo a linguagem de consulta semelhante a SQL da Hive (HiveQL) com funções específicas de R. Através das funções RHive, você pode usar o HiveQL para aplicar modelos estatísticos R aos dados em seu cluster Hadoop que você catalogou usando o Hive.

RHadoop

Outra estrutura de código aberto disponível para programadores R é o RHadoop, uma coleção de pacotes destinados a ajudar a gerenciar a distribuição e análise de dados com o Hadoop. Três pacotes de notas - rmr2, rhdfs e rhbase - fornecem a maioria das funcionalidades do RHadoop:

  • rmr2: O pacote rmr2 suporta a tradução do idioma R em trabalhos MapReduce compatíveis com Hadoop (produzindo um código MapReduce eficiente e de baixo nível do código R de nível superior).

  • rhdfs: O pacote rhdfs fornece uma API de linguagem R para gerenciamento de arquivos em lojas HDFS. Usando rhdfs, os usuários podem ler das lojas HDFS para um quadro de dados R (matriz) e, de forma semelhante, gravar os dados dessas matrizes R novamente no armazenamento HDFS.

  • rhbase: pacotes de rhbase também fornecem uma API de idioma R, mas seu objetivo na vida é lidar com o gerenciamento de banco de dados para lojas HBase, em vez de arquivos HDFS.

Revolution R

Revolution R (por Revolution Analytics) é uma oferta R comercial com suporte para integração R em sistemas distribuídos Hadoop. A Revolution R promete oferecer melhor desempenho, funcionalidade e usabilidade para R no Hadoop. Para fornecer análises profundas semelhantes à R, a Revolution R faz uso da biblioteca ScaleR da empresa - uma coleção de algoritmos de análise estatística desenvolvidos especificamente para grandes coleções de dados em grande escala.

O ScaleR visa entregar a execução rápida do código do programa R nos clusters Hadoop, permitindo que o desenvolvedor R se concentre exclusivamente em seus algoritmos estatísticos e não no MapReduce. Além disso, ele administra inúmeras tarefas de análise, como a preparação de dados, a visualização e testes estatísticos.

IBM BigInsights Big R

O Big R oferece integração de ponta a ponta entre o R e a oferta Hadoop da IBM, o BigInsights, permitindo que desenvolvedores R analise dados Hadoop. O objetivo é explorar os paradigmas de sintaxe e codificação de programação de R, garantindo que os dados operados permaneçam no HDFS. Os tipos de dados R servem como proxies para esses armazenamentos de dados, o que significa que os desenvolvedores R não precisam pensar em construções MapReduce de baixo nível ou em linguagens de script específicas do Hadoop (como Pig).

A tecnologia BigInsights Big R suporta múltiplas fontes de dados - incluindo arquivos planos, formatos de armazenamento HBase e Hive - enquanto fornece a execução paralela e particionada do código R no cluster Hadoop. Ele esconde muitas das complexidades nas estruturas HDFS e MapReduce subjacentes, permitindo que as funções Big R executem análises de dados abrangentes - em dados estruturados e não estruturados.

Finalmente, a escalabilidade do mecanismo estatístico da Big R permite aos desenvolvedores R fazer uso de técnicas estatísticas pré-definidas, bem como criar novos algoritmos próprios.

Hadoop Integração com R - dummies

Escolha dos editores

Noções básicas do arquivo de dados Flashback da Oracle 12c - dummies

Noções básicas do arquivo de dados Flashback da Oracle 12c - dummies

O Flashback Data Archive do oracle 12c é um mecanismo de banco de dados que permite que você para armazenar periodicamente ou indefinidamente todas as versões de linha em uma tabela ao longo da sua vida útil. Você pode então escolher uma hora para ver os dados como existia em um ponto específico. Esteja ciente de que o Flashback Data Archive é um recurso licenciado. ...

Noções básicas de clusters de aplicativos reais do Oracle 12c - manequins

Noções básicas de clusters de aplicativos reais do Oracle 12c - manequins

Se você visitou os sites da Oracle nos últimos 12 anos , você viu o byline de marketing: "Inquebrável. "Essa linha de tag refere-se ao recurso Real Application Clusters (RAC). Claro, muitos elementos estão envolvidos, mas o RAC tem o destaque. O RAC é a solução de clustering de banco de dados Oracle. Em certo sentido, funciona na teoria de que ...

Noções básicas de Redo Log Files no Oracle 12c - dummies

Noções básicas de Redo Log Files no Oracle 12c - dummies

Redo os arquivos de log armazenam as informações do buffer de log no banco de dados Oracle 12c. Eles são escritos pelo Log Writer (LGWR). Mais uma vez, você não pode ler esses arquivos binários sem a ajuda do software de banco de dados. Normalmente, os arquivos de reto de log são nomeados com a extensão. LOG ou. RDO. Pode ser qualquer coisa que você queira, ...

Escolha dos editores

São orgasmos ok durante a gravidez? - Dummies

São orgasmos ok durante a gravidez? - Dummies

As mulheres grávidas não só têm permissão para fazer sexo, mas muitas vezes o desejam. Mas é bom aproveitar a relação sexual com o ponto do orgasmo? Afinal, os orgasmos são nada mais do que contrações - e as pessoas sugeriram que isso poderia desencadear mão-de-obra. Isso é apenas um mito. De fato, grávida ...

Alimentando a Multidão em uma Reunião Familiar - manequins

Alimentando a Multidão em uma Reunião Familiar - manequins

Cozinhando uma refeição para um grande grupo (reunião familiar ou de outra forma ) requer planejamento e resistência. Aqui está um guia útil para quantidades de alimentos e segurança alimentar, e conselhos sobre a organização de uma festa de potluck. Planejando para potlucks A forma mais comum de comestibles de grupo é uma festa de potluck - qual é a maneira mais barata e fácil de ...

Anatomia do Penis humano - dummies

Anatomia do Penis humano - dummies

Sabendo como as funções de um pénis podem fornecer uma visão útil do sexo e do corpo humano - se você quer entender o pénis e a anatomia masculina melhor ou aprender sobre isso pela primeira vez. Basicamente, um pênis é composto de três estruturas, que são feitas de um material esponjoso que pode preencher com sangue: ...

Escolha dos editores

Como lidar com outliers causados ​​por Forças externas - manequins

Como lidar com outliers causados ​​por Forças externas - manequins

Certifique-se de verificar atentamente os outliers antes eles influenciam sua análise preditiva. Os outliers podem distorcer a análise de dados e dados. Por exemplo, qualquer análise estatística feita com dados que deixa outliers no lugar acaba por desviar os meios e variâncias. Os outliers não controlados ou mal interpretados podem levar a conclusões falsas. Diga os seus dados que ...

Como criar um modelo de análise preditiva com regressão R - manequins

Como criar um modelo de análise preditiva com regressão R - manequins

Você deseja criar um preditivo modelo de análise que você pode avaliar usando resultados conhecidos. Para fazer isso, vamos dividir nosso conjunto de dados em dois conjuntos: um para treinar o modelo e outro para testar o modelo. Uma divisão 70/30 entre treinamento e testes de conjuntos de dados será suficiente. As próximas duas linhas de código ...

Como definir objetivos de negócios para um modelo de análise preditiva - dummies

Como definir objetivos de negócios para um modelo de análise preditiva - dummies

Um modelo de análise preditiva visa resolvendo um problema comercial ou realizando um resultado comercial desejado. Esses objetivos comerciais se tornam os objetivos do modelo. Conhecer aqueles garante o valor comercial do modelo que você constrói - o que não deve ser confundido com a precisão do modelo. Hipotéticamente, você pode construir um modelo preciso para ...