Database Development
Data is the foundation of your website
Most companies believe that they are in the "distribution" business...
or the "retail" business... but the successful online companies realized
a long time ago that they are in the "data" business also. Key information
that is consumed and created by your industry can be useful to your company as it
grows. It also can be used as a strategic asset giving you a competitive advantage
against your competition.
As we investigate your data model we learn:
- How your data is stored
- How clean your data is
- How distinct or "atomic" your data is
- How your data is imported
- How your data is exported
- Who uses your data and for what benefit
Transactional data needs to be fast and flat (OLTP)
Data that is used for front-facing webpages must be fast and preformatted.
Many websites that we consult with have as many as 21 database calls per individual
page load. This puts a heavy burden on your database that powers your website.
It also makes your website pages load very slowly.
You can make a lot of progress by tuning queries, optimizing query performance and
speeding up database queries, but at the end of the day, the more "pre-thought"
the data is... the better.
This technique of "flattening" data is generally referred to as "denormalization"
or denormalizing the database. This makes your data flat and fast because
the values are already pregenerated. As you engage in database development,
you need to be aware of which databases should be developed to be fast and transactional.
Data warehouses and data mining applications use this frequently to do rollup reports
or cube rollups where individual transactions for the monthly sales are simply added
up into a fact table where a single row has the summarized sales for each month.
By adding these up beforehand, any subsequent data requests or reports that need
these sales totals don't have to be "re-added" each time.
Analytical data needs to be slower and highly "atomic" (OLAP)
Atomic data refers to the concept of data normalization. This means that your
database is divided into highly categorized and organized fields and tables.
Whether you are standardizing on third normal data, fourth normal data or even fifth
normal data, the objective is to have data that is highly accurate, highly specific,
and ultra-organized for reuse.
While your database development is going on, you need to be keenly aware of which
databases that should be designed to be highly atomic for analytical use.
We have developed a concept called Atomic Data Modeling where we go far beyond a
standard fourth normal normalization scheme to something much more precise, reusable
and atomic. This atomic data structure allows us to regenerate data in virtually
any format for any purpose.
Let's take a real-life example. We have data for Lance Armstrong "Live
Strong" white and yellow cycling tank tops for the UCI Pro Tour.
This long string of keywords are considered a "molecule" in our atomic
data model. Just like H2O represents a water molecule (two hydrogen atoms
and one oxygen atom), so too can we deconstruct our "product molecule"
into very discrete data elements.
Let's deconstruct this molecule into its atoms:
- Lance Armstrong (a player)
- Live Strong (a brand)
- White (a secondary color class)
- Yellow (a primary color class)
- Cycling (a sport)
- Tank (a type of top)
- Top (a type of apparel)
- UCI Pro Tour (an entity or organization)
These atoms tend to make sense when combined in that molecular order... but now
we've learned something important. If it makes sense to say:
"Lance Armstrong Live Strong White and Yellow Cycling Tank Top for the UCI Pro
Tour"
Then it also makes sense to say other variations:
"Tim Tebow Florida Gators Orange and Blue Football Jersey for the University
of Florida"
"Fred Taylor Jacksonville Jaguars Teal and Black Football Jersey"
and so on. By deconstructing the atoms in a keyword phrase, we are now able
to reconstruct all possible variations of keywords that match the products that
we need to sell.... all of it coming from our database.
Used data is accurate data
The more used data is... the more useful it becomes. Take the product catalog
data from Ingram Distribution. They had the excel spreadsheet for all of the
books in the universe, yet when Jeff Bezos took this data and launched it on Amazon.com,
allowing anyone on planet earth to republish this data (through Amazon.com) to have
their own bookstore, the central product data became that much more valuable.
He then controlled access to new information like:
- Which books were more popular
- What price were the books selling for
- What geographic areas had more views than others
- What other products were bought by buyers of a particular book
You can see how the more bookstores were launched, the more valuable the core database
become, making Amazon.com one of the most powerful stores on the planet which forced
Ingram Distribution to sell off their company to Barnes and Noble in a firesale.
If you do not master the data for your business... you will also go out of business.
Someone in your supply chain is going to dominate your industry data... at great
cost to you.
Database Developers
Database development is a highly technical art form in its own right and should
be done properly with highly trained database developers. We can help you
develop your database in the proper form and suited to the precise purpose that
you need it to serve. There is no one, single way to develop a database so
we need to analyze your business and we can help you identify which database development
and which database developers you need to do the job right... the first time.