Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CONTENTS
Notices ____________________________________________________ 7
Trademarks ______________________________________________________ 7
INNODB ENGINE
Why Use the InnoDB Engine?
eCW currently uses MyISAM as the default engine on the database
server. You should consider replacing this database storage engine
with the InnoDB storage engine.
Configuring the database using the InnoDB engine has the
following advantages:
1. Row-Level Locking
InnoDB uses row-level locking when reading the database. This
is a major advantage as compared to MyISAM, which uses
table-level locking.
This advantage is clear when a long running query such as lab
list lookup, accounts lookup, or claims lookup runs on the
database server. Such queries may run for a significant
amount of time. In MyISAM, such a query may result in a
global locking result, which may cause the application to freeze.
InnoDB, using row-level locking, would allow this query to run
while simultaneously allowing other incoming queries on the
same table to be executed. This completely resolves global
freezing scenarios that may otherwise occur when queries that
include elements such as large date ranges are submitted on
the database.
2. Tables In Memory (Buffer Pool)
InnoDB uses a memory area called a buffer pool, where tables
can be loaded. InnoDB loads the table data as well as indexes
in this buffer pool. This is different from MyISAM, which loads
only the indexes in memory (in the area called the key buffer).
Since InnoDB loads data as well as indexes in memory, a larger
buffer pool would be needed to hold the database in memory as
the database size increases. With 64-bit architecture, very
large buffer pools can be allocated that would allow MySQL to
take advantage of the available memory and manage large
tables in memory, thus eliminating disk access. Accessing
tables in memory is much faster, thereby allowing the database
to work a lot faster.
To put things into perspective, on an average computer it takes
the CPU approximately 200 ns (nanoseconds) to access RAM,
compared to 12,000,000 ns to access the hard drive. A task
that would take 3.5 minutes accessing the RAM would take 4.5
months to complete if it had to access the hard drive!
3. Resistance to Corruption
InnoDB is much more resistant to corruption.
Database Servers
Look at the number of concurrent users your system will need to
support and the kind of physical hardware specs you would need to
run it as a physical machine.
If the database runs fine on a basic 1- or 2-processor server with a
modest amount of RAM (under 8GB), and disk throughput isn't
excessive, Virtualization may be a good idea.
If it requires a multi-processor quad-core machine with 32GB of
RAM and a local 6-disk SAS drive stripe, it is not a good candidate
for virtualization. A physical server is a better choice in this
situation.
NOTICES
Trademarks
eClinicalWorks™
eClinicalWorks is a trademark of eClinicalWorks, LLC. All other
trademarks or service marks contained herein are the property of
their respective owners.
Trademarks 7