大型 MySQL 表

2024-01-02

对于我正在开发的Web应用程序,我需要存储大量记录。每条记录将由一个主键和一个(短的)字符串值组成。我期望有大约 100GB 的可用存储空间,并且希望能够全部使用。

记录会被频繁地插入、删除和读取,我必须使用MySQL数据库。数据完整性并不重要,但性能才是重要的。我可能会遇到哪些问题和陷阱以及哪种存储引擎最适合该任务?

非常感谢,J


无论您使用哪种解决方案,因为您说您的数据库将是写入密集型的,所以您需要确保整个表不会在写入时被锁定。这排除了一些人建议的 MyISAM。 MyISAM 将在更新、删除或插入时锁定表。这意味着任何想要从表中读取数据的客户端都必须等待写入完成。不知道 INSERT LOW PRIORITY 会做什么,可能是一些围绕表锁定的 hack :-)

如果您只是必须使用 MySQL,那么您会需要 InnoDB,它不会锁定写入。我不知道 MySQL 如何处理 VACUUM 的 InnoDB 表(InnoDB 是像 PostgreSQL 一样的 MVCC,因此需要清理)...但是如果您正在进行大量更新或删除,则必须考虑到这一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大型 MySQL 表 的相关文章

  • 不同的数据库使用不同的名称引用吗?

    例如 mysql引用表名使用 SELECT FROM table name 注意 其他数据库是否使用不同的字符来引用其表名 这种引号的使用称为分隔标识符 它是 SQL 的重要组成部分 因为否则您将无法使用以下标识符 例如表名和列名 包含空格
  • 在 LAMP 配置中创建个性化 URL

    在 LAMP 配置下创建用户个性化 URL 的最佳方法是什么 例如 可以按如下方式访问用户个人资料页面 http www website com profile php id 1 http www website com profile p
  • mysql - 如果日期不与现有日期重叠,则将日期范围插入日期列

    我有以下表结构 表名 available id autoincremetn acc id start date end date 1 175 2015 05 26 2015 05 31 2 175 2015 07 01 2015 07 07
  • 无法将代码优先迁移应用到 mysql 数据库

    我正在使用 EF 代码优先模型开发 asp net mvc 我正在尝试首先使用 EF 代码将迁移应用到我的项目中 我正在使用 MySql 数据库 目前我使用的是 EF 4 3 1 版本和 6 6 4 0 版本的 mysql Connecto
  • 当服务器时区不是 UTC 时,从 Java 中的 MySQL 检索 UTC DATETIME 字段

    我正在尝试编写代码以使用 Java 和 MySQL 与第三方开发的数据库进行互操作 该数据库有一个字段 用于存储时间戳DATETIME字段作为 UTC 日期 运行数据库和客户端的服务器的时区设置为非 UTC 时区 Europe London
  • JS 无法查询 MySQL 数据库。错误:connection.query 不是函数

    尝试查询我的 mySQL 数据库 但我不能 因为我得到了TypeError connection query is not a function错误 有谁知道为什么吗 我不知道为什么会发生这种情况 数据库 js const fs requi
  • 支付系统的数据库设计

    我有四个表如下 FEES fees id interest amount total amount status id is recurring recurring status from date to date payment id F
  • 重新排列mysql中的主键

    从MySQL表中删除一些行后如何重新排列主键列值 例如 一个包含 4 行数据的表 主键值为 1 2 3 4 当删除第2行和第3行时 第4行的键值变为2 请帮助我找到解决方案 为什么要这样做 你不需要重新排列您的密钥 因为它只是记录的数字和标
  • 保存用户的身高和体重

    我应该如何将用户的身高和体重存储在MySQL数据库中 以便我可以使用这些信息来查找特定身高或体重内的用户 另外 我需要能够以英制或公制显示此信息 我的想法是存储以厘米为单位的身高和以公斤为单位的体重信息 我更喜欢公制而不是英制 我什至可以让
  • 为什么在 MAC OSX 上编译简单的 mysql c 应用程序时不断收到未定义的符号?

    我正在使用 MACOS 并尝试编写一个 测试 mysql 应用程序 该应用程序仅测试与本地数据库的连接 include
  • 如何使用Conda安装MySQLdb?

    我已经阅读了有关如何安装 MySQLdb 的几种不同的解释 但我不确定哪种情况适用于我 因为我的错误消息不同 我的系统似乎找不到 MySQLdb 我安装了 pymysql 但我需要导入 MySQLdb 才能使用该库中的过程 感谢您的帮助 c
  • 数据太长,导致列错误(包含国家字符)

    我必须移植一些DBS变成独立的MySQL版本 5 0 18运行于Windows 7 64 位我遇到了一个困扰我的问题 如果我尝试将任何国家 Unicode 字符插入varchar我收到错误 ERROR 1406 22001 Data too
  • 如何在 Rails 中对不同用户建模

    Question 我有一个带有内置授权和身份验证逻辑的用户模型 现在我意识到我拥有三种不同类型的用户 我想存储每个人的不同信息 Rails 中处理这个问题的最佳方法是什么 基于当前阅读的想法 我看过 STI 但从我读到的内容来看 它是不合适
  • 使用 Hibernate Dialect 设置表字符集/排序规则?

    我使用 Hibernate MySQLInnoDB Dialect 来生成 DDL hibernate cfg xml
  • 无效的 PDO 查询不会返回错误

    下面的第二条 SQL 语句在 phpMyAdmin 中返回错误 SET num 2000040 INSERT INTO artikel artikel nr lieferant nr bezeichnung 1 bezeichnung 1
  • 在无文本搜索查询中使用 sphinx 与 MySQL

    我有这样的疑问 假设我有一个大表 与一个较小的用户表有关系 这个想法是在那个真正的大表中搜索大于给定日期的日期并按分数 例如大整数 排序 并同时获取相关的用户信息 此查询的结果大约每 10 分钟就会更改一次 所以 没有文本搜索 但我有一个非
  • 在 MySQL 中搜索多个单词

    我使用 HTML 表单来允许用户查找数据库表中的条目
  • $_SESSION 中保存大量信息可以吗?

    我需要存储许多数组 SESSION以防止从 MySQL 检索信息 可以吗 其中 太多 的信息有多少 SESSION还是没有 太多 谢谢 附 或者更好地使用http php net manual en book memcache php ht
  • PHP 中的嵌套 JSON 输出

    我正在为 iOS 应用程序构建 API 并尝试将 mySQL 数据转换为 JSON 字符串进行处理 所需的输出将需要顶级订单详细信息 例如客户名称和地址 然后是订购的产品子数组 我需要的两个表中有相当多的字段 我希望拥有所有字段 我已经构建
  • 我的数据库有错误

    创建表时如下 create table Ticket ticket id integer not null primary key AirlineName varchar not null CustomerName varchar from

