SlideShare uma empresa Scribd logo
1 de 53
Shiny em Produção
Rodrigo Hartmann
Maio/2018
Gerente de Analytics
Antes....
Enquanto isso...
Em Novembro de 2016.....
O que faltava.....
Como?
Fonte: Rstudio.com
Pipeline de Analytics Com RStudio
• É um pacote que facilita a
construção de aplicativos web a
partir de códigos R;
• Combina a capacidade analítica
do R com a capacidade de visual
e interativa da Web;
Fonte: Rstudio.com
Aplicativos Shiny = documentos HTML:
• Layout potente e flexível;
• Permitem adição barras de navegação;
• Reativos por design;
• Aceitam objetos interativos;
• Podem ser estilizados;
• Podem ser hospedados on-line ou em
um servidor interno.
Permitem:
• Dashboards personalizáveis e
automaticamente atualizáveis;
• Apps com componentes manipuláveis;
• Funções diretamente no aplicativo.
Fonte: Rstudio.com
Shiny Server
Open Source
Wilson Tom Hanks
Máquina dedicada para Processos R e
Atualização de Planilhas
Desenvolvimento de um Ambiente
Computacional para Processos R e
Visualização de dados
Wilson Tom Hanks
Máquina dedicada para Processos R e
Atualização de Planilhas
Desenvolvimento de um Ambiente
Computacional para Processos R e
Visualização de dados
nov/16
jan/17
mai/17
Hardware
Servidor Físico
• Microsoft Hyper-V (Windows Server
2012)
Servidor Virtual
• 3 Processadores Virtuais (Intel Xeon
X5660 @ 2.80Ghz)
• 8 Gb RAM + 8Gb Swap
• 150 Gb de HD (50 Gb para o SO, e
100Gb para os projetos)
Ambiente
Sistema Operacional
• CentOS 7 64bi
Endereço para download do ISO:
http://mirror.ufscar.br/centos/7/isos/x86_64/Ce
ntOS-7-x86_64-DVD-1611.iso
Armazenamento
• Partição SO: 50Gb - Layout sugerido pelo
instalador (automático com LVM)
• Partição Dados: 100Gb - Será utilizada
somente após o término da instalação.
Alternativas para um SO Linux instalado na Máquina
Ao que interessa
Particionamento adicional
Criação de uma segunda partição no Sistema Operacional (Dados)
Particionamento adicional
Formata a segunda partição e cria o ponto de montagem
Configurar a montagem automática da partição
Adicionar no final do arquivo /etc/fstab:
Aplicação
Instalação das ferramentas de desenvolvimento
Instalação do R
Instalação o pacote Shiny no R
Servers
Baixando e instalando o Shiny-Server
Baixando e instalando o RStudio Server
Drive ODBC
Baixando e instalando o driver ODBC da Microsoft para Linux
Baixar o pacote do seguinte endereço:
https://www.microsoft.com/en-us/download/details.aspx?id=36437
Selecionar a opção RedHat6 / msodbcsql-11.0.2270.0.tar.gz
Drive ODBC
Edição do arquivo /etc/odbcinst.ini
Knit e Pacotes adicionais do Linux
Instalação do Haskell Platform e do Pandoc
Instalação de pacotes adicionais necessários para a instalação e compilação dos pacotes do R
Extra
Migração
Exportação da lista de pacotes instalados no servidor Shiny atual
Migração
Importação da lista de pacotes instalados no servidor Shiny novo
Executando migração
Usuários
Criação e adição de usuários
Permissionamento
Alguns Exemplos
Em Produção
• 6 Dashboards
• Acurácia de Modelos;
• Prevenção ao erro de planejamento em
produtos top;
• Elasticidade de Preços;
• Análise de Cupons e Ticket Médio;
• CRM;
• Call-Center.
• 1 App de Visualização de Curvas
• 3 App de Importação de dados
• 1 App de Exportação de dados
• 1 App de Survey
• 1 App de Controle de Atualização de Tabelas
50-60 Pessoas
Prós Contras
OpenSource Exige programação R
Boa Documentação Apps complexos = Códigos complexos
Estabilidade Não existe "Drag and Drop"
Fácil Instalação
Manutenção simples
Crescimento constatne
Custo zero (licença GNU)
Alta Performance
Estabilidade
Integrável
Sentimento de Inovação
Lançamento conínuo de novas soluções
Comunidade Ativa
Material online disponível
Estímulo à cultura Data-Driven
Bom motivo para aprender o R
Benefícios
Dicas e aleatoriedades
http://www.nytimes.com/interactive/2013/12/20/sunday-review/dialect-quiz-map.html?_r=1&
https://www.rstudio.com/products/shiny/shiny-user-showcase/
https://shiny.rstudio.com/gallery/
https://rstudio.github.io/shinydashboard/
http://gallery.htmlwidgets.org/
http://gallery.htmlwidgets.org/
Georeferenciamento Séries Temporais Tabelas
Customização Nível Hard
Onde Aprender?
Hadley Wickham
http://r4ds.had.co.nz/
Boas práticas e Linguagem Funcional
Rodrigo Hartmann
Email: rodrigohvh@gmail.com
Linkedin: https://br.linkedin.com/in/rodrigo-hartmann

