关于设计数据库的可扩展性我应该了解什么?

发布于 2024-11-07 08:25:45 字数 140 浏览 0 评论 0原文

除了在经常检索的列上创建索引,以及使用 SELECT col1, col2, col3 FROM tbl 而不是 SELECT * FROM table 之外,关于设计数据库我还应该了解什么为了可扩展性/快速性能?

Apart from creating indexes on columns that are retrieved often, and doing SELECT col1, col2, col3 FROM tbl instead of SELECT * FROM table, what else should I know about designing databases for scalability / fast performance?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

oО清风挽发oО 2024-11-14 08:25:45

有很多东西,你需要知道,小样本

何时使用分区
使表格尽可能窄,以便每页可以容纳更多行
如何最大限度地减少锁定和阻塞
分片
磁盘 IO 子系统(raid 5 或 10、SAN 或 HDD)
使查询可SARGable以便使用索引
解释计划
使用正确的数据类型
查找和扫描之间的区别

There is tons of stuff, you need to know, small sample

When to use partitioning
make tables as narrow as possible so that you can fit more rows per page
how to minimize locking and blocking
sharding
disk IO subsystem (raid 5 or 10, SAN or HDD)
making queries SARGable so that indexes will be used
Explain plan
Using the correct data types
Difference between a seek and a scan

怼怹恏 2024-11-14 08:25:45

您应该知道:

  1. 顺序如何影响 JOIN。
  2. 如何使用解释计划。
  3. 某些类型的 WHERE 子句如何无法使用索引和强制表扫描。

You should know:

  1. how order affects JOINs.
  2. how to use EXPLAIN PLAN.
  3. how certain kinds of WHERE clauses cannot use indexes and force table scans.
波浪屿的海角声 2024-11-14 08:25:45
  • 了解如何使用解释来了解 MySQL 处理查询的方式
  • 了解如何使用慢查询日志记录
  • 考虑分区/分片
  • 考虑您正在使用的数据库引擎
  • Learn how to use explain to understand the way MySQL is processing your query
  • Learn how to use Slow Query Logging
  • Think about partitioning/sharding
  • Consider the database engine that you're using
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文