shfshanyue / Daily-Question

互联网大厂内推及大厂面经整理,并且每天一道面试题推送。每天五分钟,半年大厂中
https://q.shanyue.tech
4.95k stars 510 forks source link

【Q275】解释下 OLTP 与 OLAP #277

Open shfshanyue opened 4 years ago

ansonlovecoding commented 12 months ago

OLTP(Online Transaction Processing)和OLAP(Online Analytical Processing)是两种数据库处理方式,它们分别服务于不同的应用场景。

OLTP(Online Transaction Processing): 用途: OLTP主要用于处理大量的短期事务(交易),例如数据库中的增、删、改、查等操作,通常涉及对实时数据的处理。 特点: OLTP系统注重事务的快速处理和高并发性,支持对数据库进行频繁的读写操作。数据库的设计通常采用规范化的模型,以确保数据的一致性和完整性。 示例: 银行交易系统、在线购物系统、航班订票系统等。

OLAP(Online Analytical Processing): 用途: OLAP主要用于支持决策支持和分析,提供对大量历史数据的复杂查询和分析功能。它用于生成报表、统计分析、数据挖掘等。 特点: OLAP系统注重对大规模数据的复杂查询和分析,通常包括聚合、切片、切块等操作,以便用户能够更好地理解数据的趋势和模式。 示例: 数据仓库系统、商业智能系统、在线分析系统等。 总体来说,OLTP关注事务处理,追求快速的读写操作,而OLAP关注数据分析,提供复杂的查询和报表功能。在实际应用中,有时会采用混合的架构,即OLAP和OLTP相结合,以满足不同层次的需求。