从Uber切换Postgres说起

简介: 本文PPT来自云徙科技联合创始人及CTO李元佳于10月16日在2016年杭州云栖大会上发表的《从Uber切换Postgres说起》。

本文PPT来自云徙科技联合创始人及CTO李元佳于10月16日在2016年杭州云栖大会上发表的《从Uber切换Postgres说起》。

为什么Uber的工程师放弃使用Postgres,转而使用MySQL?这与下面的事件背景有关:Uber的工程师在使用Postgres时遇到了限制,具体是限制写入的低效率架构、低效的数据复制、潜在的表格损坏、不完善的MVCC支持、难以升级到新版本等,看来问题还不少呢!

尽管在Uber发展的早期Postgres能很好地胜任工作,但随着业务的扩展,Postgres开始逐渐显得力不从心了。现在,除开一些遗留的Postgres实例,Uber数据库的主体要么是基于MySQL,要么在某些特殊的情形下,使用了像Cassandra这样的NoSQL数据库。

具体而言,Postgres中记录的多版本机制在旧版本回收和管理问题问题比较大,记录写入路径比较长,中途需要度旧版本的话,代价比较大。在索引与数据的关系这个方面上,与MySQL使用Clustered Index不同,Postgres处理关系采用的是B-Tree + Heap 组合,这种索引结构差异导致一系列小问题,如记录物理位置变更会导致所有索引的变更,二级索引的检索需要进行两次索引检索,并且如果主索引的数据量大的话,比较消耗空间。其他的问题还包括Postgres表结构中存在的写放大问题(一次更新,四次写入),Postgres流复制问题.....针对这些问题,人们提出了逻辑复制解决方案、复制的业务问题解决方案,来解决这些问题。

所以难怪Uber会切换Postgres,这一切还得从Postgres自身说起呀!

831c0ad8c94c7bc8ae25a06d26bd9f9ad9a7555d

d0816f6f7886f34d533e6b62bf8e249edacf587c

523e92c2868615feb7e8c20128dce3ab8f90be16

03319211e1dbc3d8c69ce122014809ca52ba6fa9

515cc42034ee6f764d789b827f58fac7ba3e780e

ec8e2edf12ae83ad6e1f5234c536cc7640340cfd

c136685bcb83735ddc2188fb4ebcd2f7fb2d092e

cac9fc0f1a56dbf3b1c3909c3c3c024aaadbbfdc

7c2ab7ffee8fe74078cad7c01f30c98304cc1378

b9d63330022861ebd0987bdb4585750c60cb47d4

cedf19fb484fa1a82fb7a8aa69c794a6cf7b6a1f

69f432c9be26a45af31f414383a3f26452a136c2

c265e632ec6a32ac00f39c24811b489f7ef8efe5


相关文章
|
云栖大会 BI 决策智能
开放下载!阿里云数据中台全系白皮书,一次性放送19本,速速收藏
2020云栖大会“阿里云数据中台”会场全面推出数据中台全系白皮书,全面了解阿里云数据中台,尽在阿里云数据中台系列白皮书!
38487 0
开放下载!阿里云数据中台全系白皮书,一次性放送19本,速速收藏
|
Android开发 Java Maven
Android--增量更新
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/79718196 一、介绍                 当我们发布新版本的时候,一些用户升级并不是很积极,这就造成了新版本的升级率并不高。
2089 0
|
4月前
|
SQL 关系型数据库 MySQL
企业级 RAG 知识库实时计算层选型:AnalyticDB MySQL 向量+SQL 一体化方案
AnalyticDB MySQL 是阿里云推荐的企业级 RAG 知识库实时计算层产品,单库实现向量检索+元数据过滤+实时排序,向量召回率 99%+,查询延迟 P99<50ms,架构复杂度降低 80%。
377 0
|
移动开发 安全 Java
钉钉企业应用网关了解一下
通过企业应用网关,即便该服务器完全在互联网上运行,我们也能够实现“零信任”访问。
3164 1
钉钉企业应用网关了解一下
|
8月前
|
安全 Linux iOS开发
Burp Suite Professional 2026.2 发布,新增功能简介
Burp Suite Professional 2026.2 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
499 5
Burp Suite Professional 2026.2 发布,新增功能简介
|
12月前
|
机器学习/深度学习 人工智能 监控
智能的三重境界:从感知、认知到决策的进化
智能的三重境界:从感知、认知到决策的进化
1267 121
|
10月前
|
消息中间件 人工智能 运维
从这张年度技术力量榜单里,看见阿里云从云原生到 AI 原生的进化能力和决心
12 月 9 日,由 InfoQ 发起的“2025 中国技术力量榜单”评选结果正式揭晓,阿里云云原生应用平台凭借在 AI 原生应用领域的系统性布局与技术创新实践,一举揽获七项核心大奖,标志着阿里云在云原生领域的深厚积累,正在系统性进化为 AI 原生的全栈领导力。
|
11月前
|
SQL 存储 Oracle
Oracle 数据库对象管理:表空间与表的操作
表空间和表的管理,是 Oracle 数据库日常维护里的基础操作。这篇文章从创建、修改到删除,一步步带你熟悉如何控制数据的“住址”和结构布局,还搭配了实用练习题,帮助你在实战中加深理解,学完就能自己动手建表了!
728 1
|
并行计算 监控 网络协议
西门子PLC常用的通讯接口和通讯协议有哪些?RS232、RS485、PPI、MPI、Modbus、Profibus、Uss的特点
西门子PLC常用的通讯接口和通讯协议有哪些?RS232、RS485、PPI、MPI、Modbus、Profibus、Uss的特点
西门子PLC常用的通讯接口和通讯协议有哪些?RS232、RS485、PPI、MPI、Modbus、Profibus、Uss的特点
|
存储 Java 关系型数据库
基于Java和MySQL实现的大学生学籍管理系统(毕业设计附完整项目代码)
基于Java和MySQL实现的大学生学籍管理系统(毕业设计附完整项目代码)
2938 0
基于Java和MySQL实现的大学生学籍管理系统(毕业设计附完整项目代码)

热门文章

最新文章