Thursday, April 27, 2006

Problems with Oracle VMware

I've some performance problems with the Oracle VMware:
- I don't have enough memory in my laptop (see below picture), you can correct this by changing the memory settings (from 720MB to 640MB)
- I've also speedstep technology on my processor, which result in less performance when the (battery) power isn't full. This can be corrected by setting the below parameters. (see VMware KB)

Following changes I made in C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini :
--
prefvmx.useRecommendedLockedMemSize = "FALSE"
prefvmx.allVMMemoryLimit = "750"
prefvmx.minVmMemPct = "100"
host.cpukHz = 1700000
host.noTSC = TRUE
ptsc.noTSC = TRUE
--

So, I'm waiting for a bit more memory to test again. I hope I will discover the full potential of this Oracle VMware soon.

Monday, April 24, 2006

Trying VMware image of Oracle 10gR2 on RedHat Linux (RHEL4)

My goal is to run Oracle 10gR2 in a VMware session. This allows me to do whatever I want on the OS and on the database. I will mainly use it as a testing/playing environment as I try a lot of new (beta) things, apply patches and do a lot of demos and POCs. VMware allows me to reverse the image/snapshot as much as I like.

This week-end I thought to try it again! Previous times it worked, but too slow, now I've a new laptop (Dell Inspiron 9300), so I'm more hopefull. My thoughts...

The installation:
You've the choice to install a VMware with as OS; Redhat or Novell. I chose for Redhat (RHEL4). You need to download three zip files from OTN and an additional download on the Redhat site. You also need to do some registration to get a trail key. The links to download are in this url: http://www.oracle.com/technology/tech/linux/vmware/index.html as also a detailed readme about the installation. It takes some time to download as it's a bit more than 4GB!

Once downloaded you need to unzip all files in the same directory! I did a mistake here, by using different directories, which caused the installation to fail (didn't find the right files).

You run the installer, and he does all the work. I used everywhere the default settings and it worked perfectly.

The VMware environment:
Oracle delivers a nice package in this VMware image. I got Oracle 10gR2, JDeveloper 10g, HTMLDB 1.6, OWB 10g, RAC, Migration Workbench and some others. It needs to be said that these versions are not the latests one. Today there're already some patches for the database and JDev, HTMLDB and the others have also a more recent version. But nevertheless it's nice to have all this, without doing any installation or configuration.

Performance:
I'm not satisfied with the first tests. I've certainly a lack of memory in my laptop (only 1GB), but there's also something strang happening with the consumption of memory of VMware (it sometimes swaps from 300MB to 50MB etc.).
I found some performance improvements on the KB of vmware.com and at first sight it's getting better.
Tomorrow I will post these improvements and I will do some indepth testing of the RAC database...

Friday, April 21, 2006

Methodology - Part 3

As Steven Feuerstein and Tom Kyte are my mentors in the Oracle Development domain I asked them what they thought about using a methodology...
(I already posted the reply of Steven in the post "Methodology - Part 2"), here is the answer of Tom:
"I'm old fashioned.
I sort of like getting the requirements, crafting a prototype, refine the requirements, implement the solution.
APEX is best suited for very small development teams (1 to some very small number).
Not a big fan of XP or Agile - the old "throw it out there and see if it sticks" method.
We are redoing asktom from the ground up now. two developers. step one - list the requirements. step two - prototype/discuss prototype. step three (which we are in now) refine. step 4 - implement (with the requisite test phase and all) "

Many thanks to Tom and Steven for their opinions! I really appreciate it.

Thursday, April 20, 2006

Windows!! where're you?

Today at the customer I had a really nice joke!

At 12h55 my desktop pc restarted, just like that?!
Ofcourse I was writing some scripts, some info was loading etc.
At the time I saw the strang behaviour of Windows, I couldn't do anything anymore! My windows/docs closed like that, although for some windows for 2 seconds it asked if he should save the content. Before I could say 'Yes' it was already gone... I couldn't stop the shutdown progress anymore!!

But hey! I was not alone ;-) my colleagues had the same phenomenon.

Some time later we got this mail:
"Please be advised that we suffered from a technical issue on multiple PCs, which may have caused the reboot of your machine.

Our technical team is currently investigating the problem as a matter of urgency. We will inform you as soon as normal service is restored.

We apologise for any inconvenience"

Thanks for the mail guys! I wondered, even in this timeframe, where SoX is implemented and we have so much procedures to follow, this can happen...

