Feed aggregator

Dave Chappell choins Oracle as Chief SOA Technologist

Clemens Utschig - Wed, 2007-05-09 11:28
Wow - what a blast, the so called "Pope of ESB" (according to one of our customers) joined Oracle last week - see here.

Being back from 4 weeks in Europe to give training, help customers, as well as speak at several conferences - I met Dave yesterday first time as oracle employee at java one - rocks!

Also, some weeks ago I have been interviewed by the theenterpriseedgeitarchitect.com on SOA, and what value it can bring into organization, when not viewed as "yet another IT pet project".

You can read the whole interview here

Date columns

Herod T - Tue, 2007-05-08 13:02

I have a good friend from a previous job who is an Oracle DBA, he is kind of shy and doesn't like a big presence on the net. I have blatantly stolen work from him in the past, including some excerpts from this particular document (always with his knowledge). But the poor bugger had the lack of foresight to send me this complete PDF document. So, I quickly decided I had better post it just to show him blogging isn't all evil and invitation to flaming.

That said, Jeremy's quick write up on oracle date columns that he did for his internal support staff. Absolutely nothing earth shattering or ground breaking, but I can't see any errors with it and it is good to give to people who can't speak "DBA". Yes, I have used this in the past elsewhere as well. But this is the complete PDF.


JDeveloper 11g Tech Preview is out!

Janusz Marchewa - Tue, 2007-05-08 02:41
Check out Shay Shmeltzer's blog for details: http://blogs.oracle.com/shay/2007/05/07#a365
Categories: Development

OpenSolaris SXDE upgrade time

Hampus Linden - Mon, 2007-05-07 16:04
It's been a while since I last played with Solaris Express Community Edition, so long that it actually changed names. There are now two versions, one for "random people" and one version for developers. SXCE is not released as often as SXDE but is more tested and stable, SXDE also comes with a lot more goodies, like Sun Studio 11 and Netbeans.
Anyway, the install of SXDE b63 under VMWare workstation 6 RC was as easy as ever.
However, at first boot I almost thought the VM was frozen for a minute or so, after grub it just sits there with a cursor in the corner of the screen for about 2 minutes before kicking off the kernel. All good after that though.
One thing I wanted to test was the new simplified resource capping in Solaris Zones. It was very straightforward and easy to use.
A couple of extra commands in zonecfg and the zone is capped to one core and 512Megs of memory. No more messing around with projects, except if you want really fine grained capping that is.
Cool!

Took a screenshoot:
b63

More APEX

Herod T - Mon, 2007-05-07 09:24

APEX is great, APEX is a life saver... OK, job saver?


As I mentioned before I like APEX, but not having the time to develop in it and learn it well, I get a little lost in the product. The APEX forums are a good place to pick up information, like most forums if you use them properly. I read Dimitri Gielis blog on a regular basis, imagine my surprise when he posts about answering one of my questions.

Thanks again Dimitri!



ODP.NET/ODAC for Vista now available

Christian Shay - Sun, 2007-05-06 23:04
Coming right on the heels of Friday's release of Oracle Database for Windows Vista, we now have released ODAC 10.2.0.2.21 which is certified for Vista. You can download it here. This release is key because the Oracle Database on Vista downloads announced on Friday only include ODP.NET for .NET 1.x. If you need ODP.NET for .NET 2.x on Windows Vista, or any other of the ODAC products, you will need to download this. It includes all of the ODAC products, including ODP.NET and Oracle Developer Tools for Visual Studio .NET packaged up with a new version of the Oracle installer that is Vista friendly. Only the installer has been upgraded, not the individual ODAC products, so if you are using ODAC 10.2.0.2.20 on another Windows platform, you don't need to upgrade.


The download includes:
Oracle Developer Tools for Visual Studio .NET 2003 10.2.0.2.20
Oracle Developer Tools for Visual Studio 2005 10.2.0.2.20
Oracle Data Provider for .NET 1.x 10.2.0.2.20
Oracle Data Provider for .NET 2.0 10.2.0.2.20
Oracle Database Extensions for .NET 2.0 10.2.0.2.20
Oracle Database Extensions for .NET 1.x 10.2.0.2.20
Oracle Provider for OLE DB 10.2.0.2.20
Oracle Objects for OLE 10.2.0.2.20
Oracle Services for Microsoft Transaction Server 10.2.0.1.0

