Uber的底层存储从Postgres换成MySQL之后

  作者注:有消息Postgres的WAL日志也将变成逻辑型了,在这样的功能推出之后,就可以支持不同版本间的数据复制了。

  MySQL的其他优点

  除了上文所述的几点,MySQL还有几个其他Postgres不具备的优点:

  BufferPool :虽然Postgres在内部有比较小的缓存,但和现在动辄几百G的服务器内存比起来,它的缓存还是太小,对硬件利用率太低了。InnoDB则有BufferPool,可以同时用于写缓冲和读缓存,用LRU管理,大小可配,这样就把硬件资源充分合理的利用起来了。

 

  连接管理:MySQL的连接管理是每个连接一个线程,每个线程消耗的资源都很有限,所以MySQL可以轻松支持10000个以上的连接。可是Postgres是每个连接一个进程的,进程之间通信和共享资源复杂,消耗资源严重,而且对多连接支持不好。Uber的业务已经需要极大的增加数据库连接数,Postgres已经无法满足需要。