中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

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

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

MongoDB

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

1、簡(jiǎn)單介紹

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

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


2、基本術(shù)語

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

3、shard分片概述

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

背景

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

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

架構(gòu)

在這里插入圖片描述

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

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

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

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

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

路由功能

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

  • 當(dāng)外部語句發(fā)起數(shù)據(jù)查詢時(shí),MongoDB根據(jù)數(shù)據(jù)分布自動(dòng)路由至指定節(jié)點(diǎn)返回?cái)?shù)據(jù)。

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

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

Splitting:當(dāng)一個(gè)chunk的大小超過配置中的chunk size時(shí),MongoDB的后臺(tái)進(jìn)程會(huì)把這個(gè)chunk切分成更小的chunk,從而避免chunk過大的情況

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

shard key(分片鍵值)

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

片鍵必須是一個(gè)索引。

對(duì)集合進(jìn)行分片時(shí),你需要選擇一個(gè)片鍵,片鍵是每條記錄都必須包含的,且建立了索引的單個(gè)字段或復(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() # 對(duì)查詢結(jié)果按某字段排序
pretty() # 查詢結(jié)果進(jìn)行格式化處理
findOne() # 查詢單條數(shù)據(jù)
db.[collection].remove({"name":"minh"}) # 刪除數(shù)據(jù)
db.[collection].find().hint({name:1}) # 強(qiáng)制使用某個(gè)索引查詢
$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://www.risenshineclean.com/news/38568.html

相關(guān)文章:

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