The Data Warrior

Changing the world, one data model at a time. How can I help you?

Archive for the tag “Oracle”

New Year, New Name, Same Mission

Happy New Year!

Looks like it will be another busy one. So, let’s get going!

Yes, I just changed the name of my blog from “Oracle Data Warrior” to “The Data Warrior.”

Why?

Well, for one, my company name is Data Warrior LLC, so it seemed to make sense.

Plus over the last few years quite a few of you that I see at conferences and such, simply call me “data warrior”. As in,

Hey, Data Warrior, how’s the battle going?

And after a some recent conversations and pondering, I realized that, while I am an Oracle ACE Director, and a fan of Oracle databases and tools, the things I write about and the work I do, is really database agnostic.

Think about it…

Regardless of the database, or data modeling tool, good design principles,  architecture, and standards transcend the technology.

Third normal form

Dimensional

Data Vault

Anchor

There are standards and best practices that are applied in developing all of these models that have nothing to do with technology. (Yes, implementing them efficiently is another story).

Some of my favorite topics, like FKs in data warehouses, and naming standards, are somewhat philosophical, and apply in many situations.

But never fear, you will still see posts on my favorite tool, SQL Developer Data Modeler,  and reports from all the main Oracle events (RMOUG, ODTUG, OOW).

And there will be the occasional rants about badly behaving data models and data modelers.

And of course Data Vault, Agile BI, and varying forms of virtualization.

Plus the occasion inspirational quote.

So while the name has changed, the content will not; the mission will not.

My mission is still to Change the World, One Data Model at a Time.

Let’s see what the year will bring us.

Kent

The Data Warrior

P.S. Look for future posts about upcoming talks I am giving, and at least one surprise new offering.

 

Early Christmas Present: Oracle SQL Developer Data Modeler 4.1 Beta is here! (Still FREE)

Just saw this tweet from Oracle Product Manager Ashly Chen:

Get thee to the site and download away!

Did I say, it is FREE?

(Do remember it is BETA as use it accordingly)

Cheers!
Kent
The Oracle Data Warrior

Oracle 12c Release 1 is here!

After much anticipation the new Release 1 of Oracle 12c (12.1.0.2) is finally available!

Get it here: http://www.oracle.com/technetwork/database/enterprise-edition/overview/index.html

What does this mean:

Oracle’s ground breaking In Memory Database is now available!

As they say…this is BIG. Get more details about In Memory here: http://www.oracle.com/technetwork/database/in-memory/overview/index.html

I am very excited about the possibilities of what we can do with this technology. It will be a game changer especially for those of us trying to do agile data warehousing and business intelligence.

Now we can talk about having big data in memory – quickly accessible so it can be used.

Anyway, it is a big day in Oracle-land.

Now if I can just get my client to upgrade….

Cheers.

Kent

The Oracle Data Warrior

This just in: Win Dinner with Monty at #KScope14

Amazing but true – you can now enter a contest to win dinner with ODTUG President Monty Latiolais at ODTUG’s annual conference KScope14.

This year KScope will be held in beautiful Seattle, Washington from June 22nd – 26th.

Who knows what amazing dinner adventure will be in store for the winner!

Get the details here:

Win Dinner with Monty!.

See you in Seattle!

Kent

The Oracle Data Warrior

P.S. I will be presenting again this year and running my now annual Morning Chi Gung class (more on that later)

Better Data Modeling: My Top 3 Reasons why you should put Foreign Keys in your Data Warehouse

This question came up at the recent World Wide Data Vault Consortium. Seems there are still many folks who build a data warehouse (or data mart) that do not include FKs in the database.

The usual reason is that it “slows down” load performance.

No surprise there. Been hearing that for years.

And I say one of two things:

1. So what! I need my data to be correct and to come out fast too!

or

2. Show me! How slow is it really?

Keep in mind that while getting the data in quickly is important, so is getting the data out.

Who would you rather have complain – the ETL programmer or the business user trying to run a report?

Yes, it has to be a balance, but you should not immediately dismiss including FKs in your warehouse without considering the options and benefits of those options.

So here are my three main reasons why you should include FK constraints in your Oracle data warehouse database:

  1. The Oracle optimizer uses the constraints to make better decisions on join paths.
  2. Your Data Modeling and BI tools can read the FKs from the data dictionary to create correct joins in the meta data of the tool (SDDM, Erwin, OBIEE, Cognos, Bus Objects can all do this).
  3. It is a good QA check on your ETL. (Yeah, I know… the ETL code is perfect and checks all that stuff, bla, bla, bla)

Now of course there are compromise options. The three main ones are I know:

  1. Drop the constraints at the start of the load then add them back in after the load completes. If any fail to build, that tells you immediately where you may have some data quality problems or your model is wrong (or something else changed).
  2. Build all the constraints as DISABLE NOVALIDATE. This puts them in the database for the BI tools and data modeling tools to see and capture but, since they are not enforced, they put minimal overhead on the load process. And, so I am told by those that know, even a disabled constraint helps the optimizer make a smarter choice on the join path.
  3. (really 2a) Best of both – disable the constraints, load your data, then re-enable the constraints. You get optimization and quality checks.

So NOW what is your reason for not using FKs in your data warehouse?

Happy Modeling!

Kent

Post Navigation

%d bloggers like this: