Switch to: V12V11V10V9V8V7V6V5

RAM Temporary Objects

Valentina engine allow you create RAM-based databases, tables and even fields.

General advantages of RAM objects are:

  • faster than disk based objects at least with rate x10.
  • main data are not touched at all, so on crash of system we are safe.

RAM Temporary Database

You can create the whole database on the RAM. Such database not touch disk at all. All and any its volumes will be on RAM.

You may wish to use this, for example, if your application is connected to some remote VServer, you extract data by SELECT into VCursor and you want copy this data to the client side computer database. You can use both disk-based database or RAM-based database to be faster.

Note, that only VKERNEL.dll can create and manage databases. VClient.dll itself is not able produce databases on the client side. So we consider now a case when application is inited for both local and remote use.

RAM Temporary Table

Quite often you may want create a temporary table in the scope of some database. You can create it on disk, then it will be stored in the db.tmp volume of your database. Or you can create this temporary table just on RAM.

Note, that you can create RAM tables even if database is disk-based. But not reverse, you cannot crate disk based table in the RAM database.

You must be sure that this RAM table will be quite small, to fit available RAM on your computer. Otherwise you will get a lots of disk swapping and performance will be only worse.

RAM table itself can be small, but if you create a lots of such tables in the same time, then you also can easy eat a lots of RAM.

RAM Temporary Field

This is a very unique feature of Valentina Database!

It is possible because Valentina keeps table storage as vertical separate columns. So if a Table has fields f1, f2, f3 we can easy create field f4 for this table without any touch of the existed fields!

You can make this temporary field as on the disk (then it go to db.tmp volume), so on the RAM.