回答

收藏

大型MySQL表格

技术问答 技术问答 135 人阅读 | 0 人回复 | 2023-09-13

对于正在开发的Web应用程序,我需要存储大量记录。每条记录将由一个主键和一个(短)字符串值组成。我希望有大约100GB的可用存储空间,并希望能够全部使用。
- D0 V% |6 X! _8 q记录将被插入,删除和频繁读取,并且我必须使用MySQL数据库。数据完整性不是关键,但性能至关重要。我可能会遇到什么问题和陷阱,哪种存储引擎最适合该任务?
* p+ O% F- e& F5 A& j; R非常感谢,/ A) d; f8 J) P$ {% c
               
; n5 T" O5 p7 [解决方案:
& w7 u/ M; x" s& k2 i' Q& t( G0 u3 @               
! v" V; p7 e7 I! o3 i. Q
* Y9 M4 ^6 Q3 B6 u1 Y+ b3 t: k. e' o9 u
                无论使用哪种解决方案,由于您说数据库将是大量写入操作,因此需要确保整个表不会在写入时被锁定。这排除了某些建议的MyISAM。MyISAM将在更新,删除或插入时锁定表。这意味着任何想要从表中读取的客户端都必须等待写入完成。但是,Dunno的INSERT LOW PRIORITY是做什么的,可能是一些围绕表锁定的技巧:-)
; x" Q! q# o$ ?如果您仅必须使用MySQL,则需要InnoDB,它不会在写入时锁定。我不知道MySQL如何做VACUUM的InnoDB表(InnoDB是像PostgreSQL那样的MVCC,因此需要清理)…但是如果要进行大量更新或删除,则必须考虑到这一点。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则