Sorry for staying quiet for some time, but for some good reasons. Some of these reasons will be explained in later posts, but for now I would like to share the story I wrote upon request of Steven Feuerstein
, who asked to tell how PL/SQL impacted our life. Here is my story:
I started to work with databases already in college, but more from the data modelling/business analysis angle. When I moved to (more...)
To be fair, I am not spending all of my days writing the new PL/SQL book :-) I even work sometimes! And while solving real problems I reasonably often find interesting thing.
Today I was asked by one of my colleagues: is it possible to look inside of the existing (more...)
Working on the chapter that covers best ways of manipulating with object collection. Of course, if you talk about pagination of the rowset, it is very tempting to test Oracle 12c new feature - OFFSET…FETCH.
Unfortunately, immediately got an issue. It seems to me that passing a variable to FETCH (more...)
Please, don't worry - I didn't suddenly disappear from the surface of the world of databases. It just happened that after some years of staying outside of publishing business I've been recruited to make a new book.The tentative name/dates are: PL/SQL Performance Tuning Guide: Tips and Techniques
(Oracle Press, (more...)
Looks like my Friday post
about BigData got some attention. In that case - let's continue! While looking at tons of articles about Big-anything
I've noticed a very constant pattern - everybody is talking about multi-node clusters of database servers: you constantly hear about horizontal scalability, sharding, node failure tolerance (more...)
Over the weekend one of my friends asked me for a clarification on RESULT_CACHE
- a really interesting functionality that allows Oracle to cache in SGA results of PL/SQL function calls.
The point of confusion was the fact that between 11gR1 and 11gR2 Oracle development team significantly re-thought this feature (more...)
Today at lunch we had an interesting discussion about the role of databases in the contemporary IT development - and there was a lot of buzz-words thrown across the table: Hadoop, NoSQL, BigData, BigUsers, ACID-compliance etc. To be fair, a bit too many buzz-words - I have a very bad (more...)
Yet another performance tuning story
, similar to one that happened about a month ago
. Just to keep it short:
- once upon a time there was a very time-consuming module.
- eventually we were forced to take much closer look - WHY is it so time-consuming
- we found in our own (more...)
This post is the final part of my thoughts about IOUG Collaborate'13 conference (part one
, part two
, part three
). If I will not write I now I will forget what was going on :-), so the last push!4. Real stuff
In all of the previous (more...)
After a couple of requests at IOUG Collab'13 I decided to resurrect a pretty old topic that I've participated in 2008 (since in 5 years there was no changes on that front :-) ).
As we all know, starting version 11g Oracle tracks PL/SQL dependencies in much more granular way (more...)
This post is a continuation of my thoughts about IOUG Collaborate'13 conference (part one
, part two
). As I've been mentioning in the preview
, the whole question of BigData was on my short-list. First of all, I am still trying to figure out what are we talking (more...)
For the Friday evening I decided to dig out my example from the most recent of my published books (Expert PL/SQL Practices, APress, 2011
) - it was a very fun project to work with: first, to come with with the idea of such multi-author book, second, to write (more...)
After making a number of purely technical posts I decided today to switch back and continue describing Collab'13. The first post
was about the leadership, which was a somewhat untrivial topic for what was normally known as heavily technical conference. Now it's time to get more technical!2. MySQL
This post is a continuation of a topic, I've raised previously - dynamic implementation of generic searches
. As I mentioned in that post, there are circumstances, when it is much more convenient to return a pointer to a row-set instead of that row-set. Or in terms of Oracle - REF CURSOR (more...)
It is a very common problem - how do you implement generic search over the table? By generic search I mean that users are provided with tons of different options that could be used in all possible permutations.
It leads to a standard problem - how do you make sure (more...)
I really hope that it was the last time I've seen SNOW this spring :-) But other than that - it was a great conference! A lot of interesting conversations, a lot of interesting events - and a lot of thoughts afterwards (part two
, part three
, part (more...)
Final preparations before heading off to Denver: Collaborate'13
is awaiting! Presentations - checked, tickets/hotel reservations - checked, session schedule - che-e-e-e-e-e-e....
If you go to a good conference, some schedule conflicts are normal - there are too many good speakers and there is always not enough time slots to go (more...)
One of my friends just sent me a link to Amazon's chart of Best Sellers (category: "Oracle Databases")...
7-year-old "PL/SQL for Dummies"
is #2! Here is a proof:
The most interesting question - does it mean that IT specialists finally started to learn PL/SQL? :-)
Being a bit more serious, I (more...)
Originally I was planning to do more or less a set of "Migration 101"-style posts. But for the last couple of weeks I've been working on the real migration project. And as a result there are some "war-stories" to be shared here and now.Part 2. Translator's role
Yesterday I (more...)
I've just noticed in one of LinkedIn PL/SQL forums the following question:
- Which one is faster and why SELECT 1 FROM DUAL
or SELECT ROWID FROM DUAL
Yes, it's pretty basic question, but it's interesting enough to be covered. The answer is pretty simple - do not use ROWID (more...)