Analyzing segment content by block type

Occasionally one might want to know what a segment is made of in terms of block types. For example, you notice that the number of blocks in an index segment is somewhat larger than the number of branch and leaf blocks, and wonder what kind of blocks accounts for the difference. The only way to do this is by dumping index blocks (e.g. as described in Richard Foote’s blog here). Dumping blocks is easy, but (more...)

Meetup maart – Docker en Elasticsearch

Meetup maart – Docker en Elasticsearch

Voor maart hebben we twee interessante bijeenkomsten gepland bij

Docker Meetup – Deep dive into Docker storage drivers

docker_logoOp 5 maart hosten we voor de tweede keer een Docker Meetup in Utrecht. De presentaties worden verzorgd door:

  • Jérôme Petazzoni (Senior Engineer Docker)
  • Kay Davenport (Developer Evangelist ClusterHQ)

Inschrijven kan hier.

GOTO Night: Elasticsearch

elasticsearch_logoOp 25 maart hosten we voor een GOTO night over Elasticsearch. Sprekers zijn:

Latest updates to PerfSheet4, a tool for Oracle AWR data mining and visualization

Topic: This post is about the latest updates to PerfSheet4 v3.7 (February 2015). PerfSheet4 is a tool aimed at DBAs and Oracle performance analysts. It provides a simplified interface to extract and visualize AWR time series data using Excel pivot charts.

Why PerfSheet4: PerfSheet4 is aimed at querying and displaying time-series data from AWR repository tables. This is very a rich source of information to analyze database workloads and trends in the context of performance analysis or (more...)

Sonatype Nexus: Retrieving artifacts using the REST API or Apache Ivy

Sonatype Nexus is an often used artifact repository. In a previous blog post I have shown an example how Maven can be used to assemble and release artifacts to Nexus. In this blog post I will describe two ways how artifacts can be fetched from the Nexus repository; by using the REST API and by using Apache Ivy.


The Nexus API

Sonatype has done a great job at providing an extensive well documented REST API. (more...)

Material zu XPLAN_ASH

Randolf Geist hat vor kurzem eine neue Version (4.21) seines nützlichen XPLAN_ASH Tools veröffentlicht und dazu noch erläuterndes Material - insbesondere Video-Tutorials - geliefert:


Neues von SDSQL. Die Änderung, die als erstes auffällt, ist der neue Name SQLcl, der für sql command line steht. Keine ganz schlechte Idee, finde ich, denn SDSQL kam mir eher sperrig vor.

Aber auch inhaltlich gibt es mit der neusten Version des Tools wichtige Ergänzungen, über die Jeff Smith und Kris Rice informieren:
  • info Funktion: ein erweitertes DESC, das nicht nur die Spaltendefinitionen, sondern auch Informationen zu den Indizes und Constraints einer Tabelle liefert. (more...)

Sometimes development is just work

Sometimes development is just work

No matter how cool your job is, no matter how many people are looking at you or your company for best practises, sometimes developing software is just work ;-) On this blog I’ve shared examples of companies that people nowadays see as successful, like Netflix, Twitter, Spotify, or the online retailer

To prove my point I’ve checked the release notes of Netflix and Spotify apps. Here (more...)

Book – The Phoenix Project

Book – The Phoenix Project

Book The Phoenix ProjectThe Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win is written the by Gene Kim in the tradition of The Goal (1984, by Dr. Eliyahu M. Goldratt). The Goal is a management novel explaining the Theory of Constraints. This book, The Phoenix Project shows how the theory in The Goal works in an IT environment.

The Goal – Theory of Constraints

In simple terms the Theory (more...)


In der Vergangenheit habe ich schon häufiger erwähnt, dass ich den SQL Developer für ein sehr brauchbares Werkzeug halte, das mit erstaunlichem Tempo weiterentwickelt wird - insbesondere, wenn man bedenkt, dass es ganz und gar kostenlos ist. Fast noch interessanter finde ich aber das vor wenigen Tagen vorgestellte zugehörige Tool SDSQL, das die sqlplus engine des SQL Developers als command line interface verfügbar macht - und zahlreiche Features hinzufügt, die im klassischen sqlplus fehlen. Die (more...)

Life of an Oracle I/O: tracing logical and physical I/O with systemtap

Topic: This post is about tracing logical and physical reads in Oracle using systemtap. You will find a few examples illustrating the main mechanisms used by Oracle to do physical and logical I/O and you will learn how to build systemtap scripts to further explore and troubleshoot Oracle I/O.

