我們的一個需求是創建一個臨時內存數據庫,然後執行各種插入/選擇/更新。輕量級內存數據庫
一目瞭然SQLite滿足了我們所有的需求。連接到一個內存中的SQLite數據庫,可以建立簡單:
class SQLiteBase < ActiveRecord::Base
self.abstract_class = true
establish_connection(adapter: 'sqlite3', database: ':memory:')
end
前一段時間,我們已經開始尋找到一些服務表現的問題時,事實證明,我們需要進行批量加載(具體而言,散裝INSERT))數據到我們的SQLite表(參見these基準)。
不幸的是,它看起來像SQLite不支持批量插入。
因此是否有任何其他基於SQL的輕量級內存數據庫,支持批量插入?
如果沒有這樣的 - 有沒有一種方法可以像內存數據庫一樣利用重量級數據庫,如PostreSQL(MySQL或任何其他主要播放器)?
如果postresql/mysql不是一種可行的方式 - 是否還有其他C語言重度優化的數據結構,並在其上面有查詢語言? (有/無紅寶石綁定)。
您在這些測試中是否正確使用內存數據庫中的事務? –