# TiDB 适用的最佳场景

__*TiDB 的最佳场景*__

+ TiDB 适用于以下场景:
  + 对于单节点的数据库而言,数据量太大
  + 你不想处理 database sharding 的复杂性
  + 数据访问模式没有过于明显的热点
  + 需要事务处理、强一致性容灾
  + 实时的混合事务/分析处理: HTAP
------------------------------------------------------------
对于单节点的数据库而言,数据量太大
  一般单体数据库而言,数据量如果为海量级别（单表 1TB 以上）就会出现查询和更新的性能陡降,但是分布式数据库,例如TiDB的舒适区往往覆盖到 100GB ～ 100TB 之间。

你不想处理 database sharding 的复杂性
  如果在查询中表的数据量过大,按照某列分表分库后,我们又希望跨分片进行统计分析和事务。这个时候分布式数据库就会派上用场。

数据访问模式没有过于明显的热点
  如果您的业务存在大量秒杀,小表查询更新,那么分布式数据库容易形成热点,建议谨慎使用。

需要事务处理、强一致性容灾
  如果有高可用需求,有要求多活写入,那么单体数据库无法满足一致性,分布式数据因为天生具备多副本的一致性优势,所以非常合适。

实时的混合事务/分析处理: HTAP
  TiDB 数据库由于同时存在行存和列存两种形态,所以可以同时满足在线交易和分析的需求。