Sunday, April 16, 2006

Happy Easter!

This card was created by my future wife...



She also made the header of my website and blog ;-)
You can find her website on http://www.gg-design.be

Saturday, April 15, 2006

Some nice pics

I found in my archive some nice pics from the seminars I followed, organized by mine passed away friend Lex de Haan.
together with Tom Kyte
Lex shooting me and I him

together with Lex de Haan
together with Steve Adams

Steve showing some of
his famous core-dumps

on the same table with some nice people;
for ex. Anjo Kolk, Lex, Mark Bobak, ...

Methodology - part 2

After having other chats with some more experienced people in the methodology domain I suppose that the main choices as methodology are: RUP, XP and Agile...

Apparently Agile is the most modern and combines XP and RUP. You can find more info about this methodology on http://www.agilemodeling.com/

I also asked the opinion at Steven Feuerstein and what he was using. His (brief) answer:
"I don't follow any single methodology in a hard and fast way; I definitely lean to the lightweight meths., like XP and Agile. In my current main development projects, Qnxo and Qute (www.qnxo.com and www.unit-test.com), I rely heavily on table APIs and avoid writing SQL whenever possible (Qnxo generates the table APIs for me!)."

The quest goes on... I will post more about this when I find more info and make my final decision.

Friday, April 14, 2006

Links working again

Somebody told me that not all links on the blog were working... this should be solved now. It had all to do with bad copy past.

Sorry for the inconvenience.

Thursday, April 13, 2006

Oracle Development Framework

The last couple of weeks I'm looking to create a real Oracle Development Framework.

Concerning the technical part, my decision is clear. As I really adore the Oracle database, I try to do as much as possible into the database. That's why my Oracle Development Framework will exists out of Oracle 10gR2 DB, PL/SQL and Apex (Application Express - before the name was HTMLDB).
For the "functional" part / "methodology" I'm still investigating what would be the best.

Below some more detail about my quest to "The Best Oracle Development Framework":

