Multiple Locations

 

Multiple Locations 

EZ2000 Plus Dental can easily be used for multiple location scenarios as described below. Also see the Remote Access page for information on accessing data from outside your office.

Workstation Connections
Workstations can connect to databases in any of three different ways. These three different connection types can be mixed and matched in any network (LAN or VPN).

1. Direct Connection:  Workstations connect directly to the MySQL database using ServerName, DataBase, MySqlUser, and MySqlPassword, which are all specified at the top of the Choose Database window.  This is very fast in a LAN, but is generally sluggish on a VPN due to the large number of database calls.  Some internet connections are getting fast enough to allow this sort of direct connection on a VPN, but it's something that simply has to be tested to know if the speed is going to be acceptable.  Even if the speed is annoyingly slow, it can still be a temporary solution.


[figure 1]

2. Remote Desktop Protocol (RDP):  Other names for similar technology include Terminal Services, Citrix XenApp, application virtualization, LogMeIn, RemoteApp, GoToMyPC, VNC, VMware, etc.   Each workstation acts as a thin client, with multiple copies of EZ2000 Plus Dental running on the server.  We have many offices using RDP successfully. EZ2000 Plus Dental is specifically designed to run well in this environment. There are two example configurations below, one for a smaller office, and one representing a typical larger enterprise.

[figure 2a]
[figure 2b]

3. Middle Tier: The workstations are ordinary thick clients running the full Windows version of EZ2000 Dental.  The Middle Tier is a server program that sits between the database and the client machines.  It isolates the database, improving security by preventing client workstations from directly accessing the database.  This is very fast in a LAN, but is sluggish on a VPN.  There are two example configurations below, one for a smaller office, and one representing a typical larger enterprise.

[figure 3a]
[figure 3b]

Strategies for Multiple Locations

Setup a Virtual Private Network (VPN)
In all of the discussions and diagrams below for multiple locations, the assumption is made that the separate locations are all connected by a VPN.  There are different types of VPN solutions and a network specialist would be involved in setting it up. Once the VPN is set up, the offices should be securely connected and function as if they were a single office.  In our diagrams, various network routers and switches are generally omitted for simplicity.  Also not included in the diagrams are the shared A to Z folders.

Separate Databases
This is the simplest approach for multiple locations. Each location has its own local server and unique database. This works very well for most situations.

network separate databases
[figure 4]

The simplest solution for seeing data at another location is to Remote Connect to either a server or a workstation at that location.  This usually works best if only a few locations are involved.

 


[figure 5]

When more locations are involved, our Central Enterprise Management Tool can help manage the multiple databases.  There are also other tools available which can coalesce data from multiple databases for complex reporting.  A good example is MS Access.  It would be up to the user to select and learn how to use such reporting tools. 


[figure 6]

One Central Database
The advantages of a single centralized database are obvious, but there are disadvantages as well:
1. Internet speeds are still an issue, and must result in some compromises.  Speed becomes an issue for images, updates, and complex screens.
2. Data that is mingled between multiple locations can be hard to split back out later. One example would be if a location is sold.
3. If internet goes down, then the office goes down.

With one central database, the best speeds will be achieved with an RDP solution.  This scales up well as long as there is plenty of memory on the server.  As a very rough estimate, 5 remote connections can be supported per 1 GB of memory.  In this example, a single server hosts the database as well as functioning as the RDP server.


[figure 7]

More servers can be added to support a large number of thin clients.


[figure 8]

One disadvantage of RDP is that it does not support some local hardware such as digital radiography.  So, on workstations where images are being captured, a full direct connection may be needed.


[figure 9]

Or, for better security, all thick clients would be connected via the Middle Tier.


[figure 10]

Another complication of RDP is how to handle the Bridges to Imaging Programs.  If the imaging program can be run on Remote Desktop Service (RDS), then any of the thin clients can easily view existing images. If the imaging program does not support RDS, then most workstations may need to be thick clients in order to view images in the imaging program.

Private Cloud: Any of the configurations above could also be done with the server(s) in a datacenter rather than at a dental office.  For example, a simple configuration could be done as follows:
1. Rent a virtual server on rackspace.com.
2. Set up a VPN connection between the virtual server and all locations.
3. Install EZ2000 Plus Dental on the virtual server in the ordinary manner.
4. Turn on Remote Desktop Services.
5. Connect to the server as described in the examples above.

network private cloud
[figure 11]

One Virtual Database With Replication
Replication is a technology built into MySQL that continuously keeps a slave database synchronized with its master.  Replication has the following advantages when compared to a single physical database:
1. Very fast at each location, regardless of workstation connection type.
2. Continues to function if internet goes down.
It also has the following disadvantages:
1. Requires very strong database administration skills to properly restore all the databases when replication crashes.
2. Does not scale up well past about 10 servers due to single weak link concept.

In the simplest configuration, the slave can be useful as a hot backup, running complex reports that would bog down the main server, or for pausing to make clean backups.  Anyone considering replication is encouraged to run this configuration for a number of months to get very familiar with the administration.  This is a very safe configuration that will not result in corruption.


[figure 12]

In a more complex configuration, the replication can form a ring.  All the databases together are referred to as a single virtual database.  In this configuration, each location can continue to function normally even if the internet connection goes down.  The data from the other locations will not be fresh, but an office typically doesn't care as much about that data.  Once the internet connection is restored, the replication quickly updates the database with current data.  This kind of replication is supported very well by EZ2000 Plus  Dental as described in great detail on the Replication page. 


[figure 13]

 

Miscellaneous Configurations

Notebook Computer
If you have two locations, but only access data from one location at a time, then you could use a notebook computer as your server. Just take it with you from location to location. There can be other workstations that use the same data, but they will not work until the notebook returns and is connected to the local network.

External Hard Drive
If you have two locations, but only access data from one location at a time, then you could physically take the database with you. You would set up two separate servers, one at each location. And on each server, MySQL would only be functional if your external hard drive or USB flash drive was plugged in. But it's tricky. Your database would be on the E: drive or something similar. You would have to know how to use our installer to install MySQL to run the database from the alternate drive. You would have to know how to then move your database to the new location. You would have to shut your server down each day before removing the hard drive. And then when you start your server back up, you would have to become very familiar with knowing how to start the mysql service if it wasn't already running. This is not a good strategy to take data home at night for three reasons. First of all, it interferes with the proper Backup strategy, which is to make a copy of the data and run it at home. Second, until you bring the hard drive back to the office, nobody can work. Lastly, it's too complicated for most users.

MySql Clustering
In a MySql clustering setup, one database can be spread across multiple physical servers.  This is not a way to have one database at multiple locations.  Instead, it's a way to increase the speed and reliability of a database at one location. EZ2000 Plus Dental will not work in a cluster because many of the tables have rows that are too long.

A Windows cluster is different.  We have seen EZ2000 Plus Dental work in a Windows cluster setup, although we cannot currently provide technical support to assist with such a configuration.

Web Version
See Web Version

Multitenant Hosting
If you wish to host multiple customers on the same database server, be sure to see the Multitenent page for isolation information.

 

EZ2000 Plus  Dental Software 800-273-5033