千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 一個大型的SNS網(wǎng)站,是否適合數(shù)據(jù)庫全部用mongodb來做,為什么?

一個大型的SNS網(wǎng)站,是否適合數(shù)據(jù)庫全部用mongodb來做,為什么?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-10-13 07:26:34 1697153194

一、一個大型的SNS網(wǎng)站,是否適合數(shù)據(jù)庫全部用mongodb來做,為什么

一個大型的SNS網(wǎng)站,數(shù)據(jù)庫不適合全部用mongodb來做,原因如下。

1、數(shù)據(jù)一致性問題

MongoDB雖然支持事務,但在某些特定場景下,如對多文檔的復雜操作仍然存在局限性。相較于傳統(tǒng)的關系型數(shù)據(jù)庫,在數(shù)據(jù)一致性方面還存在一定的問題。

2、存儲空間占用較大

MongoDB在存儲文檔的時候會將字段名稱存儲在每個文檔中,這會導致存儲空間占用較大。在大型SNS網(wǎng)站存儲海量數(shù)據(jù)時,這可能會成為一個問題。

3、不支持 JOIN 操作

MongoDB不支持關系型數(shù)據(jù)庫中類似于JOIN操作的高級查詢功能,這意味著如果需要多表查詢,開發(fā)人員需要自己手動處理,增加系統(tǒng)的復雜度和耗費更多的時間和精力。

4、缺乏豐富的管理工具和資源

相較于傳統(tǒng)的關系型數(shù)據(jù)庫,MongoDB缺乏成熟的管理工具和豐富的資源。在大規(guī)模的SNS網(wǎng)站中,這可能會導致管理和維護數(shù)據(jù)庫變得更加困難和耗時。

5、適用場景有限

MongoDB適合存儲非常規(guī)或更加復雜的數(shù)據(jù)類型,例如嵌套文檔和數(shù)組等。然而,對于結構化類型的數(shù)據(jù)(如用戶登錄、訂單管理等)來說,使用一種傳統(tǒng)的關系型數(shù)據(jù)庫可能會更加適合。

二、MongoDB概述

1、簡介

MongoDB是一個基于分布式文件存儲的數(shù)據(jù)庫。由C++語言編寫。旨在為WEB應用提供可擴展的高性能數(shù)據(jù)存儲解決方案。

MongoDB是一個介于關系數(shù)據(jù)庫和非關系數(shù)據(jù)庫之間的產(chǎn)品,是非關系數(shù)據(jù)庫當中功能最豐富,最像關系數(shù)據(jù)庫的。它支持的數(shù)據(jù)結構非常松散,是類似json的bson格式,因此可以存儲比較復雜的數(shù)據(jù)類型。Mongo最大的特點是它支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言,幾乎可以實現(xiàn)類似關系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對數(shù)據(jù)建立索引。

簡而言之,MongoDB是文檔型的NoSQL數(shù)據(jù)庫,數(shù)據(jù)以文檔(對應關系型數(shù)據(jù)庫的記錄)的形式在MongoDB中保存,文檔實際上就是一個個JSON字符串,使用JSON的好處是非常直觀,通過一系列的Key-Value鍵值對來表示數(shù)據(jù),符合我們的閱讀習慣。

2、特點

高性能

MongoDB提供高性能的數(shù)據(jù)持久性。對嵌入式數(shù)據(jù)模型的支持減少了數(shù)據(jù)庫系統(tǒng)上的IO活動。索引支持更快的查詢,并且包含嵌入式文檔和數(shù)組的鍵。

文本索引解決搜索的需求;TTL索引解決歷史數(shù)據(jù)自動過期的需求;地理位置索引可用于構建各種 O2O 應用。

高可用性

MongoDB的復制工具稱為副本集(reolica set),它包含提供自動故障轉移和數(shù)據(jù)冗余。

高可用性

MongoDB提供了水平可擴展性作為其核心功能的一部分。分片將數(shù)據(jù)分布在一組集群的機器上。(海量數(shù)據(jù)存儲、服務能力水平擴展)

