{eval=Array;=+count(Array);}
SQLlite屬于輕量級(jí)數(shù)據(jù)庫,比較適合并發(fā)量不高,數(shù)據(jù)量不大的應(yīng)用場景。有人推薦access,我不推薦,因?yàn)閍ccess在事物和并發(fā)處理上是有問題的。其它如mysql或sqlserver又太重了。我推薦H2,數(shù)據(jù)庫引擎包括管理工具一共才10幾兆,可作為嵌入數(shù)據(jù)庫與程序一同發(fā)布,也可作為database server用于數(shù)據(jù)量和并發(fā)不是很大的網(wǎng)站數(shù)據(jù)庫。H2性能優(yōu)異,我曾進(jìn)行插入記錄測試,表大約有10幾個(gè)字段,只有一個(gè)自增主鍵,其它列未建索引,60萬記錄插入時(shí)間為13秒,一秒約為5萬記錄。H2支持標(biāo)準(zhǔn)sql,兼容很多大型數(shù)據(jù)庫的sql語法,支持以內(nèi)存模式開啟數(shù)據(jù)庫,支持聯(lián)機(jī)備份。缺點(diǎn)是字符集支持的不算好,中文排序需要特殊處理。
你這個(gè)“幾千萬”太模糊了,是只有幾千萬條數(shù)據(jù)(幾千萬條數(shù)據(jù)基本不算多),還是幾千萬查詢,還是幾千萬寫入?這幾千萬讀寫是一天?一個(gè)月還是一年?你先把這些問題講清楚才說選什么數(shù)據(jù)庫!你這幾個(gè)不講清楚,之間差別太大了!
文件數(shù)據(jù)庫不適合幾千萬數(shù)據(jù)場景,sqlite已經(jīng)是頂尖了,考慮用云端數(shù)據(jù)庫吧:mysql
嵌入式數(shù)據(jù)庫,如果軟件開發(fā)語言是java,可選項(xiàng)有hsqldb,apache derby,h2。集成很方便。h2的磁盤存儲(chǔ)模式相對其它兩個(gè)速度要快,能滿足需求。
其它語言數(shù)據(jù)庫,有firebird,oracle Berkeley db, mysql embedded,postgreSQL embedded
這個(gè),幾千萬條數(shù)據(jù),如果表很大,數(shù)據(jù)庫文件會(huì)非常大,既然sqlite都不適合了,用移動(dòng)存儲(chǔ)設(shè)備存儲(chǔ)更不適合。
目前手機(jī)操作系統(tǒng)使用的數(shù)據(jù)庫就是sqlite。
0
回答7
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答