Mais conteúdo relacionado

Semelhante a Shiny em Produção: Desenvolvimento de um Ambiente Computacional para Processos R e Visualização de dados

Desvendando o Microsoft Datazen
Desvendando o Microsoft DatazenDesvendando o Microsoft Datazen
Desvendando o Microsoft Datazenarthurjosemberg
 
Mini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOLMini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOLtarginosilveira
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasJose Papo, MSc
 
Construindo Aplicações PHP com Twelve-Factor App
Construindo Aplicações PHP com Twelve-Factor AppConstruindo Aplicações PHP com Twelve-Factor App
Construindo Aplicações PHP com Twelve-Factor AppMarcela Godoy Cruz
 
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaSeminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaDiego Cavalca
 
SharePoint Framework - Uma plataforma aberta e conectada
SharePoint Framework - Uma plataforma aberta e conectadaSharePoint Framework - Uma plataforma aberta e conectada
SharePoint Framework - Uma plataforma aberta e conectadaLambda3
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambMicrosoft Brasil
 
Adobe flash platform fabricio
Adobe flash platform fabricioAdobe flash platform fabricio
Adobe flash platform fabricioFabricioManzi
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Renato Groff
 
Palestra de Windows Server 2016
Palestra de Windows Server 2016Palestra de Windows Server 2016
Palestra de Windows Server 2016Fábio dos Reis
 
datazen_inicio_ao_fim_sat_df
datazen_inicio_ao_fim_sat_dfdatazen_inicio_ao_fim_sat_df
datazen_inicio_ao_fim_sat_dfarthurjosemberg
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indianahellequin
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Renato Groff
 
Adobe flash platform bem 2009
 Adobe flash platform bem 2009 Adobe flash platform bem 2009
Adobe flash platform bem 2009FabricioManzi
 
desvendando_o_microsoft_datazen
desvendando_o_microsoft_datazendesvendando_o_microsoft_datazen
desvendando_o_microsoft_datazenarthurjosemberg
 
Apostila php
Apostila phpApostila php
Apostila phpmurilocbs
 

Semelhante a Shiny em Produção: Desenvolvimento de um Ambiente Computacional para Processos R e Visualização de dados (20)

Desvendando o Microsoft Datazen
Desvendando o Microsoft DatazenDesvendando o Microsoft Datazen
Desvendando o Microsoft Datazen
 
Mini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOLMini-curso RubyOnRails CESOL
Mini-curso RubyOnRails CESOL
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e Arquiteturas
 
Construindo Aplicações PHP com Twelve-Factor App
Construindo Aplicações PHP com Twelve-Factor AppConstruindo Aplicações PHP com Twelve-Factor App
Construindo Aplicações PHP com Twelve-Factor App
 
SpugRIA
SpugRIASpugRIA
SpugRIA
 
Seminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec CafelândiaSeminário de Desenvolvimento Mobile - Etec Cafelândia
Seminário de Desenvolvimento Mobile - Etec Cafelândia
 
SharePoint Framework - Uma plataforma aberta e conectada
SharePoint Framework - Uma plataforma aberta e conectadaSharePoint Framework - Uma plataforma aberta e conectada
SharePoint Framework - Uma plataforma aberta e conectada
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcamb
 
Adobe flash platform fabricio
Adobe flash platform fabricioAdobe flash platform fabricio
Adobe flash platform fabricio
 
WP Composer
WP ComposerWP Composer
WP Composer
 
Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018Docker para Desenvolvedores - Developers-BR - Julho-2018
Docker para Desenvolvedores - Developers-BR - Julho-2018
 
Palestra de Windows Server 2016
Palestra de Windows Server 2016Palestra de Windows Server 2016
Palestra de Windows Server 2016
 
Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0
 
datazen_inicio_ao_fim_sat_df
datazen_inicio_ao_fim_sat_dfdatazen_inicio_ao_fim_sat_df
datazen_inicio_ao_fim_sat_df
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indiana
 
Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018Docker para Desenvolvedores - Developers-BR - Agosto-2018
Docker para Desenvolvedores - Developers-BR - Agosto-2018
 
Adobe flash platform bem 2009
 Adobe flash platform bem 2009 Adobe flash platform bem 2009
Adobe flash platform bem 2009
 
desvendando_o_microsoft_datazen
desvendando_o_microsoft_datazendesvendando_o_microsoft_datazen
desvendando_o_microsoft_datazen
 
Apostila php
Apostila phpApostila php
Apostila php
 
Apostila php
Apostila phpApostila php
Apostila php
 

Shiny em Produção: Desenvolvimento de um Ambiente Computacional para Processos R e Visualização de dados

Notas do Editor

  1. Atualizar
  2. Atualizar
  3. atualizar