gpt4 book ai didi

php - 使用 MYSQL 存储索引列表?

转载 作者:行者123 更新时间:2023-11-29 02:29:34 25 4
gpt4 key购买 nike

我有一个 MySQL/PHP 性能相关的问题。

我需要在表中存储与每条记录关联的索引列表。每个列表包含 1000 个索引。我需要能够快速访问与给定记录关联的列表中的任何索引值。我不确定最好的方法。我想到了以下方法并希望您对它们提出意见:

  1. 将列表存储在字符串中作为逗号分隔值列表或使用 JSON。性能可能很糟糕,因为我需要将整个列表从数据库中提取到 PHP 中,只是为了检索单个值。解析字符串也不会很快......我可以在 PHP 端的最近最少使用缓存中存储一​​些扩展列表以减少负载。

  2. 创建一个包含 1001 列的列表,用于存储列表及其主键。我不确定这在存储方面的成本是多少?这也感觉像是在滥用系统。然后,如果我需要存储 100000 个索引怎么办?

  3. 只用 SQL 存储包含我的索引的二进制文件的名称并执行 fopen(); fseek();恐惧();每次访问的 fclose() 循环?不确定系统文件系统缓存将如何对此使用react。如果情况不妙,那么有许多解决方案可用于解决问题……但这听起来有点矫枉过正,不是吗?

你怎么看?

最佳答案

旧的一对多关系怎么样?

records
-------
id int
record ...

indices
-------
record_id int
index varchar

然后:

    SELECT *
FROM records
LEFT JOIN indices
ON records.id = indices.record_id
WHERE indices.index = 'foo'

关于php - 使用 MYSQL 存储索引列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15249098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com