第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

MySQL和NoSQL:幫助我選擇正確的

MySQL和NoSQL:幫助我選擇正確的

MM們 2019-06-20 17:20:39
MySQL和NoSQL:幫助我選擇正確的有一個(gè)很大的數(shù)據(jù)庫,1,000,000,000行,稱為線程(這些線程實(shí)際上存在,我不會(huì)僅僅因?yàn)槲蚁矚g它就讓事情變得更困難)。線程中只有幾個(gè)東西,以加快速度:(int id、String散列、int應(yīng)答計(jì)數(shù)、int dateline(時(shí)間戳)、int forumid、String title)查詢:select * from thread where forumid = 100 and replycount > 1 order by dateline desc limit 10000, 100因?yàn)橛?G的記錄,這是一個(gè)很慢的查詢。所以我想,讓我們把這1G的記錄分成幾張表格,就像我擁有的一樣多的論壇(類別)!差不多完美了。有很多表,我的搜索記錄較少,而且速度更快。查詢現(xiàn)在變成:select * from thread_{forum_id} where replycount > 1 order by dateline desc limit 10000, 100這真的更快,99%的論壇(類別),因?yàn)槠渲写蠖鄶?shù)只有少數(shù)幾個(gè)主題(100k-100萬)。然而,由于有一些記錄大約有1000萬條,所以有些查詢?nèi)匀灰聛?0.1/2秒),對(duì)于我的應(yīng)用程序來說太慢了!我已經(jīng)在用索引了!).我不知道如何使用MySQL來改進(jìn)它。有辦法嗎?對(duì)于這個(gè)項(xiàng)目,我將使用10臺(tái)服務(wù)器(12 GB內(nèi)存,4x7200 rpm硬盤上的軟件RAID 10,四核)這樣做的目的是簡(jiǎn)單地將數(shù)據(jù)庫拆分到服務(wù)器之間,但是由于上面解釋的問題,這個(gè)問題仍然是不應(yīng)該存在的。如果我在這10臺(tái)服務(wù)器上安裝了Cassandra(假設(shè)我找到了使其正常工作的時(shí)間),那么是否應(yīng)該提高性能呢?我該怎么辦?在多臺(tái)機(jī)器上繼續(xù)使用帶有分布式數(shù)據(jù)庫的MySQL,還是構(gòu)建Cassandra集群?我被要求發(fā)布什么是索引,如下所示:mysql> show index in thread;PRIMARY id forumid dateline replycount選擇“解釋”:mysql> explain SELECT * FROM thread WHERE forumid = 655 AND visible = 1 AND open <> 10 ORDER BY dateline ASC LIMIT 268000, 250;+----+-------------+--------+------+---------------+---------+---------+-------------+--------+-----------------------------+| id | select_type | table  | type | possible_keys | key     | key_len | ref         | rows   | Extra                       |+----+-------------+--------+------+---------------+---------+---------+-------------+--------+-----------------------------+|  1 | SIMPLE      | thread | ref  | forumid       | forumid | 4       | const,const | 221575 | Using where; Using filesort | +----+-------------+--------+------+---------------+---------+---------+-------------+--------+-----------------------------+
查看完整描述

3 回答

?
繁華開滿天機(jī)

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊

有一部分問題與NoSQL或MySQL選項(xiàng)有關(guān)。事實(shí)上,這是隱藏在這里的一件基本事情。SQL語言對(duì)人來說很容易寫,對(duì)計(jì)算機(jī)來說也很難讀。在大容量數(shù)據(jù)庫中,我建議避免SQL后端,因?yàn)檫@需要額外的步驟命令解析。我已經(jīng)做了大量的基準(zhǔn)測(cè)試,在某些情況下,SQL解析器是最慢的。你對(duì)此無能為力。好的,您可以使用預(yù)解析語句并訪問它們。

順便說一句,它并不廣為人知,但MySQL是從NoSQL數(shù)據(jù)庫中發(fā)展出來的。MySQLDavid和Monty的作者工作的公司是數(shù)據(jù)倉庫公司,他們常常不得不為不尋常的任務(wù)編寫自定義解決方案。這導(dǎo)致了大量用于手工編寫數(shù)據(jù)庫函數(shù)的自制C庫,而Oracle和其他庫的性能很差。SQL于1996年被添加到這個(gè)有近20年歷史的動(dòng)物園中,以求取樂。你知道之后發(fā)生了什么。

實(shí)際上,使用MySQL可以避免SQL開銷。但通常情況下,SQL解析不是最慢的部分,而是很好的了解。要測(cè)試解析器開銷,只需為“SELECT 1”進(jìn)行基準(zhǔn)測(cè)試;)。


查看完整回答
反對(duì) 回復(fù) 2019-06-20
  • 3 回答
  • 0 關(guān)注
  • 841 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)