Purchase |  Products |  Downloads |  Forums |  Blog |  Free Trial     

2.1 is no longer sold or supported - these pages are for reference purposes only. VistaDB 3.x should be used for all new development.

 

VistaDB 2.1 - Shared Network Data Access

Applications using the VistaDB 2.1 embedded engine can access data on shared network drives (e.g. F:\MyDatabase.VDB) in single-user mode and concurrently while other users access the same database. This type of data access is often referred to as "file server mode".Table and row locking is managed automatically by VistaDB for SQL statements using Snapshot Isolation level Transaction Processing and developers using VistaDB's DDA technology can manage table and row locks manually. Either way, data can be shared simultaneously among multiple users.

In such a shared network scenario, each Windows workstation requires a lot of extra resources to manage the sharing of the database file, or any file for that matter. In this case, a VistaDB embedded application is not in complete control of the .VDB database. In fact, each application running on each Windows workstation opens the entire .VDB database over the LAN, potentially causing lots of network traffic.

The key point to understand is as follows: The first user that accesses the .VDB database on the shared drive will experience very good performance relative to local desktop access. His Windows workstation recognizes that he is the only user of this file and so Windows is able to open the .VDB database in a type of exclusive mode (The VistaDB open mode settings have no affect on this Windows setting. This is internal to how Windows works.) . However, the moment a second user accesses the same .VDB database, Windows drops its exclusive mode file access down to a shared mode file access which is magnitudes slower.

The crux of the problem is that even after the 2nd user closes his connection to the database, and the first user is back to being the only user working on the database, this first users's Windows workstation does not resume exclusive mode file access until the file (i.e. database) is closed and re-opened. This is the reason why all desktop applications running in this type of "file server" mode suffer from poor multi-user performance and why database applications especially experience data corruption and various other locking problems. Any long time Jet/Access developer will recognize this scenario.

The solution is simple. For multi-user applications where more than one user needs access to a database concurrently when others are accessing the same database, an embedded configuration will generally not be the best choice. VistaDB Server bypasses Windows shared network file problems by allowing VistaDB applications to connect to databases using high-speed TCP/IP. The VistaDB Server is an application that runs on the computer hosting the data and listens on a port for VistaDB applications to send or request data via SQL commands. This is a true client/server configuration and it is the best solution for multi-user database access. Furthermore, the VistaDB database files are never get sent to each workstation for processing. since Windows is no longer in control of opening and closing the database files.

VistaDB Server delivers superior performance that is often magnitudes faster than similar embedded configurations and it eliminates excess network traffic, ensures a high-degree of data integrity and keeps the data secure.


Home |  Support |  FAQ |  Testimonials |  Site Map |  Contact Us |  News Archives |  Terms  
 © 1999-2008 VistaDB Software, Inc. All rights reserved.