随机推荐

  • 在逗号分隔的 sql 字符串中的每个单词周围加引号?

    我有一个像这样的字符串 one two three 我怎样才能让它看起来像这样 one two three 所以我可以在 IN 子句中使用它吗 只需使用 REPLACE 方法即可 将逗号替换为所需的字符串 DECLARE TestData
  • 用最少的内存连接 Numpy 数组

    不是我有50GB的数据集保存为h5py 里面是一个字典 字典包含从 0 到 n 的键 值是具有相同形状的 numpy ndarray 3 维 例如 字典 0 np array 我想连接所有这些 np 数组 代码如下 sample np co
  • C# 事件锁定

    C 中是否有类似于 lock 的构造 但在从事件处理程序调用时起作用 即在处理后续事件之前等待代码块完成 我遇到的问题是 lock 仅阻止其他线程获取该对象的锁 但是如果调用同一线程上的事件处理程序 则锁块内代码的执行将被中断 并且新事件是
  • config/environments/development.rb 中“consider_all_requests_local”的用途?

    这个 Rails 配置设置的目的是什么 config action controller consider all requests local true 默认情况下它设置为 trueconfig environments developm
  • Android 中的间谍/监视变量 (Eclipse)

    我是使用 Eclipse 进行 Android 开发的新手 我问一个非常基本的问题 是否可以在调试会话期间观察 监视变量的内容 有点像在 Visual Studio 中 我知道这是一个相当蹩脚的问题 但我自己却无法弄清楚 提前致谢 Gall
  • ASP.NET MVC - 如何在登录页面上显示未经授权的错误?

    在我的 ASP NET MVC 应用程序中 我的大多数控制器都装饰有 Authorize Roles SomeGroup 当用户无权访问某些内容时 他们会被发送到 Login 这是我的帐户控制器上的登录操作 如何确定用户由于未经授权而已到达
  • 如何添加静态断言来检查变量是否是静态的?

    我有一个仅适用于静态局部变量的宏 因为它使用内联汇编表示法来提取有关变量的数据 我需要一种方法来强制宏的输入确实是静态局部变量 correct func f static int x my macro x 不正确 func f int x
  • 使用 XSLT 将名称/值对 XML 转换为元素

    我有一个由名称 值对组成的 XML 文件 我需要使用 xslt 1 的格式 其中每个 名称 都是一个元素名称 内容中包含值 这是一个例子 Input
  • 休眠的替代方案[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为 jQuery UI 按钮创建 AngularJS 指令

    Update 小提琴w 完整的解决方案 http jsfiddle net langdonx VXBHG http jsfiddle net langdonx VXBHG 为了比较 KnockoutJS 和 AngularJS 我浏览了Kn
  • 如何调用另一个文件中的函数?

    例如 我有一个文件 error status php 其中包含一个函数 function validateHostName hostName if strpbrk hostName lt gt FALSE ctype digit hostN
  • WPF:不透明度和 MouseEnter 事件

    作为图表的一部分 我正在绘制一些重叠的形状 每个形状都有Opacity 0 5 像这儿
  • 如何更改microk8s kubernetes存储位置

    您好 我在 Ubuntu 18 单节点机器上安装了 Microk8s Kubernetes 我想知道如何更改存储位置 我希望所有容器 pod 都在 dev sdc 卷中创建 该卷是 ext4 格式而不是默认位置 在 MicroK8s 中 容
  • Swift / 在视图控制器中启用编辑模式

    由于 UI 元素 我创建了 View Controller 里面有一个TableView 但我无法启用编辑模式 我尝试了几种方法都没有解决 但使用 TableView Controller 就没有问题了 我尝试过的 override fun
  • 如何在 Android 应用程序中实现 Java 编译器和 DEX 转换器?

    在试图寻找答案的同时Android Jasper 报告 https stackoverflow com q 7085943 1482507我发现还有另外两个问题需要回答 我被要求作为问题而不是答案提出 我现在的问题是 是否有任何编译器可以直
  • System.Reflection.TargetInitationException :调用目标已引发异常

    我正在尝试自动化reactjs应用程序以及我们项目使用的基于C 和protractor net构建的框架 在任何单击或断言函数之后 我都会收到以下错误 但代码中定义的操作会成功执行 System Reflection TargetInvoc
  • CNN 上的快速损失收敛意味着什么?

    我正在两个不同的深度学习库 Caffe e Tensorflow 中训练两个 CNN AlexNet e GoogLeNet 该网络由每个图书馆的开发团队实施 here https github com BVLC caffe tree ma
  • HTML Button 的 jQuery 函数在使用 MVC FileResult 时遇到问题

    我打算让这个函数调用我的 MVC 操作方法来返回 CSV 报告 function exportButton click function get curReport GetCSVReport 如果我制作一个像下面的代码一样的按钮 那么当单击
  • 我的 docker 镜像是否需要自己的 consul 客户端实例?

    我有一个 dockerized 应用程序 分为几个容器 一些前端和后端服务器 负载均衡器 mysql elasticsearch 等 负载均衡器的配置需要知道哪些容器已启动 因此我使用 Consul 服务发现来注册服务 但我不太确定在每个
  • 大型 MySQL 表

    对于我正在开发的Web应用程序 我需要存储大量记录 每条记录将由一个主键和一个 短的 字符串值组成 我期望有大约 100GB 的可用存储空间 并且希望能够全部使用 记录会被频繁地插入 删除和读取 我必须使用MySQL数据库 数据完整性并不重