我知道SQLite在具有多个客户端的共享文件系统上并不理想。但是,文档表明,多位读者应该可以。
我的SQLite数据库驻留在Luster卷上,并且对数据库进行了“分区”-尽管是fit
,而不是显式表,但使用ID上的模运算符来定义分区-这样,多个读者是互斥的。可以,但是(大约)在40%的时间中,读取数据库时(使用Python 3.7.4和SQLite 3.30.0,使用Python stdlib sqlite3)时出现“磁盘I / O错误”。 >
可以安全地假设标准Unix VFS的假设不适用于Lustre文件系统(因为它们不适用于其他联网的文件系统)吗?如果是这样,为什么对读者如此重要?
假设我只需要使用Lustre上的SQLite,我可以做些什么来减轻这种情况?例如,将数据物理上拆分为多个SQLite分片(仅将有一个客户端),并且可能VIEW
将它们分到一个中央源?