OLTP vs OLAP

OLTP(Online transaction processing)

If you are doing analytics(ex. aggregating historical data) use OLAP.

Example

You are building an online store/website, and you want to be able to:

  • Store user data, passwords, previous transactions…

  • Store actual products, their associated price

  • You want to be able to find data for a particular user, change it’s name… Basically perform INSERT, UPDATE, DELETE operations on a user data. Same with products, etc.

  • You want to be able to make transactions, possibly involving a user buying a product (that’s a relation).

Then OLTP is probably a good fit.

List of OLTP databases

  • MySQL.
  • PostgreSQL
  • MSSQL
  • Oracle

OLAP(Online analytical processing)

If you are doing transactions(ex. adding/removing orders from an e-commerce cart) use OLTP

Example

You have an online store/website, and you want to compute things like

the “total money spend for all users” "what is the most sold product" This falls into the analytics/business intelligence domain, therefore OLAP is probably more suited.

If you think in terms of “It would be nice to know how/what/how much”…, and that involves all “object” of one or more kind (ex. all the users and most of the products to know the total spent) then OLAP is probably better suited.

List of OLAP database

  • Hadoop
  • InfluxDB

References

https://www.datawarehouse4u.info/OLTP-vs-OLAP.html

Last updated on