Sunday’s Conference day started very early at around 07:30 by going straight to registration, then on to a quick breakfast and the first session at 08:30 AM. Joel Kallman of the APEX Development team started my round of that morning by explaining all the tools and processes which are used / were used by the APEX Development teams that is located more or less around a huge amount of different places in the US, Europe and India. Not even to mention al the supporting people on topics like security, creating manuals, testing, supporting etc, etc. Fun to see that the team uses tools like Hudson, Subversion and Oracle’s conference tooling to be able to work wherever you as a team member are located.
Kris Rice talked about new and sometimes not so known features in SQL Developer 3.0. It was cool to see, while demo-ed by Kris, which features went in, in this new version. Stuff like drag & drop tables into a worksheet that give you a wizard for insert, update, delete etc and join options that automatically generates the SQL you need as a basis or the final statement needed. There are a lot of new options in there, I don’t know really which ones, because I started really using SQL Developer now in a project from version 3.0 “onwards” but, although I am not that GUI guy, I really start to like it. Not sure if it already will replace my UltraEdit tool, but it is getting there for some of those features like explain plan, autotrace, doing a “DIFF” between a baseline environment and a development user schema. Something I also use very much is all those fast wizards to create “load” and/or “unload” features in CSV, insert statements, SQL*Loader format or, for example (there are lots more), if needed, secured pdf file format. Something I didn’t notice yet is that you now also can open Oracle trace files and SQL Developer nicely formats the output. You also have the option to sort or filter this trace output in SQL Developer. Nice one. Also still a lot of nice stuff to come like Scheduler wizards that help you graphically layout the Scheduler process.
To give you another small teaser of what you were missing out on, have a look at the peak of the “SQL Developer’s Build in Logging and Monitoring presentation of Kris later on in the afternoon…and although not everything went that smoothly, Kris demo’s some of the power which has been build-in nowadays in SQL Developer V3.
Sue Harper demoed and talked about the SQL Developer Data Modeler, as always, very passionately and justified… SQL Developer Data Modeler is a great tool to design or getting fast info about an existing database environment via reverse engineering. At least for me thats a great plus… SQL Developer Data Modeler is nowadays even a free product, that is “a no cost option”, so in other words “free” as long as you have licensed your database. You can use it as s stand alone product or as a embedded option via SQL Developer. I would really like in SQL Developer as in SQL Developer Data Modeler an option like WebDAV, so it would/could be using XDB Repository options (XMLDB) to store XML related info like metadata stored, in XML, data. Said that most options are integrating with Subversion like looking up the differences between different saved designs. I can’t loose the feeling though that I could might make sense to store, handle XML related data in the database, instead on a file system (or even Subversion), for a tool set that pinpoints on database design and database development and its in there so why not use it. It could make even more sense regarding saving design in the same database as the development /code and options you would have like, backup & restore, oracle (text) search options or XML search via an XMLIndex and / or using XML diff’s.
Tom Kyte’s session started with pointing out all those tools you already have for free, what’s out there for free at least say, those “no cost options”, that are already there in the database and how important it is to gather some info to be able to further improve you environment if it is the code in the database or if there are problems outside the database. So the session mentioned and demo’d items like DBMS_APPLICATION_INFO, DBMS_MONITOR and DBMS_TRACE. To give you a small peak of the presentation have a look at the following short 10 min. Tom Kyte video I taped during the session.
Hope you enjoyed this small overview of the things that went on during Kaleidoscope’s 2011 Sunday’s Conference day.
Finally arrived on Friday in Long Beach after a long flight. On Saturday we (in the end: Alex Nuijten, Patrick Barel and Roel Hartman) were very lucky to be asked by Aris Prassinos, who is living and working in the Los Angeles area, if we were interested in a small tourist by car tour for stuff like: Hollywood Blvd, Walk of Fame, Malibu, Sunset Blvd, Universal Pictures etc. So just to show you the area of this years Kaleidoscope 2011 Conference hereby some pictures from, amongst others the places mentioned above plus area’s like Mulholland Drive…
Ook dit jaar, namelijk op dinsdag 14 Juni, organiseert AMIS de ODTUG Preview. Het jaarlijkse congres van de ODTUG, de Oracle Development Tools Users Group, vind dit jaar plaats in Longbeach, California van 26 tot en met 30 juni. Het is niet voor iedereen weggelegd om daar naar toe te gaan. AMIS biedt, alweer voor het vijfde achtereenvolgende jaar, aan geïnteresseerden de kans om een selectie van de presentaties die daar te zien zijn bij te wonen. Een aantal Europese sprekers zal tijdens de AMIS ODTUG preview presentatie laten zien die ook in de Verenigde Staten worden gehouden.
Tijdens de AMIS ODTUG Preview zullen er drie keer drie parallelle sessies worden gehouden met verschillende onderwerpen zoals APEX, database development, ADF, JHeadstart en SOA.
|Tijd||Track 1||Track 2||Track 3|
|16:30||Welkom en Registratie|
XFILES, the APEX 4 Version: The Truth is in There…
Marco Gralike & Roel Hartman
|ADF Developers – Make the Database Work for You||Pipelined Table Functions|
|19:00||APEX Face/Off – Designing a GUI with APEX Templates and Themes||BPMN: The New Silver Bullet?||Oracle JHeadstart: Superior Productivity in Developing Best-practice ADF Web Applications|
|20:15||Who’s Afraid of Analytic Functions?||Overview of Eventing in Oracle SOA Suite 11g||…and Thus Your Forms ‘Automagically’ Disappeared|
Dit evenement is met name bedoeld voor ontwikkelaars.m Uiteraard zijn er aan dit event geen kosten verbonden, maar het aantal plaatsen voor dit evenement is beperkt, wacht niet te lang. Vol is vol.
Inschrijven kan binnenkort op www.amis.nl
Roel Hartman and me are currently very busy with our Kaleidoscope 2011 presentation “XFiles, the APEX Version: The Truth is in There…“. During this presentation, we will demonstrate the awesome possibilities you can create when you combine the APEX and XMLDB functionality of the APEX database environment. And as you probably also know, two “no cost options” delivered with your Oracle database. Our first presentation/demo will be on the AMIS Kaleidoscope Preview Sessions on the 14th of June, to test our “setup” and combined presentation for the real thing during Kaleidoscope, in Long Beach, USA, this year.
The demo will demonstrate how to setup database build-in versioning capabilities, based on standard XMLDB functionality, that can be used by or for APEX applications, while making use of the file/folder metaphor of the XDB Repository.
The XDB Repository can, by default, be used to, currently via WebDAV or FTP, drag and drop files into the database. This XMLDB functionality also has default versioning, checkin/out, an repository event mechanism and security functionality / capabilities. So why work, while working with this great development environment called APEX, with version tooling like Subversion, if the XMLDB realm of the database already has these capabilities to provide this by default.
The XFILES demo application is used to demonstrate XMLDB functionality but currently still main AJAX based regarding its GUI. In 2008 an effort was made, for that years Oracle Open World conference, by Carl Backstrom (Oracle APEX) and Mark Drake (Oracle XMLDB) to combine the two environments and switch the XFILES AJAX based GUI for the APEX front-end. Due to circumstances, it didn’t had the proper follow up regarding cleaning up the code and share the ideas…see the XFILES tab on this page for more info on this.
Roel and my efforts, regarding this XFILES APEX version, which is based on current and the work done by Mark en Carl in 2008, is called by us, the XFILES APEX Community Edition (abbreviated to XACE), so we are able to implement some chance management without be mistaken by Mark Drake’s still existing AJAX based XFILES version, currently version 5. This version implements and demonstrates Native Database Web Services via XMLDB in the OTN Development Days Virtualbox environment which can be downloaded via Oracle OTN.
More regarding the XFILES XMLDB application and blog posts can be found via the XFILES menu on this site. Information about Roel and his interests can be found on his personal blog roelhartman.blogspot.com and information about official XFILES Oracle XMLDB application and technology can be found on and via the Oracle XMLDB main page. Last but not least, for interest in Oracle APEX go to the apex.oracle.com site.
To give you a preview of the work done, hereby some updated pictures
Click picture to enlarge
Click picture to enlarge
I started a Oracle XMLDB LinkedIn group to provide via this media some more high level discussions or ways to share info. If you are interested, join. This LinkedIn group will be updated and managed by me until Oracle starts an official Oracle XMLDB LinkedIn group. I have noticed that LinkedIn Groups discussions of other vendors or interest groups can be very insightful of what actually moves people in the market.
Current (still some technical) discussions:
Join us via the Oracle XMLDB LinkedIn here.
A lot is happening here at Oracle Open World, more than my brain can master right now. Exalogic, ZFS storage, Unbreakable Enterprise Linux, Fusion Apps (finally), Oracle VM for Solaris, etc… Some of those topics aren’t that important for me and/or my customers right now, because they are just out of reach like, for example Exalogic. I read that a full box setup will go for just over 1.000.000 US$ so that is a setup I won’t be managing for a while. On the other hand from an Oracle perspective this is the logic next step to make to provide a solid complete solution from apps layer down to the hardware layer providing a boxed solution for Oracle’s most demanding customers regarding performance, best of breed and availability.
It has very good technology features in there of which I hope it will be open for us “general” database consumers in the near future. One of those Exadata features I would really like to get my hands on would be the in memory index functionality, if not only that it fits perfect with the way I handle XML data, that is “content” based. An other feature would be, for instance, those storage cell optimizations. Anyway, until now, when trying to enable them, it only comes back with a “Exadata Only” warning, so I will have to wait a little (I hope).
So now, I am currently following Wim Coekaert‘s OEL / Unbreakable Enterprise Linux kernel session called “Oracle’s Linux Roadmap”, if not only being interested in the statement of direction about ZFS, OEL and/or Oracle Linux. Oracle Linux will be a fork as far as I have read and/or will it be an option to chose while installing Oracle Linux. From now (Oracle 5.5 and onwards) you can chose installation for a Red Hat Linux kernel strict install or a for Oracle optimized Unbreakable Linux kernel install. You can, although I haven’t tried it yet, also update the kernel afterwards with the Oracle optimized kernel.
So what is this Oracle Unbreakable Linux kernel part all about…?
Until now you could download the freely available binaries or source code of Oracle Enterprise Linux and applications would run unchanged if they were compatible and supported on RedHat. No code change needed and Oracle will/would fully support it. Until now there were, as mentioned during the presentation, not one single bugs reported of Oracle Enterprise Linux not being compatible with RedHat. Oracle Enterprise Linux is used by an enormous amount of big customers and among others also implemented in the Exadata set-up’s and has cheaper support offerings than, for example, RedHat support. So far so good; nothing new.
But as was mentioned, these limits of being strict Red Hat Compatible had some mayor disadvantages for Oracle, like fixing bugs from a new Red Hat distribution to be properly working in, working with, an Oracle software environment. Red Hat does not validate Oracle software, plus Red Hat adapts community efforts very slowly. So these were some of the reasons why Oracle now created the Unbreakable Enterprise Kernel. Be aware this is not the old thing called the Unbreakable Linux program but actually a new Linux kernel.
So this new Oracle kernel is a fast, modern, reliable and optimized for Oracle software. It’s, among others, used in the Exadata and Exalogic machines to deliver extreme performance. From now on its also allows Oracle to innovate without sacrificing compatibility. In short, regarding the software: It now includes both the Unbreakable Enterprise Kernel and the existing strict Red Hat Compatible Kernel. During boot time you can chose for or the strict Red Hat one or the optimized for Oracle software Unbreakable Enterprise Linux kernel.
As Oracle states “Oracle now recommends only the Unbreakable Enterprise Linux Kernel for all Oracle software on Linux”. You could wonder about what this means regarding certified solutions. My guess would be that Oracle will push the the Oracle Unbreakable Enterprise kernel (OUEL?) but will certify on both kernels if not only that a lot of Oracle’s on Demand services are still based on Red Hat environments.
Until now the OUL kernel has made huge improvements compared to Red Hat, for example, 400% gain regarding 8kb flash cache reads (IOPS)… Oracle also has now the ability to support bigger servers, up to 4096 CPU’s and 2 TB of memory, up to 4 PB clustered volumes with OCFS2 and advanced NUMA support. CPU’s can stay now in a low power state when the system is idle. Also this power management supports ACPI 4.0 and fine grained CPU and memory resource control.
All these additions will flow back into the community which, of course, is what Linux is all about. Some other stuff which Oracle pushed back into the stream/kernel source is better data integrity, stop corrupted data in memory from actually being written by detecting in flight memory corruption; on hardware fault management level, errors detection and logging before they effect OS or application and, for example, automatic isolation of defective CPU’s and memory which will avoid crashes and improves application up time. Diagnostic tooling has been made less resource intensive hoping that people won’t switch them so when a performance or corruption issue happens, then there will trace info. During the presentation the “latencytop” diagnostic tool was mentioned as an example.
The Oracle Unbreakable Enterprise Linux kernel can be downloaded via or the public-yum.oracle.com from OEL 5.5 and onwards or use the ULN network. Follow instructions to download via the public yum server and/or look up instructions via public-yum-el5.repo and apply it on your current 5.5 system, a different way to achieve the same would be to use “up2date oracle-linux” via yum if you have already bought/installed/registered with Oracle Unbreakable Linux support.
Wim described it in more detail on his blog via
(1) On ULN we created a new channel “Oracle Linux Latest (ol5_x86_64_latest)” which you can subscribe to. It’s really very simple. Take a standard RHEL5.5 or OEL5.5 installation, register with ULN with the O(E)L5.5 channel and add the Oracle Linux 5 latest on top as well. Then just run up2date -u oracle-linux
the oracle-linux rpm will pull in all the required packages
(2) On our public yum repo we updated the repo file public-yum-el5.repo . So just configure yum with the above repo file and enable the Oracle Linux channel. [ol5_u5_base] enabled=1 and run yum install oracle-linux
The OUEL kernel improved also on some miscellaneous thinks like NFS IPv6 support and RAID 5 to RAID 6 support. There will be a new volume manager kind of GUI that will support your LUN creation, deletion, expansion and snapshot of NAS storage. All the work done is submitted to the mainline kernel and enhancements will trickle down and be tested in the Enterprise Linux distribution (be aware: Oracle Enterprise Linux is not the same as the Oracle Unbreakable Enterprise kernel).
Also see Wim’s post of today on blogs.oracle.com/wim to get more info. I guess, this also counts for Sergio Leunissen’s blog, who is currently hammering his laptop behind me in the audience, while I am writing this. Keep watching those blogs for more info
By the way, while speaking with Sergio about the “naming” of this software, which apparently was driven by the need to have clear distinction between “Oracle Solaris” and more general hardware based “Oracle Linux” architectures.
Currently sitting in at the Oracle Open World 2010 presentation of Sam Iducula, Consulting member of the tech. staff and Mark Drake, Sr. Product Manager for Oracle XML DB. Before getting into the more in-depth topics Sam explained XML schema usage, for validation via XML schema validators like for example XML Spy or JDeveloper. This is currently really needed because those more used XML Schema like the really big ones out there like H7, etc, are nowadays so very very big that a good XML Schema validator is really needed. XML Schema in binary XML format is stored in a post parsed binary format. This has the advantage that Oracle knows about the format when storing the XML document. Extra information can be shared by the database by registering the XML Schema in the database that validates the Binary XML content.
There can be a lot of recursive dependencies, via the import or include references in a XML Schema, which make it even more difficult to make optimal use of this information. For example in the H7 (Health Level 7 schemas) setup this includes over 100 included XML Schemas. Oracle 11gR2 has been greatly improved performance and handling of those very huge meta data information as stored in such XML Schemas. Via streaming schema validation and adding hints via xdb:annotations, this provides the database with even more information on how to optimal handle these structures and as such performance can be improved even more. Some of those hints could be used to avoid the creation of objects, in this case while using XMLType Object Relational storage via, for instance, xdb:defaultTable=”" (providing an empty string) or store parts of the XML document information out of line. By the way for this last example you should use JDeveloper because it will annotate the XML Schema incorrectly (the bug has been reported by me). One of the improvements in 184.108.40.206.0 is huge improvements were made in cycle detection recognition, so they are handled even better in the mentioned version.
On the XMLDB home page on the Oracle OTN website a package of tools provided (“Oracle XML DB Ease of Use Tools for Structured Storage“) which can make your life easier regarding those xdb:annotation’s especially for those enormous big XML Schemas. This tool set which enables you to automate a lot of hints in XML Schema optimization you would like to make. Via XQuery or other XML DB update statements you are also able to override the by the database generated naming or storage options. Via some simple anonymous PL/SQL blocks this can be very easily done via for example, DBMS_ANNOTATE-x packages contained in this XML tool set, as said which is freely available on the XML DB OTN Oracle website.
This tool set also comes with a white paper that shows and demonstrates some of the best XML handling ideas and experience gathered trough a lot of years handling customer use cases the Oracle XML DB Development team had. For example if you know it’s not applicable to your XML document you are able to switch off or alter DOM validation handling while storing or handling your XML document in the database. You can override ordering for example if it is applicable for your XML Schema, this avoids oracle checking it, which improves handling, but, be very aware, it can also be dangerous doing this if it was implemented by the person who created the XML Schema, but just didn’t care about the real life implement and/or it’s importance regarding being a actual mandatory requirement in practice.
I have experience multiple times that even with official XML Schemas the restrictions didn’t match real life use, so although automation really helps you to manage your XML registered schemas more easily, you must be aware of those exceptions. XML schemas can be created very loosely on real life implementations which can get you in a lot of problems after these storage models, based on such an XML schema, is used in your database design; those rules will be enforced via a XML schemas in the database.
As always, proper design with future needs in mind, takes time to do it properly. This is also the case regarding creating a good XML schema.
In Oracle 11you have now the possibility, via this tool set, to use DBMS_XML_MANAGE (for XMLType Object Relational storage) to rewrite table to column mapping, which figures out for you, makes it more easy, to identify and create supporting indexes on ComplexTypes. This has the advantage that you can create indexes with some more meaningful names like, for example “line_items_uniq_idx_01″ or whatever the naming convention within your company might be.
In the latest XDB toolset there will be now also a XDB_ANALYZE_XMLSCHEMA package which sorts out all of the scripting and possible options, while you feed it the actual XML Schemas. As was demonstrated by Mark Drake, all the FpML schemas which have a lot of dependencies of each other where analyzed, annotated, registered and it created over 100 tables and more than 2500+ objects in minutes. Try doing this by hand…
Also while using this package it will sort out the proper XML Schema dependencies and in which order all those XML schemas have to be registered in the correct order (based on includes, imports and ref’s used by Simple- and ComplexTypes). Sometimes you have to break up column create table statements because the maximum amount of columns allowed by Oracle in one single CREATE TABLE statement is “only” 1000 columns. This package will help you figure out how much of those Object Relational storage items will have to be moved “out of line” and/or to break up on a certain level in the XML hierarchy of the XML tree to avoid this 1000 column limitation but also to provide the design info needed to get the maximum performance.
This tool set used for XMLType Object Relational storage is only useful if you XML design is highly relational. If not then, your XMLType storage module should be based on Binary XML. The advantage of using XMLType Object Relational storage is that you make full use of Oracle relational technology and optimizations, which is available since a long long time and full use of, for example, the Cost Based Optimizer will kick into effect. On the other hand, be aware if your XML design is really relational, maybe you should have created it by relational means. There should be a proper use case to work with the XML format in the first place. My adagio always is: if it is not XML, don’t use Oracle XMLDB. If it is, go for Oracle XMLDB, if not only that is a “no cost option” within your Oracle database and it has been designed, since version 220.127.116.11.0, to optimal handle XML in your database.
For further information about choosing the proper XMLType storage model and how to optimally query these structures, have a look at:
Chips. I had an accidental delete from this mini blog post while clicking and editing it via my Android WordPress app on my phone, so here after searching some blog aggregates I have “re-builded” it. Leaves me to say that, if I am correct the games was won, if I am correctly informed, by 42 to 37 by Michigan… I really, Really liked it !
Got all those tweets from OOW ACED people in San Francisco while we here, the OakTable MOTS speakers, in Michigan got up at 6 am for a small breakfast and out the door at 8 am to join the 120.000 Michigan Football fans in “the Big House”.
So stop whining about early, I am sitting here in the rain, early, but with great people and warm coffee… Let the game begin…
Some attempts at “Live broadcasting” the event, via my mobile, here b.t.w.: http://bambuser.com/channel/MGralike
A long presentation title, “Learning from failures, design errors, problematic recoveries and downtime’s. Experience from CERN” from Eric Grancher about, indeed, experiences they learned while trying to handle those 19 Pentabytes of data produced at the CERN institute (?) in Switzerland. As Carol Dacko said just before I entered this session, this conference has so many high level, great quality presentations it is just a joy to be here and learn from those people, despite I had to skip more than half while preparing my presentations.
It’s a same that this one is already the last one this week…
OK, next one which looked interesting, and apparently I was not the only one, was Kyle Hailey’s “Visual SQL Tuning”. It’s funny to hear him tell that visual presentation is very important in seeing very quickly correlations which remembers me at a discussion I had with a smart colleague that he wanted to go for more numbers/text driven reports regarding monthly reporting instead of using OEM graphical customer overview statistics regarding progression of architecture behavior… Failures and success values are important to correctly interpret or see even more quickly what the problem is or searching for answers. Another great session. Thank god I haven’t a presentation to do anymore…