Business Agility @ SOA

Peeyush Tugnawat - Sun, 2007-05-06 17:41

Bookmark and Share


Business Agility @ Service Oriented ArchitectureWe live in a constantly changing world. Technology and businesses are changing, emerging, and improving at a faster pace than ever
before. Business want the power to deliver products and services better and more
efficiently, to be able to excel, capture new opportunities, and
sustain competition. Technology innovation and improvements are striving to deliver on these requirements. From a business perspective, dynamics of such fast-changing world in terms of
technology can be daunting in terms of time to market cost, maintenance, training, and support. Replacing or re-writing entire systems
every time for new and improved functionalities is definitely a major concern.


Is IT just an unavoidable cost?Arguments about IT being a cost are not rare in business
world. There is no doubt in my mind that innovations in IT systems have
propelled business abilities and enriched business processes in past years.
Definitely, there is high business value gained from IT systems. At the same
time organizations also have to deal with the "cost" components that
come with IT systems such as maintenance, support, enhancements, training etc.


The argument from my perspective, should not be about the
classification of cost components, but how all the components and their
interactions can be simplified to provide more value to the business.


I think simplicity can help!Simplicity is highly desired in increasingly complex world
on IT. Direct incentives of infusing simplicity in IT architecture are
tremendous and do not require elaboration.


Direct derivative of simplicity in IT architecture approach
is Business Agility.


Simply put, "Simple is Powerful"

SOA translates to business agility. SOA is simple but very powerful architecture approach
for complicated systems and problems of IT world.

As I mentioned in my earlier post based on my experience,
SOA as it relates to software paradigm is an agile architecture approach that
is based on service-oriented principles of composition, abstraction, loose
coupling, discoverability, and amalgamation. SOA inherently empowers
scalability, evolution of services, interoperability, reusability, and
modularity.

Following diagram identifies high level concepts infused into SOA that help enhance business agility for an enterprise.



Inherent InteroperabilitySOA empowers Inherent Interoperability between systems, business processes, and people (organizations).

Re-usability Reusability factor in case of SOA is multi-fold because of standard based interfaces. Reusability is not new in software; what�s new is reusability across diverse systems, platform, and technologies. SOA components can be reused not only by the inherent system or technology but also by any system or process.

Modularity and CompositionSOA encourages Modularity that enhances the concept of Composition. Composite applications can be build based on changing business requirements and rolled out faster with less cost.

SOA Delivers
SOA enables faster development turn-around time,
faster realization of new inter and intra enterprise business processes, and
cost effective maintenance and upgrades.

All this translates to enhanced Business Agility. And
I would like to call it.....

Business Agility @ SOA


Bookmark and Share

Fire Fighting

Herod T - Fri, 2007-05-04 22:47

With the conversion of '07, staffing issues, hardware failures, fires, and the day to day grind, my job satisfaction over the last year has well, been at an all time low. I can never seem to get anything done properly, everything is patched together and done in haste to move onto the next fire. One of the fine ladies that works with me actually bought everybody in the group a little fireman's hat and a tiny little working fire hydrant and hose squirt gun, because it seems to be how we are viewed by the company as of late, simply running around putting out fires. A necessary, expensive evil entity who never has time to talk, and is only around when there is an emergency, or a fresh pot of coffee.

Well, today was a little different. 4 of us IT people had taken a group trek to the lunch room for a refill, we bumped into a few of our sales staff, once we all realized we were on hallowed neutral ground and no marking of territory was needed we started to chit chat, the weather around here has been record breaking and that is what we were talking about, all relaxing nicely. Then one of the sales guys pipes up, completely out of the blue and says "So, any of you ever look at our order processing and shipping system?". Well the system is a bolt on system to our oracle e-business suite and is relatively new. Development was outsourced and then the application support was laid in the lap of our haggard sales support team. None us IT people at that time were part of the sales support team, so the answer was a resounding "No". I monitor the database, but it is quiet and never complains about anything.

