What are the differences between a production database and a data warehouse ?
I've been looking for information on the differences between both but haven't found any
What are the differences between a production database and a data warehouse ?
I've been looking for information on the differences between both but haven't found any
Production Database System: This is the traditional way of storing and retrieving data. The major task of database system is to perform query processing. These systems are generally referred as online transaction processing system (OLTP). These systems are used day to day operations of ans organization. This type of operational databases are mainly used by the lower level managers for operational decision making.
Data Warehouse: Data Warehouse is the place where huge amount of data is stored. It is meant for users or knowledge workers in the role of data analysis and decision making. These systems are supposed to organize and present data in different format and different forms in order to serve the need of the specific user for specific purpose. These systems are referred as online analytical processing (OLAP). Datawarehouses are mainly used by the higher level managers for strategic decision making.
There are many varieties and a huge amount of information, but here is what we do:
Production:
Primary OLTP (online transaction processing) database, where up-time is critical to your business. Your major systems would connect to this database and store business data here.
Sometimes associated with a pre-production refreshable copy, used for final testing of a production system
Usually has a refreshable test version, used for comprehensive testing of production data
Usually has a dev version, used for syntax testing and developer testing
Warehouse:
This is a category error. A Data Warehouse is a type of database application (others include OLTP, document store). Production is a status: it means the database is live in use for running the business, as opposed to development or test databases.
So we have Data Warehouses in Production, with users executing queries and taking decisions on the basis of that analysis. And we have Data Warehouses in Development and Test, where developers build data structures and write algorithms, and testers er test.
A data warehouse is a central repository of integrated data from one or more homogenous or heterogenous data sources. It is normally used for reporting & analysis which enables business users to take critical business decisions. It can take data from multiple sources like API, files, other databases etc. In the process of setting up data warehouse different environments are also setup.
Typically, there can be three environments-:
Development environment -: Here developers write the code to Extract the data from different sources, transform the data as per the business need and load it to the development database
QA Environment – After development the developers migrate the code to the QA environment which is used by the QA team to test the warehouse/ ETL. The data in this environment is in QA database.
Production Environment – If the QA exit criteria is met the code is migrated to production environment where data is stored in Production Database which is used by business users for analysis & reporting. Business users normally do not have access to lower environment databases like development & QA databases. Hence a Data warehouse is itself a database & a production database can be a data warehouse in the production environment.
But the vice Versa is not mandatory i.e. a production database is not necessarily a data warehouse. Databases can be used in OLTP systems also, wherein transactional data is stored. And a database in the production environment for an OLTP system is also a production database. Many times, an OLTP production Database acts as source for a Production Data warehouse