I’ve been told that using NOT EXISTS in (Oracle) SQL is a bad idea, and that a way to overcome this problem is to collect the non-matching rows with an OUTER JOIN. So I decided to check if it is true.
While perusing the Oracle 11g Data Pump documents recently, I noticed a new parameter that was introduced in Oracle 10g, but I had missed it there. The parameter is TABLE_EXISTS_ACTION, and it applies only to the Data Pump Import. Basically, this feature allows you to decide how to handle importing data if a table already exists. Let’s create a simple test case to demonstrate.
This week, Daniel Krook brings us the 78th edition of Log Buffer, the weekly review of database blogs.
Welcome to the 77th edition of Log Buffer, the weekly review of database blogs.
In the era of consolidation, storage has not been left out. The impact of backup on normal database activity . . . batch processing in one database impacting transactional processing — these are two real life examples of the consequences of storage consolidation known to almost every DBA. Virtualization puts a new twist in consolidation, but storage virtualization methods are very under-developed compared to computing resource virtualization. Storage QoS and storage virtualization must necessarily be very closely-related areas with a lot of overlap.
Welcome readers to the 76th edition of Log Buffer, the weekly review of database blogs.
The “sla” in mysqlsla stands for “statement log analyzer”. This does a much better job than mysqldumpslow of analyzing your slow query log. This is really good for weeding out pesky entries in the slow query log that you do not care about. In this case, I’m using –slow to read the slow query log at the filename specified, –flat to flatten all the text to lowercase (basically case-insensitive matching) and –sort at to sort by “average time”.
I gave this talk covering the different types of memory, how to monitor memory, and how to optimally use it with Oracle at the UKOUG, I have since received requests to post the slides online. Instead of just posting the PowerPoint I took some time to give the presentation again (internally here at Pythian) and this time we recorded the session and are posting it in a variety of formats. This is a bit of a departure from the typical Pythian Goodies, in that it is scripted, and there is a lot of content here in the whitepaper.
I’m on the plane back to Canada and I’m extremely satisfied with the UKOUG conference this year. Find out about the last day highlights and post conference exploits here.
I’ve been checking out a new client environment. My mission is to figure out some of the characteristics of the queries being run, and if they’re “good” or “bad”. In my arsenal of “tools I really want to check out” has been Maatkit’s Query Profiler, it profiles a batch of queries, without granularity (at least not the way I ran it) to see what query is doing what. So I ran this against a production machine, read my results here