BOARD R Calculation Step

Sandil Bhikha
Sandil Bhikha Active Partner
Level 200: Building A Planning Solution in Board Level 100: Foundations of Building in Board First Anniversary First Comment
edited October 2022 in Platform

At this point, BOARD's software includes an R calculation step. This supposedly allows users to run R scripts on data extracted from BOARD, then read the results back into BOARD. Unfortunately, the server package used to connect BOARD to R, Rserve, is known to have several IP connectivity issues when used on Windows. The following links describe the issue in detail.

Bind Rserve() to IP address on Windows 
Tableau Community Forums

Rserve fails to set up connection

 
For the past few weeks I have been attempting to use this feature of BOARD, however simply ensuring a connection to R has been a challenge. Previously, only one BOARD developer has posted about this issue (Idea Details). The problem arises primarily due to the fact that Rserve, when run on a Windows daemon, is bound to the local IP address of the host machine(i.e., 127.0.0.1). BOARD's web application is in this case a 3rd party application that can only communicate with other software through a public IP. Rserve does not allow for a forced IP address when initialised. 

I pose the following questions to the community:
1) Have any BOARD developers been able to successfully implement the R calculation step? If so, was this done on a Windows or Linux machine?
2) Is the previous solution (Idea Details) a viable one, assuming most BOARD developers operate on a Windows subsystem?

Any advice or inputs on this matter would be greatly appreciated.

------------------------------
Sandil Bhikha
Board developer
ADAPT IT (PTY) LTD Partner
South Africa
------------------------------

Answers

  • Benedetta Salmeri
    edited October 2022
    Hi Sandil, 

    in response to your first question:
    • Have any BOARD developers been able to successfully implement the R calculation step? If so, was this done on a Windows or Linux machine?

    For testing purposes, we have set up a linux server (Ubuntu 22.04) on which we installed an R environment.  The server is accessible via public ip address via HTTP protocol only from the public ip addresses of the Board offices to allow internal teams to develop R code. To allow Board instances to run R code, the server is also made accessible via public ip on TCP port 6311 on which the Rserve daemon runs.

    ------------------------------
    Benedetta Salmeri
    Consultant
    Board Community
    Switzerland
    ------------------------------
    -------------------------------------------
  • Sandil Bhikha
    Sandil Bhikha Active Partner
    Level 200: Building A Planning Solution in Board Level 100: Foundations of Building in Board First Anniversary First Comment
    edited October 2022
    Hi Benedetta,

    Thanks for your response. 

    Have you got any advice with regards to setting up a similar "server" on a virtual machine? Specifically, how were you able to force Rserve to a public IP and how could I replicate this in a VM?

    My understanding is now that it would be possible to set up a VM to act as this "server" accessible by Board on my Windows machine (chrome), is this correct?

    ------------------------------
    Sandil Bhikha
    Board developer
    ADAPT IT (PTY) LTD Partner
    South Africa
    ------------------------------
    -------------------------------------------
  • Benedetta Salmeri
    edited November 2022
    Hi Sandil, 

    please find below the picture of the architecture we have set up for our testing purpose thanks to @Marco Gabaglio


    image

    Hope this helps!

    ------------------------------
    Benedetta Salmeri
    Consultant
    Board Community
    Switzerland
    ------------------------------
    -------------------------------------------