Application Express and Open Source Graphing Libraries

This is my v2 of a presentation on ideas for going beyond the Application Express default graphs and info on 3 popular Javascript graphing libraries that can be incorporated into Apex Applications.

2013-06-DavidMann-ExploreNewDataDimensionsWithApexAndFOSSGraphingLibraries.pdf

A Brief Brief about a Brief KScope13 Visit...

Due to some unforeseen circumstances I was unable to spend as much time as I would have liked at KScope13 in New Orleans but boy did I pack a lot into the 24 hours that I was there.

Stupid unique index tricks...

I have a case where I need to enforce uniqueness on a combination of columns but only when a flag is set (ACTIVE_FLAG=1). The table also holds history and may have multiple inactive records mixed in but I don't want to keep those from being added to the table.

This can be done by exploiting the fact that null index expressions are not indexed. DECODE and function based index to the rescue! Here is a quick proof of concept with the relevant columns:

Tags: 

"Playing" Nice with Oracle - Using Play Framework 2.1 with Oracle

I am throwing together a quickie Play Framework application for a DB process dashboard. I love Play. Its quick, powerful, and does a pretty good job of getting out of your way when you need it to.

But as a cutting edge open source app framework the documentation is sometimes a little behind the curve... Or assumes you are always using h2 for dev and mySQL for production.

Here are some tips on getting your new Play app to play nicely with Oracle via JDBC.

Make the JAR Available to your App

PowerDesigner Annoyances 1

Yes, I tagged it with a '1' because I already know there are more to come :)

I created a notebook on this site to collect information about PowerDesigner. My first entry deals with basic script generation options for Oracle and how to get better scripts that are more error-free when the are generated by PowerDesigner.

You can check it out here:
http://ba6.us/PowerDesigner-Basic-Gen-Script-Settings

-Dave

Updated Heat Map Report

During my preparation for a visualization presentation at East Coast Oracle Users Group I realized I had an opportunity for a teaching moment on Levels of Abstraction. A few months back I published my PL/SQL code for an Archived Log Switch Heat Map.

myBatis Migrations and Oracle RDBMS

I am evaulating some schema migration tools for a project I am working on. I want some basic help organizing scads of changes that we will make during development. I also want the ability to produce generic SQL scripts as output to pass along for review / execution by folks that are not knee deep in our development environment.

The SQL Script output requirement cut out a lot of options. For a comprehensive list of options check out the feature matrix on the Flyway page which compares 9 popular schema migration tools.

d3.js and Application Express - Real time update example...

I posted an example of how to create an Application Express bar graph with the d3.js visualization toolkit in the Notebooks section of the site.

If you want to see how this can be done in Application Express, check out the page here: http://ba6.us/d3js_application_express_basic_dynamic_action .

-Dave

Using Google Charts API and SQL Developer (or SQLPLUS)...

I added a page to my SQL Developer Tips and Tricks page about integrating the Google Graph API with SQL Developer HTML reports.

I sometimes run out of steam with the built in chart and gauge capabilities of SQL Developer. With a little work you can leverage the Google Graph API to create Line, Bar, Pie Charts, Map, Scatter, Venn Diagrams, Radar Charts, QR Codes and Meters.

Here is everything you need to know to get started: SQL Developer and Google Graph API Example

-Dave

V$OBJECT_MONITORING gotcha...

I have been checking out some usage patterns on a database I am migrating to Exadata. I won't go into the 'drop all of the indexes' herd mentality... but I would like to know what is really being used on this system so we can make some educated guesses about what is really needed. Luckily it is a DW / ETL type of application that has a comprehensive nightly refresh. Yes, a nice way of saying flush and fill. Well at least I know they touch _every_ important object _every_ night.

Pages

Subscribe to ba6.us RSS