国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

凡科自助建站靠譜嗎百度推廣獲客

凡科自助建站靠譜嗎,百度推廣獲客,西寧做網(wǎng)站是什么,石家莊論壇建站模板MongoDB 1、簡單介紹2、基本術(shù)語3、shard分片概述背景架構(gòu)路由功能chunk(數(shù)據(jù)分片)shard key(分片鍵值) 4、常用命令 1、簡單介紹 MongoDB是一個分布式文件存儲的數(shù)據(jù)庫,介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間&#xff0c…

MongoDB

  • 1、簡單介紹
  • 2、基本術(shù)語
  • 3、shard分片概述
    • 背景
    • 架構(gòu)
    • 路由功能
    • chunk(數(shù)據(jù)分片)
    • shard key(分片鍵值)
  • 4、常用命令

1、簡單介紹

MongoDB是一個分布式文件存儲的數(shù)據(jù)庫,介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間,支持的數(shù)據(jù)結(jié)構(gòu)類型為BSON,類似于JSON。MongoDB中的記錄是一個document,由字段和值對組成的數(shù)據(jù)結(jié)構(gòu)。

MongoDB適合在數(shù)據(jù)量大,讀寫頻繁,對事務(wù)性要求不高的場景應(yīng)用。


2、基本術(shù)語

  • database:數(shù)據(jù)庫
  • collection:表
  • document:一條數(shù)據(jù)
  • field:字段
  • index:索引

3、shard分片概述

分片(sharding)是 MongoDB 用來將大型集合分割到不同服務(wù)器(或者說一個集群)上所采用的方法。

背景

高數(shù)據(jù)量和吞吐量的數(shù)據(jù)庫應(yīng)用會對單機的性能造成較大壓力,大的查詢量會將單機的CPU耗盡,大的數(shù)據(jù)量對單機的存儲壓力較大,最終會耗盡系統(tǒng)的內(nèi)存而將壓力轉(zhuǎn)移到磁盤IO上。為了解決這些問題,有兩個基本的方法: 垂直擴展和水平擴展。垂直擴展:增加更多的CPU和存儲資源來擴展容量。水平擴展:將數(shù)據(jù)集分布在多個服務(wù)器上。水平擴展即分片。

分片為應(yīng)對高吞吐量與大數(shù)據(jù)量提供了方法。使用分片減少了每個分片需要處理的請求數(shù),因此,通過水平擴展,集群可以提高自己的存儲容量和吞吐量。舉例來說,當插入一條數(shù)據(jù)時,應(yīng)用只需要訪問存儲這條數(shù)據(jù)的分片。而且當某個shard的負載超過一定闕值后,就會自動的重新分發(fā)數(shù)據(jù),用來保證系統(tǒng)的負載均衡。

架構(gòu)

在這里插入圖片描述

  • shard:分片,數(shù)據(jù)的真正存儲位置,以chunk為單位存數(shù)據(jù)。

  • mongos:數(shù)據(jù)路由,和客戶端打交道的模塊。提供對外應(yīng)用訪問,所有操作均通過mongos執(zhí)行

    ? mongos本身沒有任何數(shù)據(jù),他也不知道該怎么處理這數(shù)據(jù),會去找config server。

  • config server:存儲元數(shù)據(jù)和所有shard節(jié)點的信息,分片功能的一些配置信息。

Mongos本身并不持久化數(shù)據(jù),Sharded cluster所有的元數(shù)據(jù)都會存儲到Config Server,而用戶的數(shù)據(jù)會議分散存儲到各個shard。Mongos啟動后,會從配置服務(wù)器加載元數(shù)據(jù),開始提供服務(wù),將用戶的請求正確路由到對應(yīng)的碎片。

路由功能

  • 當數(shù)據(jù)寫入時,MongoDB Cluster根據(jù)分片鍵設(shè)計寫入數(shù)據(jù)。

  • 當外部語句發(fā)起數(shù)據(jù)查詢時,MongoDB根據(jù)數(shù)據(jù)分布自動路由至指定節(jié)點返回數(shù)據(jù)。

chunk(數(shù)據(jù)分片)

在一個shard server內(nèi)部,MongoDB還是會把數(shù)據(jù)分為chunks,每個chunk代表這個shard server內(nèi)部一部分數(shù)據(jù)。chunk的產(chǎn)生,會有以下兩個用途:

Splitting:當一個chunk的大小超過配置中的chunk size時,MongoDB的后臺進程會把這個chunk切分成更小的chunk,從而避免chunk過大的情況

Balancing:在MongoDB中,balancer是一個后臺進程,負責(zé)chunk的遷移,從而均衡各個shard server的負載,系統(tǒng)初始1個chunk,chunk size默認值64M,生產(chǎn)庫上選擇適合業(yè)務(wù)的chunk size是最好的。ongoDB會自動拆分和遷移chunks。

shard key(分片鍵值)

MongoDB 中數(shù)據(jù)的分片是以集合為基本單位的,集合中的數(shù)據(jù)通過片鍵(Shard key)被分成多部分。其實片鍵就是在集合中選一個鍵,用該鍵的值作為數(shù)據(jù)拆分的依據(jù)。

片鍵必須是一個索引。

對集合進行分片時,你需要選擇一個片鍵,片鍵是每條記錄都必須包含的,且建立了索引的單個字段或復(fù)合字段,MongoDB按照片鍵將數(shù)據(jù)劃分到不同的數(shù)據(jù)塊中,并將數(shù)據(jù)塊均衡地分布到所有分片中。

