相关疑难解决方法(0)

在固定大小的字段上使用 CHAR 与 VARCHAR 对性能有何影响?

我有一个存储 MD5 哈希的索引列。因此,该列将始终存储 32 个字符的值。无论出于何种原因,它都是作为 varchar 而不是 char 创建的。迁移数据库以将其转换为字符是否值得?这是在带有 InnoDB 的 MySQL 5.0 中。

mysql innodb performance varchar

66
推荐指数
3
解决办法
8万
查看次数

哪种 DBMS 适合超快速读取和简单数据结构?

我正在开发一种产品,作为其操作的一部分,必须跟踪大量文件/目录。这个想法是将统计信息存储在数据库中,然后在启动时为每个文件创建监视。更改的文件将排队(在数据库中)以组同步到远程数据库。它们将按优先级顺序同步,数字介于 1-10 之间。

数据库的相关资料:

  • < 100,000 个统计信息条目
  • 启动时读取整个数据库,只需要文件路径
  • 排队的文件将有一个优先级字段(不需要搜索其他任何内容)
  • 插入可能很慢

我发现了几个我认为可以工作的数据库,但我不确定哪个是最好的:

  • Redis - 将文件路径存储为键,将统计数据存储为值;队列将是一个列表
  • MongoDB - 比 Redis 更多的查询选项,但仍然很快

我认为 NoSQL 数据库将是这里的最佳解决方案,因为没有太多的关系逻辑在进行,并且总数据大小不会太大(例如 < 100 mb,接近 < 30 mb)。我确实看过 SQLite,因为它似乎很简单,可以嵌入到可安装的应用程序中。

由于这是面向最终用户的分布式应用程序而不是高负载服务器,因此数据库不必支持许多并发用户。这里的主要优先事项是找到一个模型最有意义的数据库。

那么问题来了,哪个数据库最适合这种情况?

另外,是否还有其他数据库对这样的应用程序更有意义?

database-recommendation

18
推荐指数
2
解决办法
2万
查看次数

最好的 MyISAM 和 InnoDB

由于 RAM 的限制,是否可以让 InnoDB 使用与 MyISAM 相同的索引而不是聚集索引,同时获得其并发性能的好处?

mysql innodb myisam performance index

17
推荐指数
1
解决办法
2万
查看次数

MySQL暖程序

你通常如何预热你的数据库?

我对数据库中的每个表运行类似的查询:

SELECT * FROM ip_log ORDER BY ID;
SELECT ip, member_id FROM ip_log ORDER BY ip, member_id;
Run Code Online (Sandbox Code Playgroud)

这是最好的方法,还是有更酷的方法?

mysql

6
推荐指数
1
解决办法
3256
查看次数