Episodes
Monday Jul 05, 2021
Back to basics: Stop doing SQL tuning!
Monday Jul 05, 2021
Monday Jul 05, 2021
SQL Tuning - It is probably the biggest topic in database technology, and it is little surprise why. There is nothing sexier than diving into the heart of the application code, making a few changes and then basking in the admiration of your colleagues as you have once again saved the day! But that very allure of getting our ego stroked can mean that you have lost sight of where you are supposed to be tuning things. In this episode, I'll explore things from a different angle, namely, that SQL tuning is perhaps not where you should be focussing your efforts when it comes to performance issues.
Catch me on Twitter at https://twitter.com/connor_mc_d if you have questions.
Thursday May 27, 2021
Back to basics: The structure of an index
Thursday May 27, 2021
Thursday May 27, 2021
Pick up a reference book and there will most likely be an index at the back to help you locate particularly topics. Are database indexes the same? The goal of indexes in the database is allow rapid lookup of a known value in a table. But how do they achieve this? The secret lies on the structure used by indexes to ensure that finding a value even in billions of rows can be virtually instantaneous. In this episode, we'll extend the book metaphor to explain how database indexes work. Enjoy!
Catch me on Twitter at https://twitter.com/connor_mc_d if you have questions.
Tuesday Apr 13, 2021
Every index is a bug
Tuesday Apr 13, 2021
Tuesday Apr 13, 2021
Every database has indexes...but should they? In this episode, lets consider a different proposition. What if the indexes you have on your database are a mistake...A bug... An implementation error. Give me 30 minutes to convince you of a whole new mindset when it comes to indexes on your database. Enjoy!
Catch me on Twitter at https://twitter.com/connor_mc_d if you have questions.
Wednesday Mar 10, 2021
Back to basics: Once around the block! A look at block internals
Wednesday Mar 10, 2021
Wednesday Mar 10, 2021
Can it be done? Can you delve into the hex dumps, the byte headers, the acronyms all wrapped up in the magic that is an Oracle Database block with no slides, no code, no demos and no visuals? Who knows, but I'll give it my best shot! Don't panic, this is not an episode about digging into internals just for the sake of digging. I'll take a look at the main components of a database block, why they exist, and how these components come together to achieve the concurrency and performance of the Oracle Database that we all love. Enjoy!
Catch me on Twitter at https://twitter.com/connor_mc_d if you have questions.
Addenda: OK, I did cop out a little bit here :-), because if you do want a visual to accompany this episode, then you can get a screenshot of a typical data block dump by clicking here, but its not mandatory for the session.
Monday Feb 15, 2021
Back to basics: The very clever history of the ROWID
Monday Feb 15, 2021
Monday Feb 15, 2021
The ROWID underpins many forms of data access within the Oracle Database. If you're a newcomer to Oracle, querying the rowid from a table returns a cryptic string such as "AAAhDyABAAABd0SAAA". But head back into the earlier versions of the database, and querying the rowid would return a completely different format like "0005DD12.0000.0040". In this episode, I'll cover what the rowid is, why the format of the rowid has evolved over the years, and reveal the extremely clever way this evolution occurred - an evolution that allowed the rowid to store more information in the same number of bytes, and as a result, gave rise to multi-petabyte databases.
You can also get a video version of the details in this episode on my YouTube channel here
Friday Feb 05, 2021
Back to basics: The evolution of tablespaces
Friday Feb 05, 2021
Friday Feb 05, 2021
A tablespace is just a logical grouping of files in your Oracle database. But behind that simple definition sits a remarkable evolution of how tablespaces are defined and managed internally. This episode covers the early days of tablespaces and the pitfalls with managing their space utilisation from within the data dictionary. Then we'll move into the changes and improvements that with Oracle 8i and 8i. Finally we cover some of the more niche tablespace types that you may possibly have never used or even heard of. This episodes also sets you up for the big topic to cover in the next episode ... the ROWID.
Catch me on Twitter at https://twitter.com/connor_mc_d if you have questions.
Saturday Jan 16, 2021
Saturday Jan 16, 2021
The beauty of databases is they we just throw SQL at it, and it handles all the heavy lifting of working out where your data is, and how best to find it. But even for the novice, it is useful to know the fundamental mechanisms in which data is stored. In this episode, I cover datafiles, segments, extents and how your queries translate to the data physically stored on disk. Finally I'll go through how all of that applies when it comes running a basic SELECT statement to scan a table - how does the database locate your data? Catch me on twitter https://twitter.com/connor_mc_d if you have questions.
Saturday Jan 16, 2021
Saturday Jan 16, 2021
On StackOverflow, I chanced upon a beginner being trolled as they struggled to get going with Oracle. "Duh! Just start the database" someone said dismissively. I called out the rudeness by replying: "You don't start a database, you start an instance". So lets go back to basics, and describe Oracle in its most fundamental terms: What is a database? What is an instance? And why its important to understand the difference. Catch me on Twitter at https://twitter.com/connor_mc_d
Saturday Jan 16, 2021
Introducing: The Spoken Nerd with Connor McDonald
Saturday Jan 16, 2021
Saturday Jan 16, 2021
The Spoken Nerd is all about database tech from Connor McDonald - a database tech who has spent 20+ years working with database tech! Ever being frustrated as a child with the limits of 1 KB of RAM in his Sinclair ZX80 computer, Connor has loved the challenges that come with storing data. When the infamous Y2K did not end the world as people thought, he started presenting at conferences and now in our virtual-dominated world, a podcast seemed the perfect fit.