擴充套件資料庫面臨的挑戰

2022-01-18 21:41:39 字數 721 閱讀 7489

擴充套件資料庫的時候面臨諸多挑戰。搜尋 

當搜尋量很少的時候,搜尋是簡單的事。

當搜尋量上來,比如達百萬級的時候,可以把搜尋內容按某種順序排列。比如在字典中,按字母順序排列。併發 

如果100萬人需要同時用這本字典,這就是併發。

如何解決這個問題呢?

把這本字典複製100萬份,專業術語叫"主從複製"。

再把100萬份複製字典放到每個人的手頭,專業術語叫"分布式策略"。

一致性如果想修改字典,這時候100萬人都在使用著字典,怎麼辦呢?

如果一本一本收回來修改,這就造成了一致性問題,有的修改了,有的還沒有被修改。

如果全部收回來修改,造成了可用性問題,即在字典被收回階段,人們無法使用字典。

還有乙個方法,就是做乙個"修改日誌"或"附錄",不修改原先的字典,把"修改日誌"或"附錄"分發給每個人。死鎖 

在同一時間,有成百上千的人要修改資料庫中的同一條資料,大家對這條資料都競爭。就像超市發禮品,越多的人爭相拿同乙個禮品,這就造成競爭,造成大家互相擁擠堵塞都拿不到禮品。而在資料庫中,這叫"死鎖"。

總結:在現實場景中,資料庫分布在不同的地方,會出現很多人在同時修改同一條資料。這時候需要資料庫設計,需要處理高併發避免死鎖保持一致性,需要環環相扣的演算法,這夠很多資料庫牛人忙活一陣子了。最終給使用者的感覺或假象是:資料庫只有乙份拷貝,同一時間只有乙個人在修改,使用者看到是最新的資料,並且能立即響應。

擴充套件資料庫面臨的挑戰

擴充套件資料庫的時候面臨諸多挑戰。搜尋 當搜尋量很少的時候,搜尋是簡單的事。當搜尋量上來,比如達百萬級的時候,可以把搜尋內容按某種順序排列。比如在字典中,按字母順序排列。併發 如果100萬人需要同時用這本字典,這就是併發。如何解決這個問題呢?把這本字典複製100萬份,專業術語叫 主從複製 再把100...

遊戲資料上鏈面臨的挑戰

近年來,社會對遊戲娛樂消費支出不斷增加。從客戶端遊戲到網頁遊戲,再到現在的手遊,遊戲行業的使用者體量在不斷增長,比如之前的 王者榮耀 就擁有一批不在少數的小學生玩家。使用者規模不斷擴大,遊戲行業水漲船高,競爭也越來越激烈。然而,遊戲行業發展過程中也面臨著一些問題。比如虛擬資產被盜以及不可流通 遊戲資...

情感分析面臨的挑戰

1 命名實體識別 人們實際談及的內容是什麼。比如 蘋果是生活中不可或缺的好東西。蘋果指的是科技產品或是水果?2 指代消解 解決關於代詞 名詞短語的引用問題。比如 我們看完電影後去吃了晚餐,感覺有些糟。在這裡是指電影還是晚餐給人的感覺不爽?3 語法分析 句子中的主客體是什麼,其動詞或形容詞實際情況中指...