Tools, scripts and resources

See also: https://github.com/LucaCanali

Name

Short description

sparkMeasure

sparkMeasure is a custom tool for performance investigations in Spark and provides proof-of-concept code for collecting and analyzing workload metrics.
See https://github.com/LucaCanali/sparkMeasure and http://externaltable.blogspot.com/2017/03/on-measuring-apache-spark-workload.html
 

Impala_SQL_Jupyter.zip

Example of how to get started with using IPython/Jupyter notebooks for querying Apache Impala. See also the blog entry: http://externaltable.blogspot.com/2016/04/ipython-notebooks-for-querying-apache.html
 

PerfSheet.js.zip

PerfSheet.js is a tool aimed at DBAs and Oracle performance analysts. It provides a simplified interface to extract and visualize AWR time series data in the browser using javascript. Uses PivotTable.js by Nicolas Kruchten. Created: January 2016, last update October 2019.
See blog entry: PerfSheet.js: Oracle AWR Data Visualization in the Browser with JavaScript Pivot Charts
 

Linux_tracing_scripts.zip

Linux_tracing_scripts: A collection of scripts for Linux OS dinamy tracing and Oracle userspace tracing. Last updated: May 2016.
See additional details at the blog entries: SystemTap into Oracle for Fun and Profit, Life of an Oracle I/O: Tracing Logical and Physical I/O with SystemTap, Diagnose High-Latency I/O Operations Using SystemTap, SystemTap Guru Mode and Oracle SQL Parsing, Linux BPF/bcc for Oracle Tracing
 

Stack_Profiling.zip

KStackSampler - poor man's profiler for kernel stack trace profiling for Linux. October 2015. See also the blog post: See also this blog post:
Linux Kernel Stack Profiling and Flam Graphs Applied to Oracle Investigations
ORA_KStackProfiler, Ptrace_Profiler - kernel and userspace stack tracing extended with OS process stace and optionally Oracle wait event details. See also: Oracle Wait Events Investigated with Extended Stack Profiling and Flame Graphs

PyLatencyMap.zip

PyLatencyMap provides latency heat map visualization for the CLI. Use to collect and visualize latency histograms from SystemTap, DTrace, Oracle wait events, trace files, NetApp C-mode instrumentation. The tool is written in Python. Latest update: May 2016. PyLatencyMap is also available on Github.
See also this blog entry on PylatencyMap, this other entry on how to get started with PyLatencyMap and this entry on how to use PyLatencyMap and SystemTap to measure block I/O latency, Linux BPF/bcc for Oracle Tracing

PerfSheet4.zip

A tool for Oracle AWR analytics: data mining and visualization using Excel. Current version: v3.7.3, February 2015 (last updated October 2019).
Se also
blog entry on Perfsheet4 and this video on getting started with PerfSheet4

OraLatencyMap.zip

A tool for collecting and displaying Oracle wait event latency details using heatmaps, implemented for the CLI.
It is a SQL*Plus script, with a core written in PL/SQL. Current version: v1.2, March 2014. 
See also: blog entry on OraLatencyMap and blog entry on OraLatencyMap v1.1

Oracle_DBA_Scripts.zip

A collection of DBA scripts I use. Current version: June 2015. Includes top.sql, ash.sql and ehm.sql scripts. See also the description of the scripts at this blog entry.

Ehm.zip

Event Histogram Metric -This script collects and displays latency histograms for Oracle wait events. Use for exmaple to study I/O latency. Current version: 1.1 June 2015. First version, 1.0 (2012) at: Ehm.zip
See also this blog entry about event histogram metric.

SQL_color_Mandelbrot.zip

How to colorize your SQL with an example of SQL how to add color to the SQL for representing the Mandelbrot set. Last updated August 2015. See also this blog entry.

Event_sampler.zip

Event_sampler_latency_histogram.py, a script for Oracle performance analysis: high frequency sampling of X$KSLWH for latency studies of random IO. Event_sampler_gather_IO_history.py: collects the history for the blocks read into the cache using data from X$KSLWH.
See also the blog entry on event sampler.

Asmblk_edit.tgz

A perl-based script to read and write single blocks from Oracle datafiles in ASM. See also blocg entry on testing lost writes.

Hash_Collisions_Oracle.zip

See blog entry on hash-collisions-sql-signatures-and.html: hash_birthday.sql, hash_birthday_signature.sql, find_dup.sql, Hash_Collisions_Results.txt and scripts for parallel execution of the hash collisions search.

MD5_oracle_hash.zip

md5.sql and md5_with_chr0.sql scripts to compute md5 hashes and reproduce the calculations of hash_value and signature in Oracle. See blog entry on sql-signature-text-normalization-and.html

V$metric.zip

A collection of scripts for monitoring and troubleshooting from v$ views of the type 'metric', such as sysmetric, eventmetric, iometric.


The scripts and tools linked here are provided for free download and usage. They are made available in the context of knowledge sharing, typically as an extension of the author's presentations and articles. No warranties nor guarantees are made about their correctness, reliability and safety. Use them at your own risk.