Relational database servers are made for handling large transaction volumes in a multi-user environment. Whereas some desktop databases incorporate both the front-end and data server components in one product, in a client/server environment, the network database server processes all requests for data on the server. Massaging and displaying the data is the job of the client software, which runs on the users' workstations and sends requests to the server to execute a query and return its results. The main advantage of this setup is that you only need one database server to accommodate many users. It also minimizes network traffic as only query result sets are returned to the workstation, as opposed to whole tables. Disadvantages include hardware, software, and maintenance costs, which can be nothing short of astronomical for the larger enterprise editions.
In part one of the Database Buyer's Guide series, Database Types and Features, we covered the myriad of DBMS types out there. These include desktop, sever, web-enabled, and cloud DBaaS. Moreover, many database management software (DBMS) products are offered in free open source editions as well. After reviewing some of the more critical evaluation considerations throughout parts one and two, we looked at the top three products in the desktop databases category. Now it's time to move on to the top database servers.
The overall Relational Database Management Software (RDBMS) market is dominated by just three vendors: Oracle, IBM, and Microsoft, which accounted for over 85 percent of the worldwide market according to analyst research conducted in 2007. Their database server offerings are Oracle database, IBM DB2, and MS SQL Server, respectively.
The focus of today's article is Oracle's excellent database server. The following two articles will cover MS SQL Server and IBM DB2.
Oracle Database Server 11g Features
In the realm of the traditional RDBMS, none are more industrial grade than Oracle's database server. Even after ten versions, the new 11g edition introduces improved performance and management tools, top notch application testing, and more efficient storage mechanisms. To put it succinctly, Oracle is the BMW of the database server world. Everyone tries to beat them, but then they raise the bar with each successive release.
Here's a rundown of 11g's most outstanding features:
Application Cluster support
Real Application Cluster (RAC) is a component of Oracle's private cloud architecture that allows a database to be installed across multiple servers. RAC's shared disk architecture differs from competing database products such as Microsoft's SQL Server, which uses something called "shared nothing" architecture, in which data is partitioned so that each server only has access to its own disk subsystem, Oracle's RAC architecture gives all servers access to the entire database. Advantages include:
· failover capacity to the database, because all servers have access to the whole database
· increased scalability because servers can easily be added or subtracted to meet current demand
· lower costs because companies don't have to buy high-end servers
· improved availability because if one server fails, another can assume its workload
Advanced Data Compression Capabilities
Oracle's compression strategy saves storage space by replacing duplicate values in a data block with symbols for those values. Rather than compress the values, the database normalizes the data in a way that works a lot like indexes in 3NF database design.
In addition to allowing more data on disk, Advanced Compression can also improve I/O performance. With data taking less space, it's quicker for the database to satisfy queries because the database has to read less data from disk for the same information. Thus, Advanced Compression can reduce storage costs, reduce memory and network bandwidth requirements, and even improve query performance.
Database Replay Tool
Oracle has an uber-useful "what-if" tool called Database Replay that allows you to capture an actual database workload on a production system and replay it on a test system. The ability to test and work with actual workloads is a real benefit because it's one of the most accurate methods to predict how application and system changes will impact real-life performance.
Combined with the SQL Performance Analyzer, the Database Replay Tool allows you to capture performance stats for a transaction and replay it, either on the same box or on another box, and compare the performance results, thus providing insight into comparative workloads.
One of the ways that these testing tools can be used by database administrators is to predict the impact that system changes such as database upgrade, tuning, schema changes, database parameter changes and even operating system or hardware modifications will have on the SQL execution plan.
Automatic SQL Tuning
Database 11g adds self-learning capabilities to Oracle's pre-existing automatic SQL tuning. Now the engine detects high-load SQL statements and saves them for tuning during a maintenance window. It can either apply some automatic fixes or simply suggest structural changes, such as indexes.
Extended (or multicolumn) statistics are a new feature in Oracle Database 11g. They can help determine when there is a relationship between two or more columns in a table. For example, the extended statistics capability can be used to show the relationship between customers, states and countries within a single table. Another tool called the Cost-Based Optimizer can use these statistics to reveal multicolumn relationships in the table.
Oracle has beefed up security in Database 11g. It now uses Transparent Database Encryption to scramble data stored on disk. Accessed through the Web-based Enterprise Manager database control, you can use the database encryption to obscure individual columns. The best part is that encrypting data only makes retrieval slightly slower than using unencrypted data.
Processor Value Unit (PVU) Licensing
Licensing for database servers is as complex as it is flexible. Besides traditional per-user licenses, they can also be based on something called the Processor Value Unit (PVU). PVU is a unit of measure used to differentiate licensing of software on distributed processor technologies as defined by Processor Vendor, Brand, Type and Model Number. For purposes of PVU-based licensing, a PVU is loosely linked to each processor core on a chip (socket). Determining the exact cost is no simple matter, as the number of PVUs per server varies greatly and each vendor's various database server editions have a different price per PVU.
Oracle offers three editions of their database server. From the most basic to most full-featured, they are Standard Edition One, Standard Edition, and Enterprise Edition. While a number of licensing options are available, to give you a basic idea, a perpetual license, meaning that it is good forever, for the Standard Edition One costs $180 per named user and $5,800 per processor; the Standard Edition costs $350 per user and $17,500 per CPU; and the Enterprise Edition costs $950 per named user or $47,500 per processor.
Visit Oracle's website to learn more about their database editions.
As mentioned above, the number of sockets plays a role as well. You'll have to look up your specific server hardware on the Oracle site because their definition of "processor" does not necessarily match that of your hardware vendor.
See the Oracle licensing faq page to find the license which best suits your needs.
I barely touched the surface of Oracle database servers' capabilities. Having been an industry leader for many years, there can be little doubt that Oracle's products would more than suit your needs. Nonetheless, I urge you to check out the rest of this series before making any hasty decisions because there are still lots of worthy contenders to come!