Work in Progress: 33,000 and Counting26 March 2012, 2:24 pmPeople have questions, and Tom Kyte has answers.
Tom Kyte, architect in server technologies at Oracle, is the man with the answers in his Ask Tom column in Oracle Magazine and at the AskTom Website (asktom.oracle.com). Oracle Magazine Editor in Chief Tom Haunert recently sat down with Kyte to ask him still more questions. The following is an excerpt from that interview. Download the full podcast at oracle.com/magcasts.
Oracle Magazine: When did you start answering questions, and how many questions have you answered so far?
Kyte: Well, it actually started in about October of 1994. That was the first time I posted to the internet Usenet news groups, which is the discussion forum precursor to Facebook and Twitter and everything else like that. I spent most of my time in comp.databases.oracle.server answering questions about Oracle Database.
From ’94 to about 2000, I posted about 12,000 times to those forums. And then starting in January/February of 2000, I started doing the Ask Tom column in Oracle Magazine, and the AskTom Website started in April of that year. So it’s been about a dozen years of Ask Tom and going on 17 or 18 years of participating in the community answering questions online.
Oracle Magazine: What has motivated you to answer all of these questions?
Kyte: I like the education aspect of it: being able to convey to someone the right way to do something and the best way to do a particular thing inside the Oracle Database software. And I like seeing the lightbulb come on in someone.
Over time I’ve enjoyed watching people “graduate.” Many of the people who used to ask me questions are now the speakers at Oracle OpenWorld, IOUG [Independent Oracle Users Group] conferences, user groups, technical symposiums, and so on. I enjoy watching the people come up through the ranks, and I’ve seen many more than one go from asking the questions to answering the questions to delivering the technical material. That’s a pretty cool thing.
Oracle Magazine: You’ve been quoted as saying that using Oracle Exadata involves some level of unlearning certain Oracle Database practices. What does that mean?
Kyte: The vast majority of us, close to 100 percent of us, learned everything we know about databases and tuning in a transactional environment that I’ll call a small rows environment. In that environment, you’re running queries that might hit tens or hundreds of rows. Your processes affect a small number of rows at a time, so doing things row by row works very well.
When you get into an Oracle Exadata environment, in particular a data warehousing environment, you have to unlearn some of the things you’ve learned. For example, in an OLTP [online transaction processing] environment, you were taught many times that if you were going to retrieve a small percentage of a table through a query, an index was the right way to go. So if you were going to retrieve 1 percent of the rows in the table, you would use an index.
Now that works well on a small number of rows—hundreds or thousands. But if you’re going to retrieve a million rows out of a 100-million-row table, all of a sudden that approach doesn’t scale very well. That would result in a million single-block operations against the database table, and the typical I/O might take 5 milliseconds, so you’re talking about almost an hour and a half of processing time. You could run a full table scan on that information over and over again many hundreds of times in that hour-and-a-half period.
Full Article: http://www.oracle.com/technetwork/issue-archive/2012/12-mar/o22kyte-interview-1512254.html