- I had some chats with others about frameworks, way of working etc. Apparently “Extreme Programming” is in! (http://www.extremeprogramming.org/) “XP” is a deliberate and disciplined approach to software development.
- I read an article of Duncan Mills. He gave an excellent presentation on meta framework. He discussed the challenges we face when developing (web) applications and how meta frameworks can help us developers to tackle those problems. A recap of his presentation can be found
here. The presentation of Duncan can be downloaded here.
- But this is my favorite!
“Cleaning Up PL/SQL Practices” (By Steven Feuerstein) I found on OTN. As I find Steven one of the PL/SQL guru's, I thought about follow his guidelines and use his soft (PL/Generator, Qnxo, Ounit; soft for PL/SQL framework, unit testing, best practices, checks, …) together with the approach of XP.
- Next to that my other "leader" is Tom Kyte. I really appreciate his view, his approach of proving what he's saying, his knowledge and the way he promotes Oracle.

Maybe you have other idea's, feel free to put your comments. I'm interested in knowing more and viewing other opinions about the "right" methodology...

Wednesday, April 12, 2006

Top 10 things I hate of a DB - Something serious!?!

As a big Oracle supporter and promoter I was amazed by the below articles...
These top 10s are not from me!!!

TOP 10 THINGS I HATE ABOUT SQL SERVER:
http://weblogs.sqlteam.com/jeffs/archive/2005/05/24/5248.aspx
Top Ten Things I Hate About the Oracle Database:
http://www.rittman.net/archives/2006/04/top_ten_things_i_hate_about_th.html
I-Hate-Oracle Club:
http://thedailywtf.com/forums/25910/ShowPost.aspx

*** for the persons who didn't understand... this is something to laugh!!! Don't take it serious (as some people do!) ***

Tuesday, April 11, 2006

My top 10 Oracle books

I was searching for some good Oracle books and thought it would be nice to share my list with you... Of course you have the normal reading stuff, like the Oracle concepts guide, installation manual and all the other docs you get with the database. Next to that you have the "white" Oracle education books to get an overview of a particular item. For ex. when I do a new OCP exam, I use these books to prepare myself.
These books are all good, but ...
I'm somebody who doesn't like to say something, without really knowing, testing and proving what I "think" I know. In my opinion (I didn't yet read them all, but this is just a matter of time), the below books use the same approach; they say something and they prove what they're saying with real test cases, so I can test it myself and see if it's still/also valid for my database.

I really like the Oracle database and I would like to do as much as possible in the database, that's why my list is limited to Oracle DB and PL/SQL books.

  1. Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions (by Thomas Kyte)
    Apress, ISBN: 1590595300
  2. Practical Oracle 8i: Building Efficient Databases (by Jonathan Lewis)
    Addison-Wesley Professional, ISBN: 0201715848
  3. Oracle PL/SQL for DBAs (by Arup Nanda and Steven Feuerstein)
    O'Reilly Media, ISBN: 0596005873
  4. Oracle Insights: Tales of the Oak Table (by a lot of people - Oaktable members)
    Apress, ISBN: 1590593871
  5. Cost-Based Oracle Fundamentals (by Jonathan Lewis)
    Apress, ISBN: 1590596366
  6. Effective Oracle Database 10g Security by Design (by David Knox)
    McGraw-Hill Osborne Media, ISBN: 0072231300
  7. Mastering Oracle PL/SQL: Practical Solutions (by Connor McDonald, Chaim Katz, Christopher Beck, Joel R. Kallman, David C. Knox)
    Apress, ISBN: 1590592174
  8. Oracle Data Warehouse Tuning for 10g (by Gavin JT Powell)
    Digital Press, ISBN: 1555583350
  9. Mastering Regular Expressions (by Jeffrey Friedl)
    O'Reilly Media, ISBN: 0596002890
  10. Oracle Regular Expressions Pocket Reference (by Jonathan Gennick, Peter Linsley)
    O'Reilly Media, ISBN: 0596006012
This list of books is just what I think are good books for me and for my team, in the limited area of databases and PL/SQL, next to the Oracle manuals and OTN sources.
I should put some xml/xmldb/java related books on my list, but for the moment I don't do a lot with these features and I'm satisfied with everything I find on OTN.

If you know some other good books or want to share your thoughts, you may add your comments.

Monday, April 10, 2006

Remember Vi commands

Here a quick example to replace a string in the whole text via the vi editor (unix):
:1,$s/search text/replace text/g

As I needed to re-search it for the second time, I thought to put it on my blog...

Vi Cheat sheet: http://www.lagmonster.org/docs/vi.html

Thursday, April 06, 2006

Comments possible

Apparently you couldn't put any comments on the posts... this should be possible now.
You're free to make comments!

Tuesday, April 04, 2006

Changing WE8ISO8859P1 to UTF8 with ALTER DATABASE CHARACTERSET!

Today I did something "tricky" with the Oracle database... I went from one characterset to another although it was not a superset/subset of eachother.

The client requested to go from WE8ISO8859P1 to UTF8 characterset.
You would normally create a new database with the new characterset and do an export/import, but I looked for an other solution.
Why did I do that?
- I didn't have enough free space to create a new database
- I didn't want the people have to change all connection settings
- It needed to go as quick as possible and on 3 environments (dev, test, prod)

I found a note on Metalink (Note:260192.1) which described how you could do it. Basically I followed it, and the first tests after the change in characterset were good.
I will provide a zip-file with all the scripts I used and the steps I followed. A Metalink note is good, but it always refers to other notes... In the zip-file you see how I did it, the most important file is change_charset.sql. The zip-file can be downloaded here.

Good luck with the conversion.

Saturday, February 25, 2006

I'm still a live - Oracle tools

It’s already some time ago I posted something…

* What are the best Oracle tools?
I found an interesting url about that: http://www.orafaq.com/tools/comparison
Based on the reviewer, I suppose Toad and PL/SQL Developer are the ones to use… BUT SQL Developer (Raptor) isn’t included in the test.

* My personal favorite Oracle tool per area:
- EM10g (Enterprise Manager) for doing DBA and Grid control
- SQL Developer (Raptor) for PL/SQL development and what you would do with TOAD.
Why replacing Toad? SQL Developer is free, works on Windows and Linux, easy to install (only unzip) and is really pushed by Oracle. There will be plug-ins for ex. DBA, Tuning, XML etc.
- Application Express (HTMLDB) to develop applications

* Question:
I’m also looking for “the versioning” in PL/SQL (a system like cvs). In 10g there would be something like that, but I don’t know where to find it… If you’ve some ideas, please let me know.

Wednesday, February 01, 2006

Being a newbie...

I saw an excellent thread on the Tom Kyte Blog, about a question of a newbie DBA who wants to get a quick answer.
see: http://tkyte.blogspot.com/2006/01/rant-for-today.html

I also find it important to know what you're doing. It takes a lot more time to get the "real" knowledge, but at the end you gain a lot of time in troubleshooting.
I must admit that I sometimes look into a "quick-fix" too. Being a consultant it's not that evident; the customer wants to get a solution as quick as possible... If you saw the problem already before, you can provide a quick solution, but if the problem is new, you should investigate, test and proof what you're saying (going to say).

As Tom too, I learn a new thing every day. Sometimes I forgot things or I can't find it in my archives, than there're these blogs which remembers you again...
I find it sometimes frustrating to "lose" knowledge or not knowing what you're doing. The technology is going soo fast, you just can't know everything anymore!

I know a bit of "everything", but I try to know a lot of the Oracle database, as I find this the most interesting soft on earth.

Friday, January 27, 2006

Test w.bloggar

I'm trying this new program to see if I can blog a bit faster.

Update on 30/12/2006: this post stayed in my drafts for ages... I think w.blogger is good but not fantastic and it doesn't work anymore for my new blogger.com page.

Oracle technology news

As former Oracle employee I know that Larry E. is ambitous...
He sees $$$ and want's to be the n° 1 in:
1) Database
1) Application Server - Middleware (Fusion)
1) Business Applications

