Most presenters would tell you that there are two distinct phases to conferences that they're attending. Before and after their presentations. It's difficult to truly enjoy the conference experience when the presentations that you've yet to deliver are rattling around in your mind. The effect is magnified, of course, if you're one of the bad boys like me, Alex Gorbachev, Kerry Osborne and a host of others (lets not even *start* on Tanel Poder) who haven't finished their slides before the conference starts. While that might sound like a scandalous dereliction of duty, it should be pretty easy to understand actually. Most people have busy work and personal lives and presentation work needs to be slotted in around those. As a contractor, I can't exactly work on non-client slides during office hours!
But this time was going to be different and I made sure of it by
1) Not submitting any abstracts for the Openworld agenda.
2) Putting myself down for one presentation at Oak Table World using slides that I'd already delivered several times over the past few months.
3) When Graham Wood asked me if I'd co-present with him on AWR, I started thinking about suitable examples in advance of the conference and went over to San Francisco the week before with enough time to agree on the examples and think how I would present them.
3) went kind of wrong when I realised that Graham thought I should put the examples as images over multiple slides which was probably always the best idea and I just hadn't thought it through enough. Suffice to say I'd underestimated the amount of work that needs to go into a co-presentation that you don't have complete control over. (Don't get me started on that Oracle Corp Powerpoint template either - we'd be here all week!)
Which meant that I didn't manage much in the first couple of days of the conference, but once I'd relaxed a bit, I was able to pop my head into Jason Arneil of e-DBA presenting 'Exadata From Installation to Go Live: Experiences in Banking and Retail'. As well as Jason being a mate from the user group and blogging communities, e-DBA and I share the same banking client, so I've worked with him a bit more closely over the past couple of years and know that he absolutely has real world experience! The stand-out things for me from the bits of the presentation I saw were that sizing the platform you need is extremely important, as is giving proper consideration to primary, standby and test environments. Fortunately our shared client thought about these things and had the money to implement them properly but I do think there's a tendency to think Exadata is expensive and so people skimp on their normal deployment models, which is a big mistake. Another personally enjoyable aspect was hearing Jason pronounce Exadata as only a Scot could, which I found hilarious but I suspect took the average US attendee a while to get used to
Then I was determined to go to the opening keynote before the ACE dinner at the Walt Disney Museum. The reason I was so keen on the keynote was that I knew there would be the In-Memory announcement and as there was likely to be a shout-out to the dev team that worked on it, I wanted to be in the hall for a change. So imagine my Xtreme (sic) disappointment when I had to sit there for over an hour being bored senseless by the Fujitsu section. I was pretty rude about it on Twitter but try to understand where I'm coming from. Yes, I know Fujitsu pay the big bucks to be on the stage. I even know that the content looked relatively interesting if I just focussed on the slides. I know the guy was trying his best. But when a lot of people have attended the Welcome Keynote for a kickstart to the conference and a bit of buzz, the last thing they want to do is to be bored senseless by an unengaging presenter. Sorry, but if you're at that level of a company you should be able to cope with the criticism and for the good of your organisation, let someone with some presentation skills do the job next time.
An hour in I was nicotine-deprived and could take no more and the bus to the ACE dinner was going to be soon, so I went outside and started watching the keynote on the massive monitors in the Howard Street chill-out area. A much better experience (and an approach I used for the rest of the week), particularly as the Oracle guys eventually started presenting on In-Memory Database.
Despite the announcement of the In-Memory Database Option (follow @db_inmemory for more on that going forward), several people agreed that the true innovation is that Larry seems to be able to use a clicker after all, although not hearing him saying 'Next Slide' is going to take some getting used to!
As for the keynotes and the big announcements, I've never really been one for blogging about them because I don't think I have the analyst gene inside me. But there's a few simple solutions to that. First, people like Mark Rittman cover them in so much more depth than I could hope to. Second, remember that anyone who cares can watch the keynotes online here ... and get this! You can skip Mr Fujitsu!
I got so caught up in enjoying it that I suddenly realised I was late for the ACE Dinner, still had some work to do for the next day's presentation and so ended up missing it completely I was pretty gutted to say the least because I'd promised a bunch of people that I'd be able to meet up with them at that, having hidden out to work on slides over the weekend and I hate missing a dinner invitation in any case.
It was worth missing it in the end, though, as I was able to look over my section and send some more notes over to Graham, before we arranged to meet for the last time the next morning.
Disclosure: The OTN Oracle ACE Director Program paid for my flights and accommodation and invited me to dinner at the Walt Disney Family Museum but I decided to work on presentations instead. My conference pass was paid for by one of Oracle Blogger program, Oracle ACE Director program or being a conference speaker. All three would have qualified for that. Fujitsu bored me to tears but recovered some ground by sponsoring the welcome party in Howard Street and dishing out free drumsticks.
Sep 28: OOW 13 - ACE Director Briefing
Having managed to get a few more days away from the high-profile client project I'm working on, I decided to go the ACE Director Briefing at Redwood Shores on Thursday and Friday after all, which meant a Wednesday arrival at the Sofitel (a hotel with Doggie items on it's room service menu!), a few beers and some room service and then an early night. Just the first of many time-adjusted days to come with the traditional early morning Twitter (used to be blog comment!) conversations with other attendees from Europe and 5am cigarette breaks outside, typically with Dutchmen
Arriving at the Conference Centre is a strange experience as there are a few dozen people there who have become friends and yet more faces I recognise from previous years. So a buffert breakfast break before we got started is a great idea to facilitate the hellos, as well as get so many electronic gadgets out and power points connected!
I confess that when I saw the agenda for the briefing, particularly the first day, it made me miserable. There seemed to be very little of interest for me on there and I think it's fair to say that this is a familiar feeling for others whose main focus is the database. As I discussed a few times, though, not everyone in the room is focussed on the same areas as me and my mates and it is a briefing and Oracle are paying for us to be there, so I can understand that they want to choose what they talk to us about and there is always something for me over the couple of days. I invariably appreciate the efforts of the speakers to make time for it too, just wish it could be database and server stuff all day
It actually turned out not to be as bad as I initially thought and the highlight of the day was probably Thomas Kurian's session when he went over the large number of announcements that were going to be made during the following week, which included several that were very relevant to my interests. What struck me was his command over his content and ability to spend an hour delivering so many details without referring to notes or slides. It encouraged me that the database guys had a lot to look forward to!
Some of which was delivered in the first session of the second day of the briefing, when three new Product Managers from Database Technologies went over the key areas of In-Memory, Multi-tenancy and Big Data. I might have had a slight inkling about the In-Memory announcement (one effect of which is that The Optimizer Lady (Copyright Me) Has become The In-Memory Queen! (Also Copyright Me, but don't expect it to take off the same way) It was great to see such a cool new feature on the horizon. I think it's probably at a fairly early stage of development but looks very promising. Unfortunately, this session, split over three sections was one that everyone seemed to enjoy but would have liked to see all three of those subjects given their own session and drop some areas of less interest. (See my comments in the last paragraph though). However, to show how hard it is to get right, most people in the room didn't seem that interested in the session on the Fusion Apps User Experience and it's not normally my cup of tea, but I thought the future UI looked extremely wizzy for something coming out of Oracle and that the presenter Jeremy Ashley had some genuinely different things to say. At least one person in the room seemed fascinated by the presentation and I was more interested than I expected to be. Go figure.
Wim Coekaerts is always extremely popular with a large minority of ACE Directors, talking Linux and Virtualisation. Again, he's someone who has such a command of his subject area that he can talk adhoc and honestly for an hour about what's going on in that space and for many is worth attending for the two days. I also had a great personal interest in the upcoming DBaaS/Cloud announcements, which seemed a bit more grown-up than last years ideas and were such a part of Oracle's Tuesday keynote this year. I even (and this is most unlike me) asked a question of whether Oracle Customers who are already trying to build Private DBaaS Clouds would benefit. The answer being that it's a goal of the program to offer a solution that can be implemented on the platform of your choice, including on-premise. Trust me, it's just important to me at the moment
The other great thing about the ACE D briefing on a personal level is the time I spend in the cafe in the 300 building with Oracle friends, just shooting the breeze, bitching and whining It's great that they make time in their schedule leading up to OOW, which is busy for everyone, but was particularly important this year as it gave me time for a couple of sessions with Graham Wood, discussing our upcoming co-presentation on AWR. The last of those was just before the final post-briefing drinks and food. Oh, I should point out how great the food was over the two days and just how well Vikki and Lillian and the OTN ACE people take care of us. That's not just sucking up, they really do a fine job of organising everything, including our bus that's probably the only smart way of getting so many geeks and their luggage into San Francisco.
However, the last thing I'd discussed with Graham was that I hadn't realised that instead of flicking through sample reports, he wanted me to take screen grabs and put them onto actual slides. Gulp! So the presentation that I thought I had no work to do on had suddenly become a different beast. Which meant another early night and time to get cracking on some slide work in between catching up with friends (and picking up my new business cards - more on that later), as we bounced slides backwards and forwards to each other. In the end, that tied me up until late Sunday morning, when I realised I'd done just about enough work that I could probably relax and eat some food!
Disclosure: The OTN Oracle ACE Director Program paid for my flights and accommodation and stopped me from becoming truly soaked on Saturday and chilly on several evenings with a very nice ACE Director cagoule. My conference pass was paid for by one of Oracle Blogger program, Oracle ACE Director program or being a conference speaker. All three would have qualified for that. Several companies plied me with much free food and drink, notably the folks at Pythian, but judging from my credit card statement I bought my share on several occasions. Despite all that and my appreciation towards all those people, all opinions are mine.
The last time was at the OUG Scotland conference and I had an interesting conversation with Tony Hasler afterwards that made me both question one of my assumptions about how the CBO works and also realise I could use a 10053 trace file to prove his argument one way or the other. We were discussing which statistics the Cost Based Optimizer uses on a Partitioned Table when there are no Partition-level stats but there are Global stats. For more on Global and Partition-level stats, see here.
I've done so much work with stats on partitioned objects in recent years that I was surprised when Tony came up with a strategy that I thought I must have tried and therefore understood, but it turned out that I hadn't or I had forgotten (just as likely!). The question was around which stats are used when a query is guaranteed to access only one partition. In that situation, the CBO will usually use the Partition-level stats, but what if they don't exist and there are only Global stats?
Tony was using this as a strategy that I'd never really thought of and still think is a little unusual because in most cases I'd be able to gather or set suitable Partition Stats fairly easily compared to the work required to maintain Global Stats but I was interested in how it would work.
To summarise a few different possibilities here :-
1) Global Stats / Partition Stats / Query accessing more than one Partition - CBO uses Global Stats
2) Global Stats / Partition Stats / Query accessing a single Partition - CBO uses the Partition Stats
3) Global Stats / No Partition Stats / Query accessing more than one Partition - CBO uses Global Stats
4) Global Stats / No Partition Stats / Query accessing a single Partition - ????
I thought the answer to the last case was that Oracle would perform Dynamic Sampling against the single partition being accessed and ignore the Global Stats. Tonys claim was that the CBO actually switches to using the Global Stats that are available and later on sent me an example to show that he was right by setting Global stats to specific values and then running a query which accessed one partition. The estimated cardinalities showed that the CBO was definitely using the Global Stats which are the only ones available.
SQL> set echo on SQL> CREATE TABLE t1 2 ( 3 n1 NUMBER 4 ,d1 DATE 5 ) 6 PARTITION BY RANGE 7 (d1) 8 ( 9 PARTITION p1 VALUES LESS THAN (DATE '2000-01-01') 10 ,PARTITION pdefault VALUES LESS THAN (maxvalue)); Table created. SQL> BEGIN 2 DBMS_STATS.set_table_stats (SYS_CONTEXT ('USERENV', 'CURRENT_SCHEMA') 3 ,'T1' 4 ,numrows => 1000000 5 ,numblks => 1000000); 6 DBMS_STATS.set_column_stats (SYS_CONTEXT ('USERENV', 'CURRENT_SCHEMA') 7 ,'T1' 8 ,colname => 'D1' 9 ,distcnt => 5 10 ,density => 1 / 5); 11 END; 12 / PL/SQL procedure successfully completed. SQL> EXPLAIN PLAN 2 FOR 3 SELECT * 4 FROM t1 5 WHERE d1 = SYSDATE; Explained. SQL> SET LINES 200 PAGES 0 SQL> SELECT * FROM TABLE (DBMS_XPLAN.display); Plan hash value: 1258445941 ----------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop | ----------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 200K| 4296K| 135K (1)| 00:00:08 | | | | 1 | PARTITION RANGE SINGLE| | 200K| 4296K| 135K (1)| 00:00:08 | KEY | KEY | |* 2 | TABLE ACCESS FULL | T1 | 200K| 4296K| 135K (1)| 00:00:08 | KEY | KEY | ----------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - filter("D1"=SYSDATE@!) 14 rows selected. SQL> ALTER SESSION SET tracefile_identifier='TONY'; Session altered. SQL> ALTER SESSION SET events 'trace [SQL_Compiler.*]'; Session altered. SQL> SELECT * 2 FROM t1 3 WHERE d1 = SYSDATE; no rows selected SQL> ALTER SESSION SET events 'trace [SQL_Compiler.*] off'; Session altered.
Although Tony was able to use clear stats and our shared knowledge of how the CBO works to more or less prove his case (because 1,000,000 rows / 5 distinct values = 200,000 estimated cardinality, the beauty of a 10053 trace file is that we can use it to prove what the CBO actually does. By running his same example and generating a 10053 trace, I was able to look at the following section.
*************************************** BASE STATISTICAL INFORMATION *********************** Table Stats:: Table: T1 Alias: T1 (Using composite stats)
The '(Using composite stats)' is the notification that the CBO is looking at Global Stats. For contrast, here are two examples from the presentation. The first shows case 1) above because it accesses more than one subpartition.
*************************************** BASE STATISTICAL INFORMATION *********************** Table Stats:: Table: TEST_TAB1 Alias: TEST_TAB1 (Using composite stats) (making adjustments for partition skews) ORIGINAL VALUES:: #Rows: 11 #Blks: 660 AvgRowLen: 18.00 ChainCnt: 0.00 SUBPARTITIONS:: PRUNED: 2 ANALYZED: 2 UNANALYZED: 0 #Rows: 11 #Blks: 61 AvgRowLen: 18.00 ChainCnt: 0.00... and the second is for case 2), where the query is able to prune to a single partition and therefore uses the Partition Stats. i.e. There is no mention of using Composite Stats.
*************************************** BASE STATISTICAL INFORMATION *********************** Table Stats:: Table: TEST_TAB1 Alias: TEST_TAB1 (making adjustments for partition skews) ORIGINAL VALUES:: #Rows: 0 #Blks: 1 AvgRowLen: 0.00 ChainCnt: 0.00 SUBPARTITIONS:: PRUNED: 1 ANALYZED: 1 UNANALYZED: 0 Partition  #Rows: 0 #Blks: 1 AvgRowLen: 0.00 ChainCnt: 0.00 #Rows: 0 #Blks: 1 AvgRowLen: 0.00 ChainCnt: 0.00
Note that all of these examples were executed on 18.104.22.168
Thanks to Tony both for correcting my misunderstanding and giving me another example
Sep 1: Blogging
I'm pretty sure it was Thomas Presslie who first implied to me that blogging was over! I couldn't see it myself but Thomas has always been more of a futurist than me and has more idea of what's going on amongst the cool kids. Sure enough, I spend very little time reading blog posts myself these days - probably even less time than I do writing them - and I detect that a lot of people's blogging frequency has dropped. I suspect that one of the big reasons is Twitter. We all only have so much spare capacity once the mundane realities of normal life are dealt with (think cooking, cleaning, ironing, working for a living, bills, accounts, blah, blah, blah, blah) and so as we pay more attention to things like Twitter and also, at least in my case, increasing volumes of mail then it becomes more difficult to find the time or energy to write a semi-decent post. I probably shouldn't be so specific about Twitter. The fact is it's so easy to be over-loaded with information these days from various delivery channels.
Where this has specifically affected me is that if I want to write about a conference or a post I've seen then the likelihood is that I've used up all my free time at the conference itself twittering away when in the past I would have found a quiet corner and written a blog post. These days, I try to write a post after the event but it loses it's point as it becomes less current and just becomes a dull chore which means it sits there in my to do list staring at me as I stare back disinterestedly.
There are also issues around writing technical posts. Sometimes there's simply so much client-specific content to what I'm doing in the real world that I really can't blog about it directly so you need to come up with a generic test case and those things take time too, on top of the actual work! However, I have missed writing technical posts and I think it's good for both me and others if I do. So here's what I'm going to try for a while ....
- When conferences are coming up or I'm attending them, I'm just going to use Twitter and you can follow that stuff at @orcldoug. No more conference reports (sorry conference organisers) because I don't think people care too much about them anyway and when your own diary is boring you, that can't be a good thing
- Set a lower bar for what is worth blogging about. I've done this before by blogging some really basic stuff that I'm then surprised to find that people found useful. There's something I'm trying to reach here between writing proper White Papers and tweeting 140 characters. The former take time and energy to appear and a blog isn't the place for them and the latter is not something I'm very good at saying anything useful in!
- Eventually I'll get that Wordpress migration done. I did make a start and there are ways of doing it but, like most of these things, it's just tricky enough and will take just long enough that there's other things I'd rather do with my time for now.
It's not like a big master-plan, just me wanting to start blogging a bit more so trying a different approach. Let's see how it goes.
So why does Justin Bieber owe me £120?
Well ... while I was on the Finnish boat, I started to see a few tweets from people who were planning to attend the conference in Oslo about the lack of hotel rooms being caused by Justin Bieber playing three nights in Oslo during the conference! Sigh. All I can say is that I'm not so sure that kids in the UK would be packing out hotel rooms to attend a gig. Can't these people go straight home afterwards or something? Someone pointed out to me later that it was even worse than I thought. Apparently (although I have no evidence of this), people were booking multiple hotel rooms in the hope that one of their bookings would be at the hotel where JB himself would be staying! That's why I'd struggled to find any decent hotel rooms in Oslo the week before. My partner works in business travel and tried to help out at the time, followed by the dire warning that 'there must be something going on in Oslo that night'. OUGN Conference? I didn't realise it was *that* big!
Which meant that by the time the boat arrived back in Helsinki, I still didn't have anywhere to stay in Oslo that night. I was counting on Mark Rittman to have tracked down some local party house but I think he probably blew it with his Jupiter Ace T-shirt and rubbish chat-up lines. Instead, I was lucky to be helped out by my friends Heli Helskyaho and Tuomas Pystynen of Miracle Finland Oy, who took me in hand, drove me to the Miracle offices and let me use their network so I could start hunting down hotels. Fortunately I managed to blag one of the few remaining rooms at OSL airport which would mean that I wouldn't be able to meet up with friends in the centre but I would at least be able to have a bed for the night! However, the price came in at £270 and, even allowing for the fact that hotel is usually pretty expensive, I reckon it would probably have cost me around £150 max on any normal night. So your card has been marked, Mr Bieber!
An unexpected upside to the Miracle solution to my problem (They are good at solutions) was the constant yummy smell coming from the food factory under the office which was helping me build up an appetite so the three of us headed back into the centre of Helsinki to meet for a final lunch with Alex and Debra. I wish I could remember the name of the mixed meat stew with loganberries that I had but it was very tasty and apparently quite traditional. (See, Mark, it's not all Fish Fingers round my way!) I did consider the reindeer but I'm not sure I could have looked the Cuddly Toys in the eye when I got home.
Then there was just time for a trip to the airport on the unsurprisingly efficient and cheap airport bus and managing to lose Debra while I was checking in and then having a smoke. I'm sure she thinks I did it deliberately but she really was gone in a flash, so I'm blaming her I stupidly missed out on valuable lounge time, too, not realising that HEL is one of those few airports where it's still possible to smoke airside. But nothing could get me down now that I had somewhere to sleep and it wasn't too long before I arrived at OSL to find myself in a surprisingly pleasant hotel. I might even stay there again if Bieber stays out of my way.
One long sleep, a fantastic breakfast and a typically enjoyable and efficient Norwegian train experience later and I was hanging around the ferry terminal watching speakers arrive from around the world. Because I'd been at the much smaller and more intimate OUGF, I'd forgotten just how many people attend OUGN and was quite taken aback by the massive crowd hovering around the terminal, waiting to board. However it was a fairly enjoyable wait as several OUGN people were there to take good care of me as always and I know so many people who attend now and don't see too often that I wasn't exactly stuck for a conversation.
Once boarded, it's was time for Duncan Harris' keynote covering some of the history of how Oracle has addressed security issues in it's product and, particularly for an old guy like me, it was funny to be reminded just how far we've come. There's always scope for improvement, of course.
Then it was time for Cary Millsap's "Learning about Life through Business and Software". I'd already seen this keynote at UKOUG where there was almost universal agreement that it was terrific but I could listen to Cary presenting all day and this was no exception. However, I'm a smart guy and previous attendee so I played my master card of leaving his presentation just before the end (much easier to do in the show theatre venue) so that I could avoid the rush to collect my luggage and get to my room before the time that it was supposed to be available officially It worked like a charm, just like last year but perhaps I shouldn't have given my secret away!
Which also meant that I was about to head for an early lunch and avoid queuing there - all important stuff as I was presenting immediately after the lunch break. Imagine my surprise, though, when I discovered that they had converted the smoking room inside the conference centre (that I frequented in the nervous build-up to presentations during previous years) into another conference room and it was where I was due to present! Probably someone's idea of a little joke
The main challenge of the presentations at OUGN was that the presentation slots at OUGF were 60 minutes and I had only asked for 45 minute slots at OUGN. All my own fault as the conference agendas were organised at different times. The Fast ETL processes using native Oracle features probably worked the better of the two and I was surprised to see a completely packed room because Cary was presenting at the same time. Even Oyvind came to my presentation, but probably only because he'd seen the other one before
After that the rest of the afternoon was all about catching up with some more sleep as I was still feeling pretty unwell and I vaguely recall spending a good bit of time with Mark Rittman. There might have been some beer involved, but a good bit of work and business chat too and crowing about just how great the iPad mini is. Mark's a complete Apple Fanboi of course, but it was nice to be able to agree with him about that stuff for a change
I know there was more eating and drinking and night-club time after that (Martin Nash is a bad influence on me ), but, erm, well my memory of that evening is a bit hazy. It *was* a long time ago, after all
As Connor McDonald hadn't been on the Finnish boat, I took the opportunity to catch his Odds and Ends presentation the next morning. He was excellent as usual although I might not have processed what he was saying too well on that particular morning! Let's put it down to nerves about how on earth I was going to get through the 60 minute 10053 trace presentation in 45 minutes. In the end it kind of went ok although, as I vaguely recall Connor tweeting or saying to me later, if I'd spent a bit less time talking about drinking beer later it might have helped! To be honest, it was starting to feel like a very long week and so I was just glad to have finished my presentations to be able to go onshore to Kiel with some friends for lunch.
Most of what happened next eludes me now although I vaguely recall hanging out with some of my *proper* mates from overseas over a quiet beer or two whilst Martin Widlake was serenaded with Happy Birthday by a much louder crowd in a nearby bar. The only reason I remember most of this is because I uncovered this awful photo of Gerald listening intently to Cary Millsap and Tom Kyte. I suspect he thought he'd learn something about Oracle, but the conversation was far more interesting than that!
By the time I'd had some sleep and maintained my tradition of only waking up as our arrival into port was being announced, there was only time for a last few beers (something of a pattern emerging here) in the Oslo sun and then it was time for the trip home.
Thanks again to several good people of OUGN and OUGF for making the double conference a wonderful, if somewhat tiring, experience.