Page 1 of 1

In Memory Data Sources

PostPosted: Sat Mar 16, 2019 7:50 pm
by swingman
Hi all,

Is the actual data loaded into a 'In Memory Data Source' shared by all clients, or can you load different data into each client?

I have a complicated query that will only load a tiny subset of data at the time to stay fast and responsive, so different clients may look at different lists of records simultaneously...

Re: In Memory Data Sources

PostPosted: Sat Mar 16, 2019 10:09 pm
by rvanderburg
Its per client

Re: In Memory Data Sources

PostPosted: Mon Mar 18, 2019 12:18 am
by swingman
Great. Thanks for confirming.

I have now found more info here:

UX Pattern: Using In Memory Data in Servoy to Accelerate delivery
https://www.youtube.com/watch?v=_FS92nqXibk

I had missed the fact that Servoy has an in-memory database that you can connect to like any other database if you want to share in-memory data between clients....

I think the client will be impressed ;-) by what I have built combining postgreSQL windowing functions and Servoy in-Memory data...
It is crazy fast even though its doing running totals on up to 50,000 records...

Re: In Memory Data Sources

PostPosted: Mon Mar 18, 2019 3:08 pm
by sean
Hi Christian,

( Thanks for the webinar plug ;-) )

Yes you can create a mem table which is shared. It functions the same way as other shared data sources, using HSQLDB.
Only difference is that the schema must be recreated every time the server starts and then you probably want to seed it with data, usually done with a script, either by first-access lazy load, or by batch processor.

In developer you can have DBI files, and other data-bound constructs (forms, valuelists, etc) which will generate warnings on start-up, but then you can sync to DBI files to resolve and auto build the schema as well.