記憶體資料庫的資料相關整理(postgresql)

2021-09-28 11:51:03 字數 965 閱讀 8377

前提:資料庫採用的是postgresql,當前解決方案是直接修改資料庫相關資料,現在想通過記憶體資料庫來修改資料庫相關資料以提高io速度。

當前流程圖大概如下:

第一步:首先將資料庫中的資料寫入記憶體,

第二步:c端需要查詢的時候,如果有資料則直接從記憶體中查詢,如果沒有資料則直接從資料庫中查,順便把查到的資料再次寫入快取,

改進後的流程圖大概如下,就是跟資料庫的的互動變掉了,其他流程不變

即在啟動伺服器的時候先將資料庫中的資料寫入到記憶體中,以後的資料操作相關在這邊進行操作,然後在任何時候(一般都指伺服器承載不大的時候)可以new乙個程序把記憶體中的資料寫入資料庫。

第一次測試:數量級為180w,記憶體中採用k-v儲存結構,採用在180w資料集重好隨機取20條資料來確保查詢結果的相對準確性

結論:在記憶體儲存結構為k-v下,記憶體資料庫的查詢速度很棒

第二次測試:測試各個量級的資料佔記憶體多少,來確定記憶體資料庫是否可行(collectgarbage)

結論:100w量級的大約不到1g,前期的話還算靠譜

第三次測試:在1w資料量和10w資料量下分別採用三種查詢方式看效率

結論:頻繁查詢可定要用主鍵索引。但是如果是低頻次查詢,我們也可以使用掃瞄查詢的方式。前提是掃瞄查詢在當前量級上必須是有效的。如果合服到了百萬量級,我們可以關閉記憶體資料庫,訪問直接回到原生資料庫即可(通過斜率比較得出)。

資料庫相關整理語句

備份資料庫 backup database testdb to disk d data testdb20070906.bak 清空日誌 dump transaction testdb with no log 截斷事務日誌 backup log testdb with no log 收縮資料庫 dbc...

MySql資料庫相關問題整理

從圖中可以發現,mysql主要包括連線池 sql介面 查詢分析器 優化器 緩衝 外掛程式式儲存引擎 檔案系統 mysql中的資料用各種不同的技術儲存在檔案 或者記憶體,因為表中的記錄需要通過記憶體和cpu產生作用 中。這其中的每一種技術都使用不同的儲存機制 索引技巧 鎖定水平並且最終提供廣泛的不同的...

資料庫imp exp相關語句整理

如何把已有的資料庫匯入新的資料庫步驟 1 進入系統使用者 一般為system 建立表空間名為tsname 存放位置為d oradata tsname ora 大小為2000m create tablespace tsname 表空間名 datafile d oradata tsname ora si...