redis查詢資料 比如通過一所學校查詢到學校的所有人的資訊,當然資料是很多的,要怎麼實現呢?

時間 2021-05-07 03:03:51

1樓:zhanjia

REDIS CURSOR或者PIPELINE, 看官網文件,很全,可以用HASH結構查出所有的目的是啥?展示?不需要分頁麼?百萬級的話MYSQL效能也不會特別糟糕

2樓:江花勝火

瀉藥。百萬級的資料不能算多吧,要把資料量化為GB,當然每個人再跟乙份5MB的簡歷,那我就不說話了。

redis是用來做快取,提高查詢的效率的,做系統查詢只是功能最微小的一部分,重點是要考慮寫入。如果用redis做資料儲存,那麼需要更新乙個人的資訊你該怎麼辦呢?

這類問題個人覺得很好解決:

這種資料量的資料,還需要分庫分表?單個mysql就完全可以抗下來了,做好索引,查詢也是秒級的。說下我的方案:

1、按照學校進行分表,儲存該學校的人員資訊

2、人員資訊如果能夠方便的結構化,那麼就上mysql吧,否則使用mongodb

3、擔心單庫速度慢、後期擴容,那麼就上分布式吧,分片鍵就是用學校ID

第一版,簡單粗暴搞一波,用資料說話,別沒做呢,就想著這方案怎麼怎麼慢。

最快的解決方案:

將資料庫中的資料全部存入記憶體,每次從記憶體中讀取,連網路IO的時間都省了,還要啥redis,能用錢解決的問題就不是問題,如果100GB記憶體不夠就上1TB。

3樓:code monkey

百萬級別的資料直接上資料庫啊,oracle處理千萬級別的資料在秒級以內,做好分庫和索引,處理億級別資料也不會慢,不過要看業務複雜程式。乙個學校的人數頂天就10w,基本上mysql和oracle在秒級以內查詢完畢,除非索引建的不對。不過不知道具體實際場景。

如果是業務比較複雜的,可以考慮redis快取一些經常查詢但是改變不頻繁的資料,還可以適當快取一些索引,通過redis去掉一些不必要的sql查詢,不過相應的就要增加維護redis的成本。

4樓:藍筆頭

這個問題提的太粗糙了,很難確切的回答。

我只能說redis可以解決你高頻訪問的問題,如果你只是資料量大,每次都要查一遍,但是頻率不高的話,用redis這種記憶體型資料庫實在是有點代價太高,土豪只在乎速度不在乎成本那就上吧

CMU Australia是怎樣一所學校?

Pivot中樞留學 CMU Australia校區成立於2006年,校區位於南澳洲首府阿德萊德市。CMU 澳洲校區是乙個研究生院,目前只設定了研究生學位專案,MSPPM Public Policy and Management MSIT ITM Information Technology Mana...

一所學校只有一位 校花 嗎?

沈文 個人經驗 統計調查一下所有學生想法的話,按總女生數中所佔比例 男生這邊可能有2 5 左右是 校花 個人眼光不同,基本每班乙個吧,或者偶爾有 此班無美女 的苦逼存在。你說a最美,他說b最美,我們那時停留在本年級層面的較多。女生這邊嘛.破10 是必然的!每個班裡有2 3個女生覺得自己全校最美,不算...

孩子留學多倫多高中,哪一所學校好?

同學你好,我家的孩子是在加拿大新東方國際學院,我感覺還是可以的。高三去讀的名校班,畢業進入了多大的工程系。現在已經換到了新的校區,硬體軟體都得到了很大的改善。我兒子跟我溝通比較喜歡的地方學校的管理比較嚴格,中國孩子比較多,適應的比較快,但是跟國際學校還是有很大區別的。從師資來講,一套中方一套加方,加...