2013 华东数据库技术大会亮点回顾:数据库扩展性,高效 SQL,MariaDB

  • 李湃

2013 年 6 月 3 日

话题:数据库MySQLDevOps

2013 年 5 月 18 日在上海举办的2013 华东数据库技术大会覆盖了数据架构、数据库设计与优化、数据库产品选型、DBA 从业经验等多个主题,到会的 500 多位用户涉及 DBA、架构师、开发、BI 等多种角色。

大会的演讲主题包括:

  • 童家旺:数据库系统设计漫谈
  • 何登成:MySQL5.6 版 InnoDB 引擎深入剖析
  • 周彦伟:人人网的 SNS 数据库架构与设计艺术
  • 周振兴:MySQL 优化器概述
  • 金官丁:数据库产品选型和数据库主机选型的艺术
  • 汪洋:MariaDB 数据库浅析
  • 李孟:构建强健的 DNS 解析系统

全部 PPT 现在可以在新浪微盘下载

InfoQ 对现场分享的内容进行了整理,提取一些精彩观点如下:

有关 ACID 原则:

有关 Normalization:

  • Normalization 确保了每份数据只有一个源头,但是带来了更多关系依赖、关联开销以及系统复杂度
  • 尽量不要对静态数据做 Normalization
  • 为什么很多 IT 新人喜欢 Normalization?因为他们的老师告诉他们需要
  • 使用 Normalization 的关键在于判断业务之间的耦合性

有关数据库扩展性:

  • 解决扩展性的根本途径:拆
  • 想明白:你的业务需要多强的数据一致性
  • Cache 的本质:Through Relaxing Consistency to Improve Scalability

高效 SQL:

  • 相同的 SQL,覆盖索引和非覆盖索引时候的性能相差约 25 倍
  • 无法覆盖索引的时候,可以延迟读取(deferred join)

有关子查询:

  • 5.6.5 以后子查询将尽可能转换成 Semi-join 来执行
  • 子查询的执行“总是从外到内”,如果“从内到外”更合适,则 JOIN 更好
  • 5.6 以后子查询性能总是很好

数据库选型:

  • 企业数据库产品种类不要超过 3 种
  • 非 MySQL 5.6 或同类产品,推荐配置是普通 4 核 x2
  • Oracle 对 CPU 利用率更佳,可配置性能优越、核数更高的 CPU
  • 存储主机推荐闪存卡做系统盘,2 块机械硬盘做 RAID1

MariaDB:

  • MariaDB 默认情况下比 MySQL 需要更多内存
  • 慢查询日志上,MariaDB 比 MySQL 有更多扩展信息,如线程 ID、是否全表扫描
  • MariaDB 现在在所有工作场景都可以基于微秒计时工作
  • Fedora、openSUSE、Ubuntu、Slackware、Arch 等发行版都已经采用 MariaDB 作为默认数据库(取代了 MySQL)
  • MariaDB 在 Server 层是非常强的,唯一缺憾是存储引擎层。网易研发的 TNT 存储引擎值得关注

有关 DNS:

  • 小流量业务下,域名托管的表现比自建好
  • 如果自建一个 DNS 系统,至少需要两个异地网络环境
  • 后台服务与前台业务尽量使用不同的域名和不同的域名服务器

大会视频目前正在整理、剪辑,预计近期便能在线观看。感兴趣的朋友们可以关注主办方的新浪微博@mysqlops。同时,@mysqlops 也已经确认将于 2013 年 11 月 16 日在上海举办华东架构师大会,目前已经确定的演讲嘉宾有去哪儿网的唐娟,江游科技的时继江,以及金山网络的毛剑。详情请等待华东架构师大会官网网站的更新。

更新:

大会的视频已经放出,可在大会官网查看。


感谢杨赛对本文的审校。

数据库MySQLDevOps