Runtime Revolution
 
Articles Other News


Introducing Valentina 3

by Lynn Fredricks

 

Special Offer: Valentina Advanced 3 for Revolution lets you build local database solutions with Revolution and Valentina on Windows and MacOS X. In May 2007, you can add the Linux version (usually $100 more) at no additional cost! Just use the coupon code VALLINFREE in the box at the foot of the checkout screen when ordering.

Valentina 3 is the most comprehensive upgrade to Paradigma Software's ultra-fast database in almost two years. With direct, native support of Revolution - both as a bridged external and also within the native Revolution DB API, Valentina 3 offers tight integration with your favorite cross-platform development environment. If you are already using Valentina 2 to deploy your database driven solutions, you will be happy to know that the database format hasn't changed: you can test with Valentina 3 without having to go through a time consuming file format conversion.

Before going into the new features of Valentina 3 - why use a database, let alone Valentina 3, for storing your critical business data? If you haven't considered this before, read the next section Building Applications.

Building Applications

Revolution lets you import and repurpose stacks built with yesterday's xTalk products. If you came to Revolution by way of another xTalk product, you may have utilized the stack of cards paradigm to create a database of cards. It is a fast and easy solution but not without drawbacks. Segregate your data and dramatically limit how the data is accessed, and its less likely an application error or disk crash will corrupt your data. Many solution providers who have used Microsoft Access over the years for building database applications have long separated user interface projects from data projects for this very reason. Revolution projects also aren't optimized for speed under these conditions, whereas a database is - especially true for Valentina, which is optimized for hundreds of thousands of records. You will notice the speed of Valentina with smaller databases than this; also true - you notice how poorly other database management solutions handle large databases, let alone searches across hundreds of thousands of cards. And Valentina isn't just another database - it's a database designed to outpace all other databases. Valentina 3 improves on the already fast Valentina 2.

Valentina: A Database to Love

Valentina 3 is the latest iteration of Valentina that supports Revolution. Since version 1, Valentina has been a favorite of cross-platform database developers because it utilizes advanced techniques to increase speed as a data store grows. This performance is achieved by not only highly optimizing search techniques but also in a physical sense - you can achieve more with fewer tables and also with smaller (on your hard disk) tables than most commercial databases. In a custom client-server solution, you can also decide if database logic is executed locally - or on the server before the data is returned to you.

New Valentina 3 Core Technology

Valentina 3 adds several new features that make database computing with Valentina smarter and faster. Three things not only represent advanced features on their own but also when used together give you incredible control over your data store: Stored Procedures, Triggers and Views.

Stored Procedures. Stored Procedures is logic stored inside a database and works on both local and remote (server-side) databases. You can think of these like a library of custom functions.

Triggers. Triggers are events that can be launched automatically before or after insertion, updating or deletion processes occur as a part of an SQL statement.

Views. Views are a kind of virtual table based on the result of a query. Because it can be based on the result of a query, a View can always show a customized snapshot of data. One example might be a View that always shows a snapshot of the top five sales regions by total over the last 30 days.

Back Up. A new command allows a database to be backed up and saved with a timestamp, even when the database is currently running. You could have previously come up with a solution in Revolution to do this - now its simply another SQL command.

New Operating System Support

Valentina 3 introduces Linux support across the product line: Valentina for Revolution, Valentina Embedded Server and Valentina Office Server. Valentina for Revolution Linux supports the same versions of Linux as Revolution, however Paradigma is also officially providing support for Ubuntu 7.x. When communicating with a server version of Valentina across a network, it doesn't matter what sort of client either - you can query a Windows version of Office Server from a Revolution application running on a Linux desktop.

Valentina 3 solutions running under MacOS X 10.4 and higher are also much slimmer, thanks to close cooperation with Apple engineers. Previously, the Unicode component used in the Mac OS X operating system was closed off to third party developers. As a result of close communication, Valentina can leverage the internal ICU libraries, allowing up to a 50% space savings.

Valentina 3 also supports all versions of Windows from Windows 2000 SP 4 through Vista (limited only by the hosted application).

There are several more improvements incorporated into Valentina 3 that you can discover on the Paradigma Software website, including specific enhancements to Valentina Office Server 3 - which includes server-side scripting via PHP and Ruby on Rails.

 
( ! ) Warning: include(/home/runrev/public_html/html/newsletter/may/issue26/sidebar.html): failed to open stream: Permission denied in /home/newslett/public_html/may/issue26/newsletter4.php on line 182
Call Stack
#TimeMemoryFunctionLocation
10.0001221112{main}( )../newsletter4.php:0

( ! ) Warning: include(): Failed opening '/home/runrev/public_html/html/newsletter/may/issue26/sidebar.html' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/newslett/public_html/may/issue26/newsletter4.php on line 182
Call Stack
#TimeMemoryFunctionLocation
10.0001221112{main}( )../newsletter4.php:0

( ! ) Warning: include(/home/runrev/public_html/runrev/html/include/banner.php): failed to open stream: Permission denied in /home/newslett/public_html/may/issue26/newsletter4.php on line 195
Call Stack
#TimeMemoryFunctionLocation
10.0001221112{main}( )../newsletter4.php:0

( ! ) Warning: include(): Failed opening '/home/runrev/public_html/runrev/html/include/banner.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/newslett/public_html/may/issue26/newsletter4.php on line 195
Call Stack
#TimeMemoryFunctionLocation
10.0001221112{main}( )../newsletter4.php:0
©2005 Runtime Revolution Ltd, 15-19 York Place, Edinburgh, Scotland, UK, EH1 3EB.
Questions? Email info@runrev.com for answers.