For example, the Oracle Pro*C/C++ precompiler enables you to embed SQL statements in a C or C++ source file. The ability to generate trace files is useful for debugging and diagnosing performance problems.Ĭlient/server programs are typically written using precompilers, which are programming tools that enable you to embed SQL statements in high-level programs. Good development practice involves adding debugging code to your application. In this way, you can monitor performance proactively and reactively (see "Performance Diagnostics and Tuning"). Good practice dictates that you maintain historical records of performance metrics. For example, you should use metrics that include expected user load, transactions per second, acceptable response times, and so on. Tuning after deployment is undesirable because changes to logic and physical structures may be difficult or impossible.ĭefine clear performance goals and keep historical records of metricsĪn important facet of development is determining exactly how the application is expected to perform and scale. For example, the data model should use the type of indexes that provide the best performance. A well-designed data model answer the most common queries as efficiently as possible. Typically, attempts to use generic data models result in poor performance. Also, you can use a test environment to measure the performance impact of changes to the database, and ensure that upgrades and patches work correctly.ĭesign the data model with the goal of good performance For example, you can benchmark the application to ensure that it scales and performs well. Coding the rules in a client means that other clients do not have access to these rules when running against the databases (see "Advantages of Integrity Constraints").īuild a test environment with representative data and session activityĪ test environment that simulates your live production environment provides multiple benefits. Using primary and foreign keys enables data to be reused in multiple applications. Implement integrity constraints in the server rather than in the client Using bind variables to allow soft parsing is very efficient and is the way the database intends developers to work. In contrast, a hard parse takes longer and uses more resources (see "SQL Parsing"). If the same statement is executed again, then the database can perform a soft parse and reuse the plan. When a query uses bind variables, the database can compile it once and store the query plan in the shared pool. For example, not understanding Oracle Database concurrency controls and multiversioning read consistency may make an application corrupt the integrity of the data, run slowly, and decrease scalability (see "Introduction to Data Concurrency and Consistency"). The following principles of application design and tuning are useful guidelines:Īs a developer, you want to develop applications in the least amount of time against an Oracle database, which requires exploiting the database architecture and features. Oracle developers must design, create, and tune database applications so that they achieve security and performance goals. Principles of Application Design and Tuning The preceding tasks, and many others, are described in Oracle Database 2 Day Developer's Guide and Oracle Database Advanced Application Developer's Guide. Instantiating applications in different databases for development, testing, education, and deployment in a production environment Writing server-side PL/SQL or Java subprograms and client-side procedural code that use SQL statementsĬreating the application interface with the chosen development toolĮstablishing a Globalization Support environment for developing globalized applications Implementing the data model required by the applicationĬreating schema objects and implementing rules for data integrityĬhoosing a programming environment for a new development project Oracle database developers can expect to be involved in the following tasks: For this reason, developers work closely with the database administrators, sharing knowledge and information. Oracle developers either develop new applications or convert existing applications to run in an Oracle Database environment. An Oracle developer is responsible for creating or maintaining the database components of an application that uses the Oracle technology stack.
0 Comments
Leave a Reply. |