日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > Caffe >内容正文

Caffe

Caffe代码导读(2):LMDB简介

發布時間:2025/3/21 Caffe 158 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Caffe代码导读(2):LMDB简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

閃電般的內存映射型數據庫管理(LMDB)

簡介

LMDB是基于二叉樹的數據庫管理庫,建模基于伯克利數據庫的應用程序接口,但做了大幅精簡。整個數據庫都是內存映射型的,所有數據獲取返回數據都是直接從映射的內存中返回,所以獲取數據時沒有malloc或memcpy發生。因此該數據庫仍是非常簡單的,因為它不需要自己的頁面緩存層,并且非常高效、省內存。它在語義上完全符合ACID(原子性、一致性、隔離性、持久性)。當內存映射為只讀時,數據庫完整性不會被應用程序的迷失指針寫破壞。

?

該庫也是線程可見的,支持來自多進程/線程的并發讀/寫訪問。數據頁使用寫時復制策略,故沒有活動數據頁被覆蓋寫入。這也提供了保護機制,經歷系統崩潰后不需要特殊恢復過程。寫入過程為完全串行的;一次只有一個寫會話是活動的,這保證了寫入者不可能死鎖。數據庫結構是多個版本,所以讀出者運行時不加鎖。寫入這不會阻塞讀出者,讀出者也不會阻塞寫入者。

?

不像其他熟知的數據庫機制(使用寫前會話日志或數據僅追加寫),LMDB操作時不需要保持會話。前面兩種都需要周期性地檢查或者壓縮他們的日志或數據庫文件,否則會無限增長。LMDB記錄數據庫內的空頁面,在新的寫入操作時重用他們,所以正常使用時數據庫尺寸不會無限增加。

?

內存映射可以用作只讀映射或讀寫映射。默認為只讀映射,這提供了對破壞完全的免疫力。使用讀寫模式提供了更高的寫性能,但增加了被惡意寫入破壞數據庫的可能性。當然如果你的應用代碼是已知無bug的,那么這不是個嚴重的問題。

總結

以上是生活随笔為你收集整理的Caffe代码导读(2):LMDB简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。