Xebra uses a client/server model to handle multiple users accessing the system concurrently. This method of data access is far better than the alternative strategy that you might find still in use in other software packages. Our implementation of the client/server model is time tested and uniquely superior to other systems on the market.
A traditional way to handle data sharing over a network is through file sharing. Many of our competitors still use this method or are just beginning to realize that there is a better way. With systems like this, data files are stored on one computer and other workstations in the network must get direct access to these files over the network by sharing the server's disk drive. Hardly any processing takes place on the file server and the burden of sorting through data to produce reports, generate totals, or display data of any kind is placed on each workstation. Often, a workstation must copy a large amount of data across the network before it can find or produce the result that the program on the workstation wants to display. This puts a tremendous burden on the network with just one computer accessing the data on a shared drive, and the strain multiplies for each additional computer on the network.
Once workstations start updating data in this kind of environment, serious problems arise. Since its possible for more than one computer to access the same file at the same time, special care must be taken to lock files from being used by others before a workstation modifies a file. Locking the files is necessary to maintain data integrity. If two computers were to modify the same file at the same time, data would get lost or corrupted. When the locking works, it slows down network access further because one computer must wait for another to finish what it is doing before it can proceed. File locking doesn't always work. If locking fails and you're lucky, you might be able to run a long database index rebuild process and fix the problem. Sometimes, even a database index rebuild can't correct the problems caused by a file locking failure and you must live with lost or corrupted data unless you restore from a backup. Sometimes files that are locked don't unlock correctly. This often results in time-out errors or hangs on the workstations until the server computer is rebooted.
In 1999 we realized that file sharing just wasn't good enough for a multi-user system. Even networks with only two computers could run into trouble and as users and the amount of data being processed increased, so would the problems.
By 2001 we developed and released the client/server version of Xebra and stopped selling any software that depends on network file sharing. The Xebra system now consists of a server program that runs on one computer in a network and is responsible for all data file access. Xebra users run a program that we call the Xebra Client that communicates with the Xebra Server program. The Xebra Client can run on any computer with TCP network access to the Xebra Server program. The Xebra Client can even connect to the Xebra Server over the Internet allowing for easy remote access without additional or different software.
When you need to perform a task such as getting total sales for a date range, the Xebra Client sends a message to the Xebra Server program requesting this information. The Xebra Server analyzes and processes the data on the local server computer and only sends back the resulting total sales figure to the client. This means that only 2 small bits of information have to pass across the network: the request and the result.
With Xebra, there is no such thing as a database index rebuild because there is never any need. When you use Xebra in a networked environment, you can count on fast and reliable data handling.