Tuesday, November 07, 2006

Getting SQL Developer to work with XGL

I installed SQL Developer under openSuse 10.1 with no difficulty but when the program started, it showed up as nothing but a blue window.
I discovered on OTN that this was something to do with Java swing not working with graphics acceleration. The recommendation there was to disable acceleration. Guessing that this might apply to XGL as well, I found that disabling XGL effects corrected the issue. No good for me, though, because I like XGL effects.
A quick search for XGL and swing turned up this tip:
Add the line AWT_TOOLKIT="MToolkit" to /etc/environment then reboot.
Problem solved.

Thursday, October 26, 2006

A (Snake) Charming Belly Dancer at the OTN Party


A (Snake) Charming Belly Dancer at the OTN Party
Originally uploaded by collingridge.

There were all kinds of amazing dancers, including one who did stuff like balance a scimitar on her head, and another one whose outfit was made up of flashing electro luminescent wire.

Oracle Bloggers Meetup, Tuesday



As I read Mark Rittman's excellent blog, I was aware that he was organising some kind of meetup for Oracle bloggers. His blog on Tuesday had a reminder about it, and as I was free and in the area, I thought I would head down there. It was also an excellent excuse to sample the wares at the Thirsty Bear pub and maybe grab some tips while I was at it.
I had no idea what to expect but Mark's invitational post had said 'if you've got an Oracle blog, come along'. I guessed there would be maybe 20 or 30 people and I would be able to hang out on the edges and keep a low profile. That's not how it turned out.
So, I turned up at the allotted time, and as soon as I mentioned Oracle I was ushered upstairs to a private party being thrown by (or for?) the Oracle Product Managers. I didn't realise this until I tried to pay for my beer and was told my money was no good. I went downstairs and tried again to find out where the bloggers party was - I had no idea what any of them looked like.
So, I pulled up a stool at the bar and settled in to wait and see what transpired. It wasn't long before I realised this was going nowhere. I thought "what I need is some kind of sign". My first thought was to write something on a piece of paper and hang it on my back. No pen, no paper. Then it hit me: set up a marquee screensaver on my laptop and wait for them to come to me. Unfortunately, OpenSuse Linux 10.1 doesn't ship with a marquee screensaver, so I had to settle for a really large font in InkScape. I started typing, "Looking for Bloggers Meetup: Lost". Before I had even finished, Mark tapped me on the shoulder and introduced himself - they were standing right behind me.
Anyway, it was a great night, with quite a few beers rounded off with a curry.

California Legislative Data Center: Using XML DB to Manage Legislative Authoring

Another case study, this time from the California Legislative Data Center. This group manage the database which holds on record all state law ever passed in the state of California. This system is the source used, amongst other things, for generating the state budget, which is clearly a very high profile task.
They identified their reasons for opting for an XML DB solution; firstly, at the time they were looking in the late 1990s, XML DB was considered to be lead the field in XML centric data (and it remains so now). Secondly, they considered Oracle to be an inherently safe choice. They are keen to have a system that conforms to open standards and will remain current for many years. By choosing Oracle, they knew they had the option of using the well-established CLOB data type if the XML DB option didn't fly.

California LDC are one of the less common type of users of XML DB who are actually persisting data storage in XML. Most applications of the technology use XML around the fringes of the system to interface to other systems. For instance, file transfer, web page creation etc.
Rather than use numerous XML schema, they have opted to create one uber-schema, containing definitions for all their documents in one.
XML seems to be an ideal data storage technique for this organisation, as they have to deal with large documents which change in only discrete parts over time. Some of the legal documents are so large that they cannot be easily loaded into an editor at one time, so being able to access portions of those documents is very useful.

Nipun Agarwal identified some of the situations where Binary XML storage would be useful:
  • When the schema is not known in advance
  • When the schema is known in advance but is so complex that the number of tables it would generate is too high.
  • When the application is document centric and demands flexible data structures.

Details of the XML DB beta program, along with a list of this and other new features can be found here

Wednesday, October 25, 2006

Oracle SQL Developer 1.1 with Kris Rice

w00t! Just cadged an Unbreakable Linux baseball cap.

Kris Rice is doing some very cool work. Its his job to create a complete Oracle development environment, bit by bit. The day will come when users of Toad will be clicking the 'uninstall' button.

He showed off some nice stuff, like how you can extend the interface using nothing more than XML. It seemed almost too easy to add items to the right-click menu. If you've done any work on extensions to JDeveloper, apparently, its identical. Check out Kris' blog for some examples here.

