This paper describes how to use an Oracle Database tracing feature to write better, faster Oracle-based applications, regardless of whether your code is Java, PHP, C#, Ruby, Python, Perl, C, or something else.
Category: Papers
My Case for Agile
Among many of my Oracle database administrator (DBA) friends, “agile” is widely regarded as a dirty word, a synonym for “sloppy.” However, adopting the principles of the Agile Manifesto (specifically, the implementation of the Agile Manifesto called Extreme Programming, or XP) has radically improved the commercial and technical success of projects that I’ve worked on.
Oracle’s extended SQL trace data stream contains a linear sequential record of every database call and every operating system call that the Oracle kernel executes in response to the code that you write.
Half the battle of writing good SQL is in understanding how the Oracle query optimizer analyzes your code and applies statistics in order to derive the “best” execution plan. The other half of the battle is successfully applying that knowledge to the databases that you manage.
Oracle continues to add more and more automated features and advisors to assist with diagnosing and fixing problems. Given all this automation and advice Oracle is providing, a question to ask is whether or not all this advice is “dumbing us down” or “smartening us up.” This paper explores this question and asks you to consider, “Are you a monkey or an astronaut?”
Measure Once, Cut Twice (No, Really)
“Measure Twice, Cut Once” is a reminder that careful planning yields better gratification than going too quickly into operations that can’t be undone. Often, however, it’s better to Measure Once, Cut Twice.
Performance Management Myths & Facts
Performance management consists of problem diagnosis and repair, resource management, application optimization, and capacity planning. In constructing a reliable performance management method for hundreds of Oracle database sites, my colleagues and I have encountered bits of interesting folklore that, ironically, block progress toward the ultimate goal of lasting system performance satisfaction. In this paper, I will take a fun look at the dangers of several popular but bad guidelines, and I will offer alternative advice that helps you avoid the risk of costly performance management mistakes while not losing sight of the friendly goals: fast, easy, and cheap.
The enormous variety of technology options available in today’s open systems environment makes the role of system architect more critical than ever on both large and small projects.
More component options have led to greater flexibility and lower component prices, but also to greater complexity and, in turn, to greater risk of implementation project failure or delay due to technical miscalculations or inappropriate assumptions. System architecture is the discipline that addresses the difficult technical issues inherent in a complex software system implementation.
Configuring Oracle Server for VLDB
This paper will help the reader configure a very large Oracle Server database (VLDB) for high performance and high availability with low maintenance. It describes decisions about database block size, RAID technology and raw devices, redo log files, tablespace partitioning, storage parameters, and rollback segments. This paper explores the technologies and trade-off constraints associated with these issues and presents technically detailed methods for optimizing a configuration within these trade-offs.
The technical architect of an application system is responsible for building a system that meets the goals of the end users. To succeed, this person must combine the right hardware components with suitable application architectures, always obeying complex functional, operational, and economic constraints.