Databases Reference
In-Depth Information
Many software architects and developers don't think that the design of their
database applications impacts the performance of those applications. This is not
true; application design is a key factor. An application is often coded to establish
a new connection to gather information about the database, such as supported
data types or database version. Avoid establishing additional connections for this
purpose because connections are performance-expensive, as we explain in this
chapter.
This section explores several key functional areas of applications that you
need to consider to achieve maximum performance:
•
Database connections
•
Transactions
•
SQL statements
•
Data retrieval
Some functional areas of applications, such as data encryption, affect perfor-
mance, but you can do little about the performance impact. We discuss these
areas and provide information about the performance impact you can expect.
When you make good application design decisions, you can improve perfor-
mance by doing the following:
•
Reducing network traffic
•
Limiting disk I/O
•
Optimizing application-to-driver interaction
•
Simplifying queries
For API-specific code examples and discussions, you should also read the
chapter for the standards-based API that you work with:
•
For ODBC users, see Chapter 5, “ODBC Applications: Writing Good Code.”
•
For JDBC users, see Chapter 6, “JDBC Applications: Writing Good Code.”
•
For ADO.NET users, see Chapter 7, “.NET Applications: Writing Good
Code.”
The way you implement database connections may be the most important design
decision you make for your application.