The sales guy goes on to talk about how over the last 2 months, it takes longer and longer to process an order, to the point of the sales guys queue up their orders and process let the system process them over night, because if they process the order manually, it locks up the application for as long as the order takes to process. The sales guy, lets call him Henry, goes on to say when the system was first in place, an order would process in about 1-2 seconds, now an order he processed this morning while a customer was on the other end of the phone took 7 minutes. I know his time is valid because the screen actually tells the sales person how long the processing took.

Henry continues on saying all of the sales folks have raised the issue with their manager, who was supposed to pass this along to the IT group, but it appears never has. I decide to return to my cube and take a look. I do the normal thing of right off the bat of starting a snapshot every 10 minutes and dig up some of the baseline snapshots so I have something to compare too. I call Henry and ask him to process an order so I can trace his session. I find his session and start a trace, he processes an order, and his session goes inactive after only a couple of seconds. I have Henry on the other end of the phone, and he says the process is still running. I can plainly see, that according to the DB, the process is over.

The app is a Delphi fat client, so I can rule out any connection pooling or anything like that. I go up to Henry's desk, the process is still going. I wait until it finishes, it takes almost 7 minutes, and he reviews the PDF that pop's up of the order and then he clicks the forward button and lets the work flow take over and push the order off to the next people in line. Those people happen to be in the cube right next to Henry, so I check with them. They say yes, they see they have an alert that the order has come in, but the lady is not wanting to open the order because at this time of day, it can take almost 10 minutes for the form to open., she says, first thing in the morning she can process a hundred forms in just a few minutes and I should come back tomorrow. I push the issue and she opens the form, and yes it takes - get this, 7 minutes.

Speculating to myself on what the problem might be, I go down to the sales support group and talk to their team lead, they know about the problem and it has been a ticket in the help desk for awhile but they are short staffed by 3 and do not have time to deal with it any time soon. I ask if I can, and of course am promptly handed the keys to the system and told to "have fun, don't change anything". I take a look and I find the PL/SQL that generates the PDF, it is a simply external call to a java program via the client that reads the DB and generates the PDF. I can run it in test no problem, generates a PDF in a couple of seconds. I ask Henry to try test, he does, takes just a few seconds.

Well, this is turning into a really long story, but I needed to lay the groundwork, sorry about that. Continuing the story, I decide to check out the DB server. lots of free space, minimal CPU usage, our reporting software shows that the machine only averages about 70% CPU usage over the course of a few days. Well that isn't it. I then cd into the temporary holding location for the PDF files and do an ls. Then I wait, and wait, and wait, and wait. I open another session and check the server. No CPU usage, no nothing. Being the server is a Linux box I run top and take a look, nothing out of the ordinary, I run iostat, nothing out of the ordinary. Very confused I check the other session and it is completed, I run "time ls" and wait. I am sure you can guess it, time comes back to just under 7 minutes. I check the scroll back on my terminal, it goes back to the max of the buffer, 2000 lines. I do a ls | wc -l. I wait the 7 minutes and get the outstanding number of 532,932. Wow, I didn't think that was possible, that is a lot of files. Then I realize with the file name sizes, ls is 4 columns wide. That is 2,131,728 files in that one directory assuming they are all the same file name length. I go back up one directory, do a ls -lrt and the directory is only 2 bytes in size. That doesn't seem right, with that many files in there, the directory header should be massive.

I call the SA group and have them check. They come back, surprisingly about 10 minutes later saying "Yeah, the directory is f*cked" it is a mount point on the NAS and we can't even see it from console. The NAS is mounted to the DB server and as a share that the sales people can access. A few phone calls later, and we confirm that the PDF's are temporary and not needed, we down the DB with the user's consent, the SA's unmount the drive and remount a new empty one immediately. Once we bring it back, we call Henry and he tries it and an order processes in under 2 seconds. We look at the directory and there is a single PDF in there. We know we haven't written 2+ million orders in 2 months (we wish!!), so the SA's work on getting some files out of the directory so we can take a look. While waiting on the SA's I monitor the directory, there are now 3 files, but Henry is the only user in the system still, we haven't released it to the public yet. I call Henry, he processed 1 other order, not 2 more - he swears by it. I asked Henry to process another, he does. now 7 files, and another one, now 15 files. I tell Henry to stop and call the support team and tell them about the problem.

