Velocis Beta-3.0 Database Server

In a nutshell, Velocis delivers all we expect of it.

Velocis is distributed on a CD, and it occupies approximately 10MB installed. The Linux (or UNIX) installation is accomplished in a few simple steps:

  • Mount the CD.

  • Extract the appropriate compressed tar file for your operating system (e.g., Red Hat Linux 6.0) into a directory of choice (e.g., /opt/velocis3.0).

  • Run the provided installation script.

  • Copy the configuration shell scripts into the desired locations (either ~/.cshrc, ~/.profiles or /etc/profile.d).

  • Modify certain initialization files (e.g., /catalog/velocis.ini and /bin/connect.ini) to set up the host-access identification.

Installation on Windows 95/98 or NT is similar, except for the use of winzip and install shield setup programs.

Starting Velocis

Centura Software provides a number of tools (most are available as C source code in the “examples” directory) to invoke, manage and communicate with the Velocis database engine. With the exception of the administrative tool (admin.exe under Windows and rdsadm under UNIX), all tools are available on all platforms. The most notable tools are:

  • rds: the velocis database server, which is started as a daemon process.

  • vping: an effective ping tool. It can be used to test the socket connection to rds.

  • rdsadm (Linux) and admin.exe (Windows): a command-line interface and a graphic user interface (respectively) for the creation of databases and user-access management. In addition, it is responsible for managing the archive and recovery processes.

  • rsql: a simple command-line-driven interface, which enables the user to establish one or more sessions and attach to one or more databases and interactively execute SQL commands.

  • sddlp: a Velocis SQL Schema compiler utility.

  • ddlproc: a Velocis non-SQL Schema compiler utility.

The steps necessary to start Velocis are as follows:

  • Execute the install script in the Velocis root directory (as superuser).

  • Configure the connect.ini and velocis.ini files located in the bin and catalog directories. This step is of extreme importance, since it establishes the linkage between the database server name (alias), a socket and a computer on the Internet.

  • Source the or rdshome.csh scripts located in the Velocis root directory.

  • Start (as superuser) the rds application server.

  • Start rdsadm (UNIX) or admin.exe (Windows) to set up your databases. Any user can start rdsadm; however, the tool is password-protected.

Although the steps above are rather simple to execute, they assume the user has some knowledge of Linux and networking. It would be nice if Centura Software used RPM to bundle the package. It would be even nicer if they were to perform the installation of the scripts automatically and provide a System V-equivalent Velocis init script (with start, stop and restart) capability.

Running Database Applications

If you have reached this point, you are in business. However, it is important to note that Velocis is a dual-mode database server. Since it operates internally as a hybrid-relational model (network and hierarchical database engine), one has to take care when creating databases. Two database structures are supported: database schemas for non-SQL applications (also referred to as native) and database schemas for SQL applications.

Both SQL and non-SQL databases are created by defining the schema in a text file, compiled using the utility sddlp for SQL databases and ddlproc for non-SQL databases. Database models are implemented at design time. Interestingly, the network database model can be implemented in database designs using the SQL Database Definition Language (DDL). This is done by using Velocis' CREATE JOIN statement to create a permanent, pointer-based join on the primary and foreign keys of selected SQL tables. This improves performance by eliminating the runtime need for indexes between tables. The ability to implement both network, relational or combined network/relational database models using either the SQL DDL or the non-SQL (C-based) DDL is a unique feature of Velocis. Adding to this flexibility, the SQL API and record-level C-API can both be embedded in applications and used to interact with databases created using either DDL.

Databases are registered either when compiled, by adding a parameter to the command line or via the rdsadm (or admin.exe) tools. These utilities are also invoked when adding or dropping users.