Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Beyond Prototypes:A Journey to The Production L...

OmaymaS
September 13, 2018

Beyond Prototypes:A Journey to The Production Land_EARL2018

Slides of a talk presented at EARL London 2018 (https://earlconf.com)

OmaymaS

September 13, 2018
Tweet

More Decks by OmaymaS

Other Decks in Technology

Transcript

  1. Web API Begin with the DATA PRODUCT in mind Web

    Application Reproducible Report Package Other
  2. Think of the DATA PRODUCT as an answer to a

    question Bridging the prototypes and production lands
  3. Q: What is the matching score of application X in

    job Y? A: Value returned from an endpoint (WEB API) Think of the DATA PRODUCT As an answer to a question
  4. Q: How does the daily activity of the subscribed companies

    look like ? A: Metrics shown and updated in a Dashboard Think of the DATA PRODUCT As an answer to a question
  5. Q: How do different segments respond to our recommendations ?

    A: Report/Presentation Think of the DATA PRODUCT As an answer to a question
  6. Docker (Commands to build an image) (Executable package) (Running instance

    of an image) Docker file Docker Image Docker Container
  7. - Build this Dockerfile! - Install R - Install system

    packages - Install shiny server - Install R packages - Expose port - Run Versus
  8. - Run this docker image! - Install R - Install

    system packages - Install shiny server - Install R packages - Expose port - Run Versus
  9. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  10. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install R How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  11. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install System Packages How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  12. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Install plumber How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  13. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Expose port How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  14. FROM rocker/r-base MAINTAINER Jeff Allen <[email protected]> RUN apt-get update -qq

    && apt-get install -y \ git-core \ libssl-dev \ libcurl4-gnutls-dev RUN install2.r plumber EXPOSE 8000 ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=8000)"] CMD ["/usr/local/lib/R/site-library/plumber/examples/04-mean-sum/plumber.R"] Run How does a Dockerfile look like? https://hub.docker.com/r/trestletech/plumber
  15. liftr --- title: "User Engagement Analysis" author: "Sara K." output:

    rmarkdown::html_document liftr: maintainer: "Sara K." email: "[email protected]" cran: - dplyr --- github.com/road2stat/liftr
  16. Begin with the DATA PRODUCT in mind Think of the

    DATA PRODUCT As an answer to a question Make the DATA PRODUCT Accessible and user friendly https://speakerdeck.com/omaymas