[datatable-help] Using data.table code in an interactive desktop application written in C# or Java
Melanie Bacou
mel at mbacou.com
Sun Apr 16 02:11:26 CEST 2017
Don,
In addition to Santosh's suggestion below, you could also read about
these 2:
- Rserve, a TCP/IP server that's often used to connect applications to
local R processes (e.g. Tableau uses Rserve). I've had good results with
Rserve in the past in a use-case similar to yours. I would just open a
socket to a running Rserve session preloaded with my custom R packages
and return only slices of data back to a web GUI.
- rJava (an R interface for Java) used for example in the StatET
Java-based IDE for R
Both options would allow you to keep your core data and business logic
in your current R package.
--Mel.
On 04/15/2017 12:28 AM, Santosh Srinivas wrote:
> Hi Don,
>
> I'm not sure if this will meet your performance expectations from the GUI.
>
> But, I am creating my GUI using HTML 5 stuff on Electron
> (https://github.com/electron/electron) which fires off calls to my
> OpenCPU (https://www.opencpu.org/) service that does most of backend
> R related work.
>
> I'm guessing that you could run Java applets using a similar setup.
>
> Thank you.
> Santosh
>
>
> On Sat, Apr 15, 2017 at 8:49 AM, Don Brady <dbrady at pobox.com
> <mailto:dbrady at pobox.com>> wrote:
>
> I have written a largish R data.table application for back-testing
> option trading strategies. It involves large quantities of
> option price data, all of which is stored in data.tables. As an R
> application, it works fast and well, thanks to the strengths of
> data.table. There are about 10,000 lines of R code, almost all of
> which are calling data.table functions.
>
> However, I want to take some of the code and create a snappy
> desktop GUI application for quick interactive option portfolio and
> trade evaluation. Ordinarily I would do this in Java or C#.
> However, since the prior code is all written using data.table
> calls, it would be ideal if I could continue to use.table.
>
> I tried Shiny and I got a shiny app. written and working, that
> includes lots of use of data.table and my existing tables.
> However, it is too slow. I need lightning fast for the GUI which
> is to be exploratory.
>
> So, after this background, my question is, is there any way to
> call data.table from a C# or Java desktop GUI app. without
> involving R? Assuming the answer is No, what would be another
> in-memory database implementation that can be called from C# or
> Java, that would be similar enough to data.table that I would be
> able to migrate over my data.table code over. It is obviously no
> problem to convert over the data, since that is just columns. But
> my concern is to minimize the effort in converting over the code,
> which is now, of course, full of data-table joins, merges,
> selects, renames, updates etc., all currently written in
> data.table's very unique syntax (currently coded in R function
> calls). Is there some in-memory database package that would
> support a similar syntax to facilitate converting the code from
> data.table?
>
> Thank you very much, I should add, for the wonderful data.table
> package! I certainly will not abandon it. I am just looking for
> something somewhat compatible with its style, for a limited
> special purpose.
>
> Don
>
>
>
> _______________________________________________
> datatable-help mailing list
> datatable-help at lists.r-forge.r-project.org
> <mailto:datatable-help at lists.r-forge.r-project.org>
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
> <https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help>
>
>
>
>
> _______________________________________________
> datatable-help mailing list
> datatable-help at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
More information about the datatable-help
mailing list