The sales support group immediately drop everything and dig into the issue. Takes the team lead about 10 minutes to find the problem. The Delphi, just in case, backs up all files submitted by that user before it processes the current order. It assigns a sequence number and copies the files, effectively doubling the number of orders issued by the sales person before the new order is generated. The user's PC does all the work copying the files. The code to remove the backup files is instead a simple comment saying something to the effect of "delete was taking too long, investigate using a cron task to delete, the directory can fill up fast", made by one of the sales team support people who left awhile back. A quick change, and bingo, the code will delete order's older than 24 hours and not make any backups. Since the app is ran from a network drive, the sales group compiles a new version and pushes it out. After letting a few more users in, we verify the problem is fixed and go home for the day.

This made me feel good. Nothing to do with problems in an oracle database, no meetings, no hours of planning and discussion. Just suit up, get to work, and put the fire out...


sigh.




Oracle Database on Windows Vista now available!

Christian Shay - Fri, 2007-05-04 14:27
The 32-bit Oracle Database 10g Release 2 for Windows Vista (v. 10.2.0.3) is now available for download! It supports Vista Business, Ultimate and Enterprise Edition.

Developers who just need the 32-bit Oracle Client for Vista can download it at that same link. This client release is much easier to install than the previous "start at 10.2.0.1 and patch up to 10.2.0.3" method that I blogged about earlier, and it doesn't require that you have access to a Metalink account (to get the patches) if you just want to evaluate the software.

And as I mentioned in that prior blog entry, Oracle Database Express Edition has been certified on Vista for some time now.

Some information about Oracle on 64-bit Windows Vista can be found at the Oracle Database on Windows Vista: Statement of Direction.

Happy installing! :)

ANSI Joins

Robert Vollman - Fri, 2007-05-04 12:29
Like most of us, I still join tables in my SQL queries the old-school way. Simply put:SELECT whateverFROM table1 t1, table2 t2WHERE t1.id = t2.idAND t1.value > 10;But increasingly often I run into people who use ANSI joins instead. They were either introduced to SQL with Oracle 9 (or Sybase 12, etc), and were taught to use the SQL standard way, or else they made the conversion at some point in Robert Vollmanhttp://www.blogger.com/profile/08275044623767553681noreply@blogger.com7

One liner

Oracle WTF - Wed, 2007-05-02 19:38

I was untangling a query when I came across eight variations of this code where only the literals 'a' to 'e' changed. Two of these were nested within an additional NVL so that the second would execute if the first returned null.
nvl(decode(2, 1, 'a', 2, 'b', 3, 'c', 4, 'd', 5, 'e', ' '), 'na')

Migration from Access

Herod T - Wed, 2007-05-02 12:45

A few months ago, we hired a consultant to work with a group of users and start to migrate from the numerous access database applications and excel spreadsheet "applications" to APEX. At the time it was APEX 2.0. We created them a database on a little used server and gave the consultant about 100 gig of storage and a list of items the consultant must do and must not do written into the contract.

We have heard very little about the project, the manager in charge pretty much left them on their own. Today we had a meeting which turned out to be the "wrap-up" meeting for the project. The consultant and the users, in under 4 months converted 16 MS Access databases and 44 excel spreadsheets to APEX applications. LDAP authentication and centrally managed user list as all the apps are in a single APEX workspace. The project is magnificent! The users are happy, all the rules have been adhered to and the consultant came in under the time limit getting the bonus money that was part of the contract. Everybody is happy all around. I looked into the DB, proper referential integrity, very few bad SQL, the schema is organized well with non shared tables prefixed with a TLA that they came up for that particular MS access or excel application. Applications talk to each other when necessary and the users are reporting much better productivity and no missing transactions or data.

Every application is snappy and efficient. The consultant and the project user lead also signed off on retiring the 155 MS Access licenses, which will be a nice thing to stop paying for when we renew.

All and all, a good day!

APEX is amazing... I still struggle with some basics on it... but I am a DBA, not a developer. We already have another meeting with the consultant to put them onto another APEX project we have waiting in the wings.



