如果你有興趣讀標準可以看看 https://xhr.spec.whatwg.org/
在Contains前面輸出
Console.WriteLine(string.join(" ", dt.Columns))
Console.WriteLine(field.Trim())
關于{dbstats: 1}
意思:
{dbstats: 1}
({"query": {"dbstats": 1}}
)bar
({ns: 'bar'}
)command
操作({op: 'command'}
)因此執(zhí)行的語句是:
db.runCommand({dbstats: 1});
它實際上就是db.stats()
方法的內部操作:
rs0:PRIMARY> db.stats
function (scale) {
return this.runCommand({dbstats: 1, scale: scale});
}
mongos> sh.status()
databases:
{ "_id" : "foo", "primary" : "shard1", "partitioned" : false }
{ "_id" : "bar", "primary" : "shard0", "partitioned" : false }
這個輸出的意思是現(xiàn)在有兩個集合,foo
/bar
,它們都沒有分片({"partitioned" : false}
),因為沒有分片,所以實際承載它們的只是一個分片。分別們于shard1
/shard0
上({"primary" : "shard1"}
/{"primary" : "shard0"}
),不是你理解的統(tǒng)計另外一個shard中的庫。再者,這個命令是從mongos上執(zhí)行的,mongos本來就連接著所有的分片,也不存在所謂統(tǒng)計“另外一個shard”。
最后執(zhí)行時間太長的問題,確實db.stats()
不應該執(zhí)行這么久。這個問題可能跟特定版本的bug有關系,或者跟你的環(huán)境有一些聯(lián)系,需要具體分析日志。建議去jira.mongodb.org開ticket詢問情況。
數(shù)據(jù)庫存儲引擎使用的不對 要使用innodb
《MYSQL內核:INNODB存儲引擎》和《高性能MySQL》都有相關內容
這幾篇文章或許也能幫到你
[Mysql]——通過例子理解事務的4種隔離級別:
https://www.cnblogs.com/snsdz...
數(shù)據(jù)庫并發(fā)的五個問題以及四級封鎖協(xié)議與事務隔離的四個級別
http://blog.csdn.net/zhangzey...
問題解決了, 在reducer中請求時返回就是NULL,算是自己坑了自己,
`function Requesting(state) {
return immutable.fromJS(state).merge({
isRequesting: true,
data: null,
error: null
}).toJS();
}`
data:null 修改成data:state.data 就可以正確返回數(shù)據(jù)
找到系統(tǒng)的cmd,右鍵 > “以管理員身份運行”
用concat_ws便于使用參數(shù)化sql語句, 可以避免sql注入, 更適用于列表
SELECT * FROM db WHERE keyword REGEXP concat_ws("|",
"金融",
"企業(yè)",
"其他");
加引號試試。
感覺你現(xiàn)在做的是 藍圖 的形式。
先確定一下,你的兩個項目里的編譯器位置是否是同一個,如果是同一個,那么你就得設置藍圖。
not exists效率本來就不高啊...
暫時先不考慮數(shù)據(jù)庫自動進行的編譯優(yōu)化這點,假設兩個實現(xiàn)用最樸素的實現(xiàn)方式
not exists本質上就是循環(huán)執(zhí)行doctor數(shù)據(jù)量次數(shù)的select 1 xxx語句,篩選出執(zhí)行查詢沒有結果的數(shù)據(jù),在這里就是30w或者20w次的select,即便都有索引select起來很快也架不住循環(huán)次數(shù)多啊
not in一般是先把in里的語句查出來,然后對結果和doctor做一個join關聯(lián)出匹配的上(in)或者匹配不上(not in)的數(shù)據(jù),就算沒有優(yōu)化查詢次數(shù)也依然比not exists少很多
而且如果not in的子查詢有建索引,還可以直接自動優(yōu)化成一個join語句做兩張表的關聯(lián)以進行索引之間的對比,也不用先把select子查詢計算出來再對比,類似
select count(*) from docker d,doctor_intro di where d.did = di.did and d.did is not null and di.did is null(sql隨便寫的,也沒實際執(zhí)行,可能是錯誤的,大概可以理解意思就行)
這樣一來的話速度就更快了,因為執(zhí)行時可以直接對比索引文件里的數(shù)據(jù)是否關聯(lián)的上,把關聯(lián)不上的數(shù)量取出來就完成了,可以省略掉先查出 SELECT did FROM doctor_intro 這步了
具體上mysql我目前很少用,內部做了哪些優(yōu)化也不清楚,我上面說的是建立在沒有優(yōu)化的基礎上,實際上涉及到sql編譯優(yōu)化后問題就復雜了很多,我目前也是還沒學完屬于基本不懂的狀態(tài),這方面就不多說什么了
參照:Index Types Per Storage Engine, 這個存儲引擎有關系,InnoDB和MyISAM只支持BTREE,因此默認均是BTree,MEMORY和HEAP支持Hash和Btree,如無明確聲明,則默認索引均是hash(包括主鍵)。
odp.net。
表KEY_COLUMN_USAGE在information_schema庫里,要指定庫名才能獲取得到。
SELECT * FROM information_schema.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA='表對應的庫名' AND REFERENCED_TABLE_NAME='DC_CommodityItem' AND REFERENCED_COLUMN_NAME='CommodityItemID';
獲取得到數(shù)據(jù)就是有包含外鍵
參考文檔serverStatus,對每個輸出結果項都有詳細說明。mapped
和mappedWithJournal
只針對MMAPv1引擎有效
Only for the MMAPv1 storage engine.
3.2以后默認的存儲引擎是WiredTiger,所以這兩個值一直為0。
至于映射方式,MMAPv1使用的就是Linux操作系統(tǒng)的內存映射,篇幅所限沒法在這里解釋,不過網上已經有很多相關的資料。
field1做索引,常用的數(shù)據(jù)做Redis緩存。
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術與教育服務機構,發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯(lián)網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。