第十一周第一天11.1
所用时间:315分钟
代码量(行):303
了解到的知识点:
大型数据库在项目的选择
这个在项目的开发中会用到
1. 明确核心业务需求
- 若为金融交易、政务核心系统等强一致性、高可靠需求的OLTP场景,优先选 Oracle、DB2、SQL Server 这类传统关系型数据库,它们严格遵循ACID原则,容灾机制成熟。
- 若为用户行为分析、销售报表统计等海量数据离线分析的OLAP场景,优先选 Hive、Greenplum、ClickHouse 这类数据仓库或列式存储数据库,查询聚合性能更优。
- 若为互联网高并发场景(如电商订单、社交消息),可选用 MySQL(分布式架构)、PostgreSQL,搭配分库分表、读写分离技术,或直接用云原生分布式数据库。
2. 分析数据类型与规模 - 若以结构化数据为主(如订单表、用户信息表),关系型数据库或数据仓库完全适配。
- 若包含大量非结构化/半结构化数据(如日志、图片、JSON),可搭配 HBase(大数据生态)或其他NoSQL数据库,或选择支持多数据类型的 PostgreSQL。
- 数据规模在TB级以下可考虑单体数据库,PB级以上则优先选分布式架构的数据库(如Greenplum、ClickHouse、Hive)。
3. 评估技术成本与生态适配 - 预算有限、偏向开源技术栈,优先选 PostgreSQL、MySQL、Hive、ClickHouse,社区资源丰富,运维成本低。
- 若已基于Windows/.NET生态搭建业务,SQL Server 的集成度最高;若深度使用Hadoop/Spark大数据生态,Hive、HBase 是最优搭配。
- 考量运维团队技术栈:传统DBA团队更擅长Oracle、DB2;大数据团队则更容易驾驭Hive、ClickHouse等开源分布式数据库。
4. 验证性能与扩展性 - 高并发读写场景需测试数据库的QPS、响应延迟,并确认是否支持横向扩展(分库分表、集群扩容)。
- 大数据分析场景需测试海量数据的查询速度,优先选支持MPP架构、列式存储的数据库。

浙公网安备 33010602011771号