To come there, it's not possible anymore for Oracle to do it all by themselves. They need partners... I'm responsible for the Oracle Team at AUSY, and we want to become "the" prefered partner for Oracle solutions in BeLux.
At the end, customers are bying SOLUTIONS not technology anymore!

Some days ago I was at the Oracle Roadshow for ISV's.
I saw at the event the 10g "Fusion" architecture... it was quite impressive.
* Overview: Application (SOA), Architecture (Grid Computing), Information (EIA) and in the middle Oracle FUSION Architecture
* Technology: AS 10g, DB 10g, EM 10g, CS 10g all connected - Fusion -

Also a new feature in 10g DB... table functions - nice if you want to do, like in Excel/Access, crosstab queries.

Thursday, January 26, 2006

Webdevelopment - Ajax

I found a really interesting “way of working” for webdevelopment (HTMLDB, PHP, …) It’s called “Ajax”.

Defining Ajax

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways. Ajax incorporates:

The classic web application model works like this: Most user actions in the interface trigger an HTTP request back to a web server. The server does some processing — retrieving data, crunching numbers, talking to various legacy systems — and then returns an HTML page to the client. It’s a model adapted from the Web’s original use as a hypertext medium, but as fans of The Elements of User Experience know, what makes the Web good for hypertext doesn’t necessarily make it good for software applications.

Ajax-fig1

Figure 1: The traditional model for web applications (left) compared to the Ajax model (right).

Read the whole article at : http://www.adaptivepath.com/publications/essays/archives/000385.php

Monday, January 23, 2006

SOx and GPL?

Today the customer I’m currently working for gave a presentation/seminar about SOx and GPL.

About SOx:
The Sarbanes-Oxley Act became law on July 30th 2002. It introduced highly significant legislative changes to the regulation of corporate governance and financial practice. It established stringent new rules, to "protect investors by improving the accuracy and reliability of corporate disclosures made pursuant to the securities laws".
The act is of course named after its main architects, Senator Paul Sarbanes and Representative Michael Oxley. It followed a series of high profile scandals, such as Enron. It is also intended to "deter and punish corporate and accounting fraud and corruption, ensure justice for wrongdoers, and protect the interests of workers and shareholders".
(source http://www.sarbanes-oxley-forum.com)

Implementation:
The IT department I currently in need to implement this methodology. This is a good initiative; everybody will work the same way, testing will be much easier etc. however it will also have a drawback, because it costs more effort (overhead).
I think that at the end, you will gain time because the standards are defined and “everything” is clear…

Others - Oracle:

I’m also searching for “the best approach” for Oracle projects. Some best-practices, standard documents, naming conventions etc.
Best practices in Oracle is difficult, because it’s not because you did it ones “that” way, that you always should do it like that.
For ex.; difference in version (7, 8i, 9i, 10g), the choice of impl./expl. cursors, ref cursors, bulk collect… Nevertheless, if we define best practices and document when to use them it’s really usefull. But at the end, you need to know “Oracle” and understand what you’re trying to do.

Today I also learned that OWB (Oracle Warehouse Builder) puts the default of analyse to 90% in the mappings. This can really hurt your system as some mappings will run in parallel. We improved performance when we decreased the analyse %.