Introduction: Performing input/output to and from the storage media, i.e. physical I/O, is one of the critical tasks underlying all database engines. When accessing data (more...)

Spotify engineering culture part I & II

Spotify engineering culture part I & II

I’ve been reading quite some article on engineering culture and ways of working. The videos on Spotify Labs are among the best sources I’ve watched or read in the last year on the subjects of agile and culture. Recently the second part of their series on Spotify’s engineering culture was released.

Spotify engineering culture part I

Important take aways for me were:

  • Agile over scrum
  • Principles over practices
  • (more...)

SQL Developer Neue Version & Hidden Features

Es gibt eine neue Version vom Oracle SQL Developer 4.0.3:

Hier noch ein paar Links zu den Hidden Features im SQL Developer
Top 10 Voreinstellungen:

Automatisches öffnen einer Tabelle verhindern:

Formatiere SQL Code in lower/UPPER:

Verbindung zu anderen Datenbanken herstellen:

Wenn Ihr noch nicht allzu viel Erfahrung mit dem SQL Developer habt, dann solltet Ihr euch diese Seiten mal anschauen:

SystemTap into Oracle for Fun and Profit

Topic: This post is about using SystemTap for investigating and troubleshooting Oracle RDBMS. In particular you will learn how to probe Oracle processes and their userspace functions. These techniques aim to be useful as well as fun to learn for those keen into peeking under the hood of the technology and improve their effectiveness in troubleshooting and performance investigations.


Userspace probing is a very powerful technique that can be used to complement the available (more...)

How to identify SQL performing poorly on an APEX application?

Oracle Application Express (APEX) is a great tool to rapidly develop applications on top of an Oracle database. While developing an internal application we noticed that some pages were slow, meaning taking a few seconds to refresh. Suspecting there was some poorly performing SQL behind those pages, we tried to generate a SQL Trace so we could review the generated SQL. Well, there is no out-of-the-box instrumentation to turn SQL Trace ON from an (more...)

Book – Hatching Twitter: A True Story of

Book – Hatching Twitter: A True Story of

Book - Hatching Twitter: A true story of...Just finished reading Hatching Twitter: A True Story of Money, Power, Friendship, and Betrayal and I must say that I wasn’t as impressed as when reading for example The Everything Store. The book is more about politics and opportunities than about creating opportunities and value or generating great ideas that others can build on. Of course this can still offer a great story and be a good (more...)

Flame Graphs for Oracle

Topic: This post is a hands-on introduction to using on-CPU Flame Graphs for investigating Oracle workloads. This technique is about collecting and analyzing sampled stack trace data to analyze and troubleshoot Oracle processes at the OS level (in particular applied to Linux).

Motivations: The techniques and tools described here can be used for performance investigations to complement wait-event based information gathered from the Oracle engine, such as information available with ASH and sql monitoring. They (more...)


My carpenter has been putting in a new floor in a room in my house, and I noticed that he makes some of his tools as he goes along.

It’s not that he doesn’t have a hammer and a cordless electric screwdriver. But every once in a while, he needs to move, align or support something in a way that his standard tools do not support. So he immediately builds an ad-hoc tool out of (more...)

Recent Updates of OraLatencyMap and PyLatencyMap

Topic: This post introduces the latest changes to OraLatencyMap and PyLatencyMap, two custom tools for collecting and displaying Oracle wait event latency details using heatmaps.

OraLatencyMap is a SQL*Plus tool, with a core written in PL/SQL, aimed at studying Oracle random I/O by displaying the latency drill-down of the wait event 'db file sequential read' using heatmaps. The tool can also be used to collect and display event latency histograms for any other Oracle wait (more...)

Wait Event History Sampling, an Experiment in Oracle Performance Analysis

Topic: This post is about a performance analysis technique based on high frequency sampling of wait event history data in Oracle. Two scripts are provided for performing this type of analysis and two example cases are discussed applied to the study random read latency and read workload characterization.

Context: In the context of performance analysis, for example for a study of I/O response time, I want to analyze the flow of all wait events for (more...)

Daylight Saving Time Change and AWR Data Mining

Topic: this article is about a tip for Oracle 11.2 and higher on how to handle DST change when querying directly the AWR repository. In addition a few comments on Perfsheet4, a tool to extract and plot AWR data in Excel.

Introduction: Statspack and more recently AWR reports, (more...)