Installation

From STLab

Jump to: navigation, search
./autogen.sh
./configure
make
CFLAGS="-O -m64 -mmacosx-version-min=10.4"
export CFLAGS
./configure
make


  • After the build is complete you can install the program to a particular directory with the command:
sudo make install prefix=/yourDir/Virtuoso

If need for more install details see: http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSMake#Installation

Then, install virtuoso (warining, you need the super user rights).

  • At the end of the installation go in the virtuoso_installation_Dir/bin and move isql to isql-v (mv isql isql-v)
  • When installation is completed before running the program it is necessary to setup the virtuoso.ini file. The most important parameters are:

-- NumberOfBuffers; this controls the amount of RAM used by Virtuoso to cache database files. This has a critical performance impact and thus the value should be fairly high for large databases. Exceeding physical memory in this setting will have a significant negative impact. For a database-only server about 65% of available RAM (2/3 or 3/5 of SysRAM.) could be configured for database buffers. Please also note that each buffer takes about 8700 Bytes (or roughly 9KB).
Example 32G SysRAM: 32000000000*2/3/8700 = 2452107

-- MaxCheckPointRemap; this specifies how many pages Virtuoso is allowed to remap. Remapping means that pages can consume the space of two actual pages until checkpoint. For large database it is necessary 1/4 of database size (N.B. the size is for pages, 8700 Bytes per page).
Example 43G of DB: 43000000000/4/8700 = 1235632

-- MaxDirtyBuffers; it is max the 60% of NumberOfBuffers.
Example: 2452107*0.6 = 1471264

-- Striping; stripe storage on all available disks. This is useful only when the database can be spltited among hard-disk devices.

-- O_DIRECT; this may be useful if a large fraction of RAM is configured as database buffers. If this is on, the file system cache will not grow at the expense of the database process, for example it is less likely to swap out memory that Virtuoso uses for its own database buffers.

-- CompileProceduresOnStartup; setting this to 0 will speed up virtuoso startup, because stored procedures will not be loaded until the first time they are called.

-- FDsPerFile; number of file descriptors per file to be obtained from OS. This parameter only effects databases that use striping. Having multiple FDs per file means that as many concurrent I/O operations may simultaneously be pending per file. This allows more flexibility for the OS to schedule the operations, potentially improving file I/O throughput.

-- ServerThreads; max number of threads used in the server, should be set close to the number of concurrent connections if heavy usage is expected. A value of 100 should work on most systems.

-- ServerThreadSize; stack size of thread used for reading client messages and accepting connections.(default : 50 000 bytes)

-- MainThreadSize; stack size of the main thread (default : 100 000 bytes)

-- FutureThreadSize; stack size of worker threads. This is the stack size for serving any client SQL statements or HTTP requests. This can be increased if the application uses recursive stored procedures or links in external code needing a large stack. (default 100 000 bytes)

-- ThreadCleanupInterval; the interval in minutes (default : 0) after which threads in the thread pool should be released.

-- ThreadThreshold; the maximum number of threads (default : 10) to leave in the thread queue after thread clean-up interval has expired.

-- MaxQueryCostEstimationTime; this setting is used to limit the estimate time cost of the query to certain number of seconds, the default is no limit.

-- MaxQueryExecutionTime; this setting is used to set the transaction execution timeout to certain limit in number of seconds, the default is no limit.

-- ResourcesCleanupInterval; the interval in minutes (default : 0) after which allocated resources will be flushed..

-- FreeTextBatchSize; this is the amount of text data processed in one batch of the free-text index when doing a batch update or non-incrementally reindexing the data. Default : 10,000,000

-- RdfFreeTextRulesSize; the size of hash to control rdf free text index. 10 or more

-- IndexTreeMaps; Size of index tree maps, larger is better for speed but consume memory, in lite is 2 in 'normal' mode is 256 by default. (2 <-> 1024)

-- ResultSetMaxRows; this setting is used to limit the number of the rows in the result. Sometimes adjusting the value of this parameter helps to prevent D.O.S attack


-- N.B. SingleCPU; This is a Win32 specific option that forces Virtuoso to only run on one CPU in a multiprocessor environment.

see the example of Virtuoso config file file. For more details about parameters see: http://docs.openlinksw.com/virtuoso/dbadm.html#VIRTINI and http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtConfigScale

  • To run Virtuoso go in the virtuso_installation_Dir/bin and type:
nohup ./virtuoso-t -f +configfile installation_directory/var/lib/virtuoso/db/virtuoso.ini &
  • Now the server is on line at the following address: localhost:PORT/ (port and localhost are specified in the virtuoso configuration file). The first access is given by:
Log in as administrator
pw=dba user=dba
  • Are useful to install from inside virtuoso the following packages:
    • rdf_mappers
    • Wiki
    • iSPARQL
    • dbpedia_dav.vad (this is in /tools/add_packages of wit)
    • ec2exts_dav.vad (this is in /tools/add_packages of wit)

to install a package go in the System Admin -> Packages page of virtuoso conductor browser.

Personal tools