MongDB查詢結(jié)果按照shard key排列,且每一shard中按索引有序排列。


4、常用命令

show dbs # 查看所有數(shù)據(jù)庫
use [database] # 選擇某一數(shù)據(jù)庫
show tables # 查看數(shù)據(jù)庫中的所有表
db.[collection].find() # 查看某一集合的數(shù)據(jù)
db.[collection].find({"id":{$regex:"^a*"}}) # 正則查詢,^:表示匹配字符串開頭;*:匹配任意字符;$:表示匹配字符串結(jié)尾
db.[collection].find().limit() # 限制查詢結(jié)果條數(shù)
db.[collection].find({}, {id:1, name:1}) # 限制返回結(jié)果字段只有id和name
db.[collection].insert({}) # 插入一條數(shù)據(jù)
db.[collection].update({"id":"123456"}, {$set:{"name":"minh"}}) # 更新id為123456的name字段值為minh
db.[collection].sort() # 對查詢結(jié)果按某字段排序
pretty() # 查詢結(jié)果進行格式化處理
findOne() # 查詢單條數(shù)據(jù)
db.[collection].remove({"name":"minh"}) # 刪除數(shù)據(jù)
db.[collection].find().hint({name:1}) # 強制使用某個索引查詢
$and $or

示例:

show dbs
use books
show tables
use literaturedb.literature.find()
db.literature.findOne()
db.literature.find().pretty()
db.literature.find().sort()
db.literature.find().hint({name:1})
db.literature.find().limit(10)
db.literature.find({"name":"WeThree"})
db.literature.find({"name":"WeThree"}, {name:1, author:1, price:1})
db.literature.find({$and:[{"name":"WeThree"}, {"price": {$gte: 30}}]})
db.literature.find({$or:[{"name":"WeThree"}, {"name": "homeless"}]})
db.literature.find({"name": {$in : ["a", "b", "c"]}})db.literature.insert({id:"2", name:"name", author:"minh", price:NumberInt(66), date:NumberLong(12345678)})db.literature.update({name:"name"}, {$set: {name:"minh"}})db.literature.remove({id:"2"})

參考:

https://www.mongodb.com/docs/manual/sharding/

https://zhuanlan.zhihu.com/p/598892366

http://aloenet.com.cn/news/38568.html

相關(guān)文章:

  • 做網(wǎng)站是個什么行業(yè)安卓優(yōu)化清理大師
  • 杭州網(wǎng)站設(shè)計公司聯(lián)系億企邦成都全網(wǎng)推廣哪家專業(yè)
  • 政府網(wǎng)站設(shè)計關(guān)鍵詞愛站網(wǎng)
  • 網(wǎng)件路由器設(shè)置網(wǎng)址蘇州百度搜索排名優(yōu)化
  • 我國政府信息門戶網(wǎng)站建設(shè)研究seo排名優(yōu)化技術(shù)
  • 網(wǎng)站建設(shè)品牌好app拉新推廣平臺
  • 手機訪問asp網(wǎng)站福州百度代理
  • 做網(wǎng)站什么前端框架方便b2b和b2c是什么意思
  • 贛州 做網(wǎng)站seo優(yōu)化總結(jié)
  • 做網(wǎng)站的詐騙公司360搜索引擎下載
  • 設(shè)計風(fēng)格網(wǎng)站欣賞怎么創(chuàng)建網(wǎng)站快捷方式到桌面
  • 網(wǎng)站建設(shè)優(yōu)化服務(wù)信息谷歌seo優(yōu)化公司
  • 網(wǎng)站開發(fā)項目組團隊蘇州百度 seo
  • wordpress帶用戶丁的老頭seo博客
  • 煙臺網(wǎng)站制作開發(fā)抖音關(guān)鍵詞排名查詢工具
  • 外貿(mào)工廠 網(wǎng)站建設(shè)國內(nèi)免費域名注冊
  • 不同類型網(wǎng)站比較及網(wǎng)站域名設(shè)計新聞頭條今日新聞
  • 怎么建設(shè)淘寶聯(lián)盟的網(wǎng)站百度搜索引擎的原理
  • 陜西省高速建設(shè)集團公司網(wǎng)站全國免費發(fā)布信息平臺
  • 動態(tài)網(wǎng)站開發(fā) 機械5118
  • 南京網(wǎng)站設(shè)計我選柚米科技指數(shù)分布的期望和方差
  • 做營銷型網(wǎng)站多少錢百度關(guān)鍵詞優(yōu)化詞精靈
  • 專門做批發(fā)的網(wǎng)站seo網(wǎng)絡(luò)推廣經(jīng)理招聘
  • 企業(yè)網(wǎng)站建立制作個人免費網(wǎng)站建設(shè)
  • php網(wǎng)站制作 青島外貿(mào)seo軟件
  • 配置 tomcat 做網(wǎng)站做搜索引擎優(yōu)化的企業(yè)
  • 12個優(yōu)秀平面設(shè)計素材網(wǎng)站南京seo整站優(yōu)化技術(shù)
  • 做網(wǎng)站廣告收入會員卡營銷策劃方案
  • 做視頻找空鏡頭那個網(wǎng)站比較全seo優(yōu)化有百度系和什么
  • 電子商務(wù)網(wǎng)站建設(shè)的技術(shù)綜述論文優(yōu)化排名 生客seo