Monday, January 21, 2008

Oracle runs on an Intel Mac ... really!

So darn Oracle, when the hell will there be a native port to Intel Mac? I don't know, they all must be slacking around doing cool Linux and Xen stuff instead.

So I had 10gR1 running on my PowerBook G4 and PowerMac G5 and all has worked very well for some time. Somebody at some point in time thought it would be cool to support Mac and PowerPC (PPC). I get my first Intel Mac and there is no port to Intel or even any sign of it... what should I do?

Then I remembered Apple had Rosetta to emulate all those PowerPC instructions for non "universal" applications. So I first tried to install the Oracle software from scratch. No dice. Despite being Java it puked at a JNI dynamic library. Next I simply copied the existing install from my PowerBook G4 and after hacking my init.ora around (I had lost the original) and re-creating the orapw file... I have it running!


Sunday, January 20, 2008

VMware Fusion fun... not!

So thank god to Wikipedia and Google. I had been trying to run Oracle under a Linux O/S under a Virtualized Server (yes, I'm that trendy). But could not get Oracle installed. Each time it tried to create a file or directory I got

$ cd /mnt/hgfs/oel4u5ora11g
$ touch 1.1
touch: cannot touch '1.1' : Permission denied

So I had set up a Share from the VMware preferences so that the guest O/S could not a directory on my local disk (through the Preferences). I had then gone through the directory and performed a
$ chmod -R a+rwx *
But was still getting the permission denied problem. In a simple solution on Wikipedia. Simply turn the Network from NAT to Bridged... and now I have Oracle all installed...

Sunday, January 13, 2008

Blob, Binary and other Java hardships

So, what's the difference between

byte[] fred = {-122, -97, -120, 111};

System.out.println(new String(fred));

Well, you would same they should print the same right. Sadly wrong. So this took me a day of debugging to find out why my Fact table was producing the wrong results from the Data Warehouse queries. So I tried
  • Stuffing the data into a BLOB, well its binary after all. Broke all the joins over this column
  • Converting to Hex but got different results for the same byte[] value
  • Converting to a Binary String (i.e. 1's and 0's), but seemed horribly inefficient
  • Converting to a String, like Hex got different results for the same byte[] value and was unprintable through the mysql prompt
So I ended up keeping the value as a byte[] in the Java code and then stuffing the value in a Binary column... easy when you know how. So I just need to reconcile the values I am now getting.

Wednesday, January 2, 2008

What's up?

So what's happened since the launch? Well all the normal things, keeping the site running, dealing with bugs and feedback and thinking about something new to add...

I think it has struck me and just about everybody else on the planet that Server Virtualization is going to be a real big thing in 2008. I was sitting on a cross-country flight thinking (in coach class again) and I was struck how the algorithms that I have used and applied to Databases are just as applicable to Storage and File-Systems especially if you can determine the cost savings of deploying compression and de-duplication on the storage. This is a very obvious thing to do in Server Consolidation, just how many copies of Win2k3 or XP do you need to store when you are simply changing the IP and hostname for each copy... so it got me thinking and the complier out again.