国产睡熟迷奷白丝护士系列精品,中文色字幕网站,免费h网站在线观看的,亚洲开心激情在线

      <sup id="hb9fh"></sup>
          1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

            手機站
            千鋒教育

            千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

            千鋒教育

            掃一掃進(jìn)入千鋒手機站

            領(lǐng)取全套視頻
            千鋒教育

            關(guān)注千鋒學(xué)習(xí)站小程序
            隨時隨地免費學(xué)習(xí)課程

            當(dāng)前位置:首頁  >  技術(shù)干貨  > 為什么不用key-value型數(shù)據(jù)庫實現(xiàn)關(guān)系型數(shù)據(jù)庫?

            為什么不用key-value型數(shù)據(jù)庫實現(xiàn)關(guān)系型數(shù)據(jù)庫?

            來源:千鋒教育
            發(fā)布人:xqq
            時間: 2023-10-13 04:21:53 1697142113

            一、為什么不用key-value型數(shù)據(jù)庫實現(xiàn)關(guān)系型數(shù)據(jù)庫

            TiDB / CockroachDB 都是基于 KV 模型做的分布式關(guān)系型數(shù)據(jù)庫。TiDB 實際上是構(gòu)建在 TiKV + pd 這一分布式 KV 存儲上的數(shù)據(jù)庫。所有表都以行的形式存在 KV 數(shù)據(jù)庫里。

            e.g. TiDB 表 a 的某一行,主鍵為 b,就會變成 TiKV 里的一個 KV pair。key 為 table id + primary key, value 為這一行所有列的值。

            在繼續(xù)回答之前先定義一下 KV 型數(shù)據(jù)庫,區(qū)分開存儲引擎和基于 KV 的關(guān)系型數(shù)據(jù)庫。RocksDB 是 KV 型數(shù)據(jù)庫(或者說單機 KV 存儲引擎);TiDB 是基于 KV 存儲引擎做的分布式關(guān)系型數(shù)據(jù)庫。

            至于“日常業(yè)務(wù)中的很多簡單查詢”是否用基于 KV 的數(shù)據(jù)庫更好,可以先從存儲引擎的角度看。

            從存儲引擎的角度來講,不管是 MySQL InnoDB 的 B+ 樹,還是基于 LSM-Tree KV 存儲引擎的 MyRocks / CockroachDB / TiDB,跑一個 SELECT * WHERE pk = 1; 讀的路徑應(yīng)該不會有太大的區(qū)別,無非是根據(jù) sort key 定位對應(yīng)的 page / block 然后把一行撈出來,所以沒有好壞之分。

            與此同時,如果這些“簡單查詢”就是直接跑在 KV 存儲引擎上的(比如問題中提到的 RediSQL),只是簡單地把 SQL 翻譯成了 KV 操作,還需要考慮對表的操作是否有事務(wù)隔離性的要求。即使是“簡單的”操作,e.g.

            UPDATE x = x + 1;

            也需要考慮事務(wù)的隔離性。對于 KV 存儲引擎來講,大多數(shù)引擎只提供點查、刪除、scan 的接口,開發(fā)者要在上面自己實現(xiàn)一層事務(wù)層。特別是在分布式場景下,這個事情就有點復(fù)雜了,和分布式關(guān)系型數(shù)據(jù)庫所面臨的問題是一樣的。

            所以講到底,如果要在 KV 引擎上實現(xiàn)關(guān)系型數(shù)據(jù)庫,即使只支持簡單的 query,也需要處理很多 KV 引擎本身沒有考慮到的事情,比如事務(wù)、持久化(對于 in-memory engine 來說)等等。

            延伸閱讀:

            二、MongoDB是什么

            非關(guān)系型數(shù)據(jù)庫(nosql ),屬于文檔型數(shù)據(jù)庫。MongoDB采用類JSON的documents來存儲數(shù)據(jù)。數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對組成。

            MongoDB采用動態(tài)數(shù)據(jù)模型schema,這意味著不需要預(yù)先定義表的數(shù)據(jù)類型和字段名。當(dāng)MongoDB需要更新文檔documents的時候,可以輕松增加新的字段名或者刪除舊的字段。MongoDB讓數(shù)據(jù)結(jié)構(gòu)更加層級化,因而存儲數(shù)組等復(fù)雜數(shù)據(jù)結(jié)構(gòu)。 在同一個集合collection中,文檔document對字段也沒有強約束,因此更容易設(shè)計差異化的數(shù)據(jù)結(jié)構(gòu)。

            聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
            10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
            請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
            免費領(lǐng)取
            今日已有369人領(lǐng)取成功
            劉同學(xué) 138****2860 剛剛成功領(lǐng)取
            王同學(xué) 131****2015 剛剛成功領(lǐng)取
            張同學(xué) 133****4652 剛剛成功領(lǐng)取
            李同學(xué) 135****8607 剛剛成功領(lǐng)取
            楊同學(xué) 132****5667 剛剛成功領(lǐng)取
            岳同學(xué) 134****6652 剛剛成功領(lǐng)取
            梁同學(xué) 157****2950 剛剛成功領(lǐng)取
            劉同學(xué) 189****1015 剛剛成功領(lǐng)取
            張同學(xué) 155****4678 剛剛成功領(lǐng)取
            鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
            董同學(xué) 138****2867 剛剛成功領(lǐng)取
            周同學(xué) 136****3602 剛剛成功領(lǐng)取
            相關(guān)推薦HOT
            訪問網(wǎng)頁的背后發(fā)生了什么?

            一、域名解析當(dāng)我們在瀏覽器中輸入網(wǎng)頁的域名時,首先需要進(jìn)行域名解析。瀏覽器會將域名發(fā)送給本地域名服務(wù)器(DNS),以獲取對應(yīng)的IP地址。如...詳情>>

            2023-10-13 06:04:09
            外企銀行一般用什么linux版本系統(tǒng)和數(shù)據(jù)庫呢?

            一、外企銀行一般用什么linux版本系統(tǒng)和數(shù)據(jù)庫Linux有非常多的發(fā)行版本,從性質(zhì)上劃分,大體分為由商業(yè)公司維護(hù)的商業(yè)版本與由開源社區(qū)維護(hù)的免...詳情>>

            2023-10-13 05:50:44
            為什么Python開發(fā)世界持續(xù)被Django統(tǒng)治那么久?

            一、全功能的Web框架Django是一個全功能的Web框架,它提供了許多開箱即用的功能和組件,包括路由系統(tǒng)、模板引擎、ORM(對象關(guān)系映射)工具、表...詳情>>

            2023-10-13 05:41:39
            Binder到底是什么?

            一、Binder的定義Binder是Android系統(tǒng)中的一種進(jìn)程間通信(IPC)機制,用于不同進(jìn)程間的數(shù)據(jù)傳遞和通信。它通過跨進(jìn)程的方法調(diào)用,允許一個進(jìn)程...詳情>>

            2023-10-13 05:40:00
            Oracle新出的數(shù)據(jù)庫Oracle21c怎么樣?

            一、Oracle21c怎么樣Oracle 考慮到 2020 年我們的客戶將面臨前所未有的經(jīng)濟和業(yè)務(wù)中斷。我們決定不將 Database 20c Preview 版本升級為 General...詳情>>

            2023-10-13 05:34:16
            快速通道