Wang Asked: 2022-11-01 11:03:03 +0800 CST2022-11-01 11:03:03 +0800 CST 2022-11-01 11:03:03 +0800 CST 我应该关闭 ~/.thunderbird 的写时复制吗? 772 .thunderbird 中的邮箱文件是否视为数据库文件(重复随机写入)?如果我将 .thunderbird 留在普通的 BTRFS 分区上,碎片会有多严重?我希望人们可以在这件事上分享他们的经验。 btrfs 1 个回答 Voted Best Answer Marcus Müller 2022-11-01T12:08:42+08:002022-11-01T12:08:42+08:00 几个想法: 默认情况下,Thunderbird 用于邮箱的 mbox 格式(仍然)是顺序的 - 新邮件附加在末尾。所以,根本没有随机写访问! 消息元数据(每条消息在邮箱文件中的哪个位置开始?是否已删除?是否有任何标签?)存储在所谓的 MORK 数据库文件 (.msf) 中。这是一种糟糕的数据库格式(似乎每个人都同意)。更改其中的任何内容都需要重写大部分文件(这是半顺序的)。因此,也没有随机的准时写访问。 我不知道你收到了多少封电子邮件,但即使在糟糕的日子里,对我来说每分钟不到 2 封。不是“经常”,例如您的浏览器的历史记录被频繁写入。(这实际上是一个数据库文件——例如,如果你使用 Firefox,则为 SQLite) 即使在实际的随机访问修改中,COW 也可以与不执行 COW 一样有效。存储介质实际上一次不能更改一个字节。他们物理上必须写回修改过的块,包括计算前向纠错冗余。 因此,对于基于闪存的存储 (SSD),存储设备大小的块 COW 行为没有缺点,因为文件碎片化不涉及寻道时间。(事实上,出于磨损均衡的原因,SSD总是在内部为块执行 COW。) 当然,对于具有寻道时间 (HDD) 的设备,在按顺序读取文件时,碎片文件会影响访问时间。如果这对你很重要,你可能有很多电子邮件(像我一样,我最近数过,我的 Thunderbirds 有超过 50,000 封电子邮件),你可能需要考虑 Thunderbird 的替代品(就像我经常做的那样,即使我正在使用SSD 阵列。我不再使用 Thunderbird 在本地进行全文搜索。我的虚拟服务器在 CPU、RAM 和存储方面的性能比我的工作站低得多,它为服务器端搜索保留了全文索引,并且速度是 > 20 倍作为雷鸟,所以我(尴尬地)使用“在服务器上搜索”功能让我的 IMAP 服务器搜索电子邮件,而不是雷鸟在本地搜索)。 总而言之:去担心你用桌面电子邮件客户端处理的几封电子邮件之外的其他事情!现代文件系统当然可以很好地做到这一点。 甚至对于仍然存在的聊天网络。相比之下,我们没有一种强大且相当有效的方式来存储电子邮件——在电子邮件客户端中。)
几个想法:
总而言之:去担心你用桌面电子邮件客户端处理的几封电子邮件之外的其他事情!现代文件系统当然可以很好地做到这一点。
甚至对于仍然存在的聊天网络。相比之下,我们没有一种强大且相当有效的方式来存储电子邮件——在电子邮件客户端中。)