It was good to see a live demo of remote debug. He demonstrated how you could use it to debug Apex (They say it 'appex', not 'aypex', and they say 'varcar', not 'varchar' too), or at least packages called by Apex. The debugger is able to present recordsets in watch variables, which many people will find handy.

There's a facility for running packages from the interface, like you get in Toad - it prompts for bind variables in the same way as the Quest product.

Reports are not just reports anymore. The sessions report, for instance, allows you to kill sessions using the right-click menu. You can also get charts, and they look pretty good (though you can't print them at this stage).

SQL Developer Exchange is a website where you can share code snippets and reports with other users. This is current functionality. What they have planned for a future release is being able to access your saved scripts from OTN from within SQL Developer. Think of this a bit like del.icio.us for SQL.

XQuery and XML DB Hands On Lab

There are a couple of key new features that Oracle were demonstrating in this lab. They are being cagey about when it will be released, but like a lot of this stuff, I would expect to see it in 11g, which is slated for release some time next year (2007).
First is the concept of indexes on unstructured XML data in XMLTYPE fields or tables. This means that you can quickly access data stored in XMLTYPEs without registering an XML schema first.
This will be a boon for anyone who wants to avoid the hassle of maintaining schema bound XMLTYPEs just to get the performance benefit they provide.
The second feature was the native Oracle web services. These really do seem to be very easy to implement and I can imagine this flourishing, or even proliferating as a way of accessing databases in a wide variety of systems.
The remainder of the lab was largely about XQuery, which apart from being a good way of accessing XML through XPath, is also a fairly complete programming language. It's being pushed as the 'XML-centric' way of accessing XML data in the database as opposed to the old 'SQL centric' way.
Incidentally, I hadn't realised that JDeveloper offers some really excellent tools for dealing with XML. I recommend taking a look at it even if you don't program in Java.

Tom 'Ask Tom' Kyte's Oracle Develop Keynote: Things you think you know

Tom's keynote talked about how you should be really careful about checking your facts when it comes to technical problems. He challenged the popular assumption that indexes and data should be held in separate tablespaces, saying that this is not necessary. He thought that the myth probably began in the early days when you might be using multiple physical disks, in which case by having the data and indexes in different locations might balance the I/O across the disks. Now that we have SAN storage and other ways of balancing I/O, this is no longer relevant.

He told a great story about a consultant who, having tuned the hell out of a problematic procedure used for printing a report, was running out of ideas when the client insisted that performance was still unacceptable. He took a look at the situation. An employee would hit a button, wait a few minutes for the report (a pick list) to print, then walk to the bins to fill the order. He asked if he could move the printer, and they told him he could. His solution was to move the printer down to near the bins, so that now the employee would hit the button, walk down the hall and go to the printer, where the report was waiting for him, and start picking.


Oracle Announce Full Support for RedHat Linux

Larry Ellison just announced that as of 1400 today, Wednesday, Oracle will offer full support for RedHat Linux. The program is called Unbreakable Linux 2.0 and will include full rpm support – you just change the URL and away you go.

He emphasized the simplicity of the changeover of support by having members of his team demonstrate it on stage. The cost of the support is going to be quite a bit lower than RedHat support, and Oracle are also offering a premium package which goes beyond what RedHat currently offer.

When Linux bugs are reported by Oracle customers, Oracle promise to fix the bugs in the version the customer is using – RedHat currently don't do this, meaning you have to wait for the next version before you can install a fix. You don't need to be an Oracle customer to get support for your RedHat systems.

A full press release will soon be available on the Oracle Newsroom site: http://www.oracle.com/corporate/pressroom/index.html?pageregion=ocom_hp_b_newsban_042705

Ellison finally welcomed a bunch of penguins on stage. Unfortunately, however, they didn't like the idea of getting up there in front of all those people, so they ran off again.

Tuesday, October 24, 2006

OTN Night

The Westin St Francis hotel is awesome. Its got these fantastic painted plaster ceilings, and all kinds of exotic ornamentation on all the walls.

After wolfing down a slice of pizza and a couple of corn dogs, I hefted my laptop and a beer into the OTN Linux / Oracle installfest. They were handing out freebies of copies of RedHat 4 and Suse 9, and I had gone prepared to install RedHat, with all the data that I care about being stored safely on CD.

The installation of Linux progressed without a hitch, but it slowed down somewhat when I hit the Oracle installation. I hadn't actually read the install notes before last night and you have to do quite a bit of configuration before you install the database. The upshot of this was that I didn't get Oracle installed.

Besides that not only was the wireless interface on my laptop not working (as expected) but neither was the wired ethernet connection. So I decided I would reinstall Fedora Core 5, as I knew I could get at least the ethernet working and Oracle would install on it, with a bit of persuasion. Before I went to bed, though, I decided to take a punt on an openSuse 10.1 disk I had received on the cover of Linux User magazine. So I set it to installing before I hit the hay.

It was a bit like waking up on Christmas day as a kid. The laptop was suspiciously quiet - I hadn't plugged it in so it had run out of juice and shut down. I booted it up and ta-da: everything worked. I was pretty astonished as with FC5, I've had a lot of problems (mostly due to my newbness, I'm sure) with wireless, graphics and sound.

It picked up the wifi connection without doing any configuration at all, which amazed me - under FC5 I had only go it to work by chanting all kinds of incantations at the command line.

This afternoon I've been trying to get Yast to install the NVIDIA graphics drivers, and its just completed so here goes. I'm going to cross my fingers and reboot.

Monday, October 23, 2006

OTN Night Flyer


OTN Night Flyer
Originally uploaded by collingridge.

This party is apparently a bit of a legend.
Anyway, there's a linux installfest going on, so I'm going to take the laptop down there and get it sorted.

The Future of Oracle XML DB

This seems to have been the big one for those with an interest in XML DB.

A number of speakers from the XML DB team presented on where the technology is going. Note that this was covered by the usual disclaimer that these developments will be released in Oracle's own sweet time, so don't make any purchasing decisions based on this stuff.

Mark Drake demo'd events, which are like triggers on the XML DB repository. So, you can have code run whenever you drop files into XML DB. His demo used FTP to send JPEG files into the repository, where the system (I'm afraid I didn't catch which bit) pulled out the metadata from the files and bundled it up into XML documents along with the images. Slick stuff indeed.

'Database Web Service' will in the future be a part of the database that provides an endpoint for web services. Basically, this is another interface to the database, so the web service could specify a stored procedure or a SQL statement. Web services can thus be created with very little development. We were given a handout that states 'Within 2 mins, your Oracle database will be ready for integrating with SOA applications'! If security is a concern then Oracle Web Service Manager can be implemented between the database and the outside world. It will then republish the web service without anyone needing to log on to the database.

Using Oracle XMLDB with XBRL or "A bunch of accountants went down to the corner and found this really big crack dealer..."

I attended my first 'regular' Open World session this morning.

It was presented by Steve Hord from UBMatrix and discussed the topic of XBRL. Extensible Business Reporting Language is an extension of XML that is used as a standard means of submitting reports between organisations, such as when submitting filings.

Although they share a common purpose and hold similar data, these kinds of documents can vary enormously from industry to industry and the problem was how to find a standard that was flexible yet rigourously structured, without at the same time becoming unwieldly. XBRL solves this problem by providing object oriented style inheritance in XML. This goes further than the traditional include statement by combining a "flat" XSD template with a more detailed XML specfication, with the data in another XML file.
This allows the Federal Reserve, or whoever is using these files, to perform structured queries over very different documents.

XBRL is supported by a consortium of all the big software vendors plus several large accounting firms, and it sounds like its really taking off internationally.

The Zeum Centre, San Francisco


The Zeum Centre, San Francisco
Originally uploaded by collingridge.

Here's the view of the Zeum Centre at Yerba Buena in San Francisco, taken from the Moscone West events centre. The building with the conical roof is an antique merry-go-round which my daughter had great fun on last time I was in town.
Yerba Buena must also be the home of Yerba Buena Jazz Band, which my father-in-law introduced me to.

Day 2: The Leading End-to-End Data Warehousing Platform, Part 2.

The first session this morning was about Oracle Data Mining, presented by Oracle's Product Manager for Data Mining Technologies, Bob Haberstroh. What a difference from yesterday! Plenty of interesting chat and fast paced labs demonstrating all the bells and whistles of the product. The course materials were of a high quality and the labs all worked first time. Phew - I was beginning to think that the X Treme Weekend wasn't going to deliver the goods.

I hadn't seen Oracle Data Mining before so I didn't know what to expect or even really what data mining meant.
I learned that it is what you use if you want to make complex predictions based on your data. One of the labs showed how you can leverage a small sample of known 'high rolling' customers to discover all the other potential big spenders.

Another demonstration was how data mining can detect outliers in large datasets, like fraudulent expense claims or unusual credit card spending. Oracle Data Mining manages to pull off these tasks this with an absolute minimum of user input, and get some impressive results (OK - so this was lab conditions, but even so...). These techniques are gaining ground in all kinds of areas, including the life sciences, where they are used to discover trends about hereditary diseases.

Data Mining can make use of a feature of Oracle Database called 'nested columns' which appears to be an alternative way of representing one-to-many relationships within a single set of rows without repeating all the parent data. This enables Data Mining to work with what could otherwise be quite unwieldy data sets. The example given was the courses being taken by individual students at a university where the choice of courses could be in the thousands but each student will only take a few.

In the afternoon, we had two sessions on Oracle OLAP with Marty Gubar. The client tool being used here was Oracle Analytic Workflow Manager with a dash of Oracle BI discoverer but he also showed us how to retrieve OLAP data using SQL to get the facts out of 'embedded total views'. Because OLAP uses array based storage and the data is pre-aggregated, this is some really fast stuff, allowing users to get at a vast range of data in next to no time.

AWM has got a cool query builder that looks a bit like the Rule Wizard in Outlook. Instead of starting with 'When mail arrives...', you select patterns like 'Start with children of Organization' and then click on hyperlinks and add lines to refine your query. It generates accurate, readable query conditions and looks like it would be very easy to use for non-technical business users.

Oracle Open World Break Area


Oracle Open World Break Area
Originally uploaded by collingridge.

Here's where you hang out and wait for coffee between sessions. Note the sign for the welcome reception. I didn't get to go to that (luckily I was at the Oz & NZ Region's welcome dinner, which was much better.

Oracle Open World Registration


Oracle Open World Registration
Originally uploaded by collingridge.

Note the snazzy grey laptop bag. I didn't get one of those. The shame, the shame!

Oracle Unbreakable Linux Bus


Oracle Unbreakable Linux Bus
Originally uploaded by collingridge.

Maybe this thing is old news, but this is the first time I'd seen it.
Maybe they really are going to announce their own Linux distro?

Sunday, October 22, 2006

Day 1: The Leading End-to-End Data Warehousing Platform, Part 1.

Got the t-shirt

Been there, got the t-shirt - though not the snazzy grey laptop bag (as I was too cheap to throw down the wonga for the full package.)

Today was the first day of the X Treme training I had booked ahead of the main conference.

With a name like 'X Treme Program' you would be forgiven for thinking that there these sessions were going to have some fairly inventive and intense teaching strategies in play a la 'Extreme Programming'. No such luck. It would be fair to say that we were presented with screeds of printed instructions and then allowed to work through them. There were no demos, for example, of cool things that can be done with the product, nor any real discussion of what it can do. There were staff on hand (from, I believe the OWB development team) the whole time who were very responsive to anyone who raised their hand, but, as one of my colleagues said to me, we could have just done this at home.

I was disappointed to discover that the first exercise I attempted could not be completed due to errors in the setup of machine image. Then later I had to fix a number of permissions issues in the demo databases. Not such an onerous task but it was still more time taken out from following the course notes. These are a telephone book-sized manual that has been printed out from an HTML document. This has been done in a rather slap-dash fashion, with no page numbers or table of contents and with each screen shot on the page that followed the associated set of instructions.

All the moaning aside, OWB 10gR2 is clearly a better product than its predecessor. The interface has been completely redesigned and you have to look pretty carefully to find any remnants of the old product (the linking of tables in the mapping designer is pretty well identical). It generally feels a lot more responsive, more intuitive and more helpful. There is still a way to go, however. For example, the password field still doesn't have the focus when you start the client, which is a constant annoyance to users of the product.

A popular improvement will be the wizard for creating slowly changing dimensions (SCDs) which seems to make the whole process a whole lot easier. There's another one for creating time dimensions, too. Another thing that caught my eye was an operator that splits out multi-valued-fields, for example addresses, into their component parts.

Another new development is 'Experts'. These allow you to automate tasks in OWB – like macros, but looking and working a lot like OWB process flows. So far, I have found this concept a bit bemusing, as I can't really think of much that could be helpfully automated so perhaps this is a germinal form of something that will bear fruit in later iterations? Help is at hand for anyone struggling to create an Expert, in the form of the “Expert Wizard”. This raises the prospect of creating an Expert for working with the Wizard. (Then you could have an Expert Wizard Expert etc. etc. ad nauseum.)

Friday, October 20, 2006

Oh, we could be in frisco...

But oh, no, we're not in any kind of disco... yet - because the OTN annual party isn't till Monday. Were the Jackson 5 singing about the OTN party? Hmmm.

On my schedule (to the right of this) you will see that one of the sessions I am attending is about how to use 'extreme humiliation' to ensure high quality data models. I look forward to demonstrating these techniques at one of our SIG meetings.


First Xtreme lesson tomorrow. XTREEEME, dude!! I'm getting really excited.