Quick SQL Server Training for Oracle DBAs

Andrew Fraser - Wed, 2007-05-02 10:12

This page has been moved to http://andrewfraserdba.com/?p=41


Categories: DBA Blogs

Webcast Announcement: Oracle's In-Database Statistics

Marcos Campos - Wed, 2007-05-02 00:11
Today (Wednesday), May 2, 2007 at 12:00 PM EST, the Oracle Business Intelligence, Warehouse and Analytics (BIWA) Special Interest Group (SIG) will host another interesting free webcast:Oracle's In-Database StatisticsSpeaker: Charlie BergerSession AbstractOracle Database 10g embeds a range of SQL-based basic statistical functions including: summary statistics, hypothesis testing, correlation Marcoshttp://www.blogger.com/profile/14756167848125664628noreply@blogger.com2
Categories: BI & Warehousing

Apache Trinidad Graduates!

Omar Tazi - Mon, 2007-04-30 19:02
About a week ago and after 12 months hanging out in the Apache incubator, project Apache Trinidad received all the votes necessary from the Incubator PMC to graduate. Trinidad got 12 binding +1 votes by the Apache Incubator PMC, and two more non-binding by the Incubator community. It's been an exciting time in which we've seen more and more people from Oracle and of course outside Oracle join the community as users and even as committers. The traffic on the Trinidad mailing lists is really encouraging and the community is growing rapidly. In addition to Oracle which relies heavily on Trinidad for its own development, several companies are using including consulting shops who find the Trinidad components very useful and mature enough to build highly interactive web applications for their clients.

Trinidad is now going to be an important part of Apache MyFaces. You know where to go, we're working on the logistics to migrate the project from the incubation infrastructure to the MyFaces side of the house. Try it and let us know what you think.

Congrats to the Eclipse BPEL Designer Team!

Omar Tazi - Mon, 2007-04-30 18:40


I simply want to congratulate Michal and the BPEL Designer crew for winning the 4th prize at the popular JAX conference in Germany. Check out the news here if you can read German. Keep up the great work!

I also want to point out for those of you who don't know yet, there are other Oracle-led Eclipse plug-ins which we are really proud of:
- JSF Tools Project
- Project Dali JPA Tools

Finally we have announced last month project EclipseLink which will provide developers with world-class O/R mapping capabilities (via the TopLink product line donation).

Go ahead and try those Eclipse projects out and let me know what you think. We also welcome your participation ;)

How to do an "insert ignore" in Oracle

Hampus Linden - Mon, 2007-04-30 14:28
Ok, I should start off with a disclaimer. This is not a good idea to do.
Using the "insert ignore" statement is a way to let MySQL insert data from a dataset which may contain duplicate constraints to existing data, and simply skip the duplicate row.
Sounds like a great way to screw up data doesn't it? Should not be used unless you really know what is going on.

Ok, in MySQL we can do this.
mysql> insert ignore into a select * from b;
Query OK, 1 row affected (0.00 sec)
Records: 2 Duplicates: 1 Warnings: 0
But can this be done in Oracle without to much fuss? After a discussion on IRC a guy asked why can't we simply use the merge statement?
Well we can and it is probably a quite good suggestion if you *really* want to ditch those dupe rows.
-- So what do we got?
SQL> select * from a;

A B
---------- ----------
1 2
2 3

SQL> select * from b;

A B
---------- ----------
1 3
3 4

SQL> merge into a using b on (a.a=b.a)
when not matched then insert values (b.a,b.b);

1 row merged.

SQL> select * from a;

A B
---------- ----------
1 2
2 3
3 4

SQL>

-- Let's rollback that and have a look at the exeuction plan.

SQL> rollback;

Rollback complete.

SQL> set autotrace on
SQL> merge into a using b on (a.a=b.a)
when not matched then insert values (b.a,b.b);

1 row merged.


Execution Plan
----------------------------------------------------------
Plan hash value: 1973318225