從3.4起,MongoDB支持基于片鍵創(chuàng)建數(shù)據(jù)區(qū)域,在一個平衡的集群中,MongoDB將一個區(qū)域所覆蓋的讀寫只定向到該區(qū)域內(nèi)的那些片。

豐富的查詢支持

MongoDB支持豐富的查詢語言,支持讀寫(CRUD)操作、比如數(shù)據(jù)聚合、文本搜索、地理空間查詢等。

其他特點

如動態(tài)模式、靈活的文檔模型。

3、應用場景

游戲場景:使用MongoDB存儲游戲用戶信息、裝備、積分等,直接以內(nèi)嵌文檔的形式存儲,方便查詢、更新。物流場景:使用MongoDB存儲訂單信息、訂單狀態(tài)、物流信息,訂單狀態(tài)在運送過程中飛速迭代、以MongoDB內(nèi)嵌數(shù)組的形式來存儲,一次查詢就能將訂單所有的變更查出來,牛逼plus。社交場景:使用MongoDB存儲用戶信息,朋友圈信息,通過地理位置索引實現(xiàn)附近的人、定位功能。物聯(lián)網(wǎng)場景:使用MongoDB存儲設備信息、設備匯報的日志信息、并對這些信息進行多維度分析。視頻直播:使用MongoDB存儲用戶信息、點贊互動信息。

4、語言支持

MongoDB有官方的驅動如下:

CC++C# / .NETErlangHaskellJavaJavaScriptLispnode.JSPerlPHPPythonRubyScalaGo

5、應用案例

Craiglist,上使用MongoDB的存檔數(shù)十億條記錄。FourSquare,基于位置的社交網(wǎng)站,在Amazon EC2的服務器上使用MongoDB分享數(shù)據(jù)。Shutterfly,以互聯(lián)網(wǎng)為基礎的社會和個人出版服務,使用MongoDB的各種持久性數(shù)據(jù)存儲的要求。bit.ly, 一個基于Web的網(wǎng)址縮短服務,使用MongoDB的存儲自己的數(shù)據(jù)。spike.com,一個MTV網(wǎng)絡的聯(lián)營公司, spike.com使用MongoDB的。Intuit公司,一個為小企業(yè)和個人的軟件和服務提供商,為小型企業(yè)使用MongoDB的跟蹤用戶的數(shù)據(jù)。sourceforge.net,資源網(wǎng)站查找,創(chuàng)建和發(fā)布開源軟件免費,使用MongoDB的后端存儲。etsy.com ,一個購買和出售手工制作物品網(wǎng)站,使用MongoDB。紐約時報,名列前茅的在線新聞門戶網(wǎng)站之一,使用MongoDB。CERN,知名的粒子物理研究所,歐洲核子研究中心大型強子對撞機的數(shù)據(jù)使用MongoDB。

延伸閱讀1:什么是SNS

SNS俗稱社會性網(wǎng)絡服務,是一種新興的網(wǎng)絡應用,是指人和人之間通過朋友、理想、交易、興趣、愛好等一定關系建立起來的社交化網(wǎng)絡結構,它是基于現(xiàn)實六度關系理論發(fā)展起來的社會網(wǎng)絡關系系統(tǒng)網(wǎng)絡形態(tài)。具有代表性的如微博、人人網(wǎng)、開心網(wǎng)等,它們擁有大量的用戶群體,對很多人特別是年輕群體有著深刻的影響,由于高昂的人氣,而蘊含著巨大商機,引發(fā)更多的企業(yè)以SNS營銷創(chuàng)造更大價值。

聲明:本站稿件版權均屬千鋒教育所有,未經(jīng)許可不得擅自轉載。
10年以上業(yè)內(nèi)強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
在线免费国产久 | 亚洲成α人片在线观看 | 亚洲成AV人久久 | 亚洲欧美一区在线登录 | 亚洲欧美日韩精品久久亚洲区 | 日韩v欧美v中文在线 |