分布式数据库
选择分布式数据库
以实际使用场景来看,假设有一个广告系统记录了所有用户在任何时刻触发不同广告的消耗明细,每天大约能产生 5000W 条用户消耗数据明细。现在需要实现一个供流量主可以实时查询这些数据的功能,此时应该选用哪种类型的数据库,在这个应用场景下数据库需要满足以下特点:
- 数据量巨大,且面向 C 端用户查询。
- 频繁写入且频繁查询,要支持范围查询,且查询性能需要在秒级以内。
- 数据存在倾斜的可能性。
传统数据库的瓶颈
MySQL 数据库天生是单机数据库,即它只能运行在一台物理机器实例上,我们没有办法把他拆分开让同一个数据库同时运行在多台机器上。因此它的性能和物理机器实例的配置呈正相关,受到机器配置的制约,机器的天花板上限较低。但是它的好处就是架构较为简单,使用起来更加方便。