-----------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-----------------------------------------------------------------------------
| 0 | MERGE STATEMENT | | 2 | 64 | 7 (15)| 00:00:01 |
| 1 | MERGE | A | | | | |
| 2 | VIEW | | | | | |
|* 3 | HASH JOIN OUTER | | 2 | 64 | 7 (15)| 00:00:01 |
| 4 | TABLE ACCESS FULL| B | 2 | 52 | 3 (0)| 00:00:01 |
| 5 | TABLE ACCESS FULL| A | 2 | 12 | 3 (0)| 00:00:01 |
-----------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

3 - access("A"."A"(+)="B"."A")

Note
-----
- dynamic sampling used for this statement


Statistics
----------------------------------------------------------
0 recursive calls
5 db block gets
15 consistent gets
0 physical reads
0 redo size
819 bytes sent via SQL*Net to client
778 bytes received via SQL*Net from client
4 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
1 rows processed

SQL>
Looks ok.

Oracle 10g Installation on Vista

Dong Jiang - Sun, 2007-04-29 19:49

I wish I had found out this link earlier. Just follow the instructions and it’s hassle free to install 10g on vista.
I couldn’t agree more with the comments about M$ and Vista on the page too. The vista built-in zip/unzip capability would take over an hour to unzip the 10g base installation file. That’s RIDICULOUS!!!

Powered by ScribeFire.


Quick Thoughts on Flex and Open Source

Omar Tazi - Thu, 2007-04-26 18:38

Adobe plans to open source Flex, its development framework for building Flash-based web applications this should take effect when they go beta in June with the next Flex version code named Moxie (will be called Flex 3). Adobe is planning to use the Mozilla Public License or MPL. They are still planning to sell their Eclipse-based Flex Builder.

I read on CNet that "the move is also meant to appeal to open-source developers who shun closed-source and proprietary products. Adobe already offers the Flex software development kit for free and provides the source code." Also read on the same article that Jeff Whatcott, vice president for product marketing at Adobe's enterprise and developer business unit said "For some people, (open source) is a philosophical requirement, a sign of integrity and trust in a vendor, this will close that gap and address any lingering doubts they have about our openness and commitment to community."

I am sorry Jeff but this says ABSOLUTELY nothing about Adobe's openness. Flex is as proprietary and as far from open as it gets. Adobe still locks me in when I use Flex whether the source is open or not it doesn't really matter. Only one vendor defined Flex and only one vendor provides runtime for it. In my opinion, open source is not enough. We at Oracle continue to step up our open source contributions but we believe in a much more important source of openness and that is open standards to which we religiously adhere. That's what really gives you the freedom you are looking for as a user. The freedom to switch vendors down the road should you need to. So when we open sourced our reusable user interface components (Apache Trinidad), in addition to opening the source to which the community responded very positively, it was a 100% standards-based contribution (in this case the standard in JavaServer Faces).

I am not trying to take anything away from the success Flex/Flash enjoys it definitely helps build much more interactive web pages and seems to be very popular. I personally block Flash animations on my browser (Firefox) but advertisers like to use flash to make your pages look like fireworks which really annoys me. The way Oracle believes pages should be built is using JavaServer Faces (JSF) components (typically embedded in JSP pages) and if you need richer UI you do that by injecting some Ajax into it. We believe Ajax and JSF go very well together and hold such great promise that we have decided to donate our Rich Client Framework (RCF) to the OSS community. Stay tuned for a bunch of OSS-related announcements in a couple of weeks at JavaOne. Using JDeveloper (100% free), Apache Trinidad or ADF, one can build highly interactive standards-based user interfaces without knowing anything about JSF, JavaScript, XML DOM, CSS, DHTML, etc. Developers are shielded from the complexity of Ajax development… I would like to disclaim that we do support Flash as one of the rendering options for JSF components like charts. You build your JSF-based page and later you could potentially make the decision to render the chart in Flash. Because the JSF component definition is separate from the rendering you can still do that in an elegant way and we support that in ADF Faces as part of the Rich Client Framework.

To make the long story short my point in this entry is the following: Flash is not a bad thing, some people seem to like it and use it quite heavily. But open sourcing it or parts of it (especially the tooling) doesn’t make it open enough for me and the kind of people I talk to in the developer community. They understand very well that openness comes from standards not necessarily from opening the kimono and showing the code even under a friendly license like MPL.

Pages

Subscribe to Oracle FAQ aggregator