[英]Which MySQL database engine is better for storing sessions and session data: MyISAM or InnoDB?
[英]MySQL: InnoDB or MyISAM Engine ::: which is better for lot of selects?
我有一個巨大的文件(〜26 MB),大約有200列和30000條記錄。 我想將其導入數據庫(InnoDB Engine)。 我永遠不會更新或刪除記錄。 盡管我將在where子句中從表中查詢很多記錄,但記錄的復雜度很高。 我應該選擇哪種表引擎來加快查詢響應速度? 真的會有很大的不同嗎? PS:我所有其他表都使用InnoDB。
另外,如何避免手動創建包含200列的表並為每個列指定數據類型。 大多數列都是浮點型的,很少是varchar和date。
通常,“更快,ISAM或innodb”的答案是ISAM
但是為了獲得具有很少更新的表的最佳性能,您可能需要查看Infobright的列式數據庫 (已集成到mysql中)。
但是,只有3萬行時,您看不到innodb,isam和infobright之間的顯着差異。
OTOH,您真的應該認真考慮一下是否真的需要在單個表中包含200列。 我懷疑情況並非如此-模式在確定性能方面比存儲引擎重要得多。
當處理大量數據時,innodb的價格要比myisam好。
http://www.mysqlperformanceblog.com/2007/01/08/innodb-vs-myisam-vs-falcon-benchmarks-part-1/
和
http://www.cftopper.com/index.cfm?blogpostid=84
MySQL支持工程師和Wikipedia工程師James Day建議人們一直使用InnoDB,除非出於某種原因,如果您明顯需要MyISAM:
“在證明它不合適之前,我會選擇InnoDB。第一個原因是可靠性。使用MyISAM會導致崩潰,並且與表大小,表修復過程有關,這是不可靠且緩慢的。與InnoDB相同,而您獲得固定的時間,快速且可靠的日志應用/回滾過程。隨着數據集的增大,這一點變得越來越重要,就像您要執行諸如睡眠之類的事情,而不是在深夜醒來,修復崩潰的表。
為了提高可靠性和性能,我們在Wikipedia上幾乎將InnoDB用於所有內容-我們承受不起MyISAM使用所隱含的停機時間,當崩潰時無法檢查表中的400GB數據。”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.