學(xué)習(xí)記錄12 Hadoop生態(tài)圈技術(shù)棧(十)

講義在講Redis之前,花了很大的篇幅去寫緩存的知識底洗,可見緩存與Redis的關(guān)系非同一般祝懂。那么Redis就是緩存嗎?
我們這里也寫學(xué)習(xí)一些緩存的知識坠敷。
緩存存在的意義是為了減輕服務(wù)器的壓力妙同,提高系統(tǒng)的響應(yīng)。
以前緩存指的是CPU上的告訴儲存器膝迎,現(xiàn)在泛指計算機上原始數(shù)據(jù)集的復(fù)制集粥帚,便于快速訪問。
其實緩存是一門藝術(shù)限次,一門空間換時間的藝術(shù)
其實說到這芒涡,也不難看出緩存的優(yōu)缺點的。
大概總結(jié)一下就是緩存可以提升用戶體驗卖漫,減輕服務(wù)器壓力费尽,提高性能。缺點就是額外的硬件付出羊始,并且緩存時也會出現(xiàn)一些問題旱幼。

緩存的讀寫模式

緩存有三種讀寫模式,這里只講最常用的一種突委。就是Cache Aside Pattern柏卤,中文名為旁路緩存,這是最經(jīng)典的緩存+數(shù)據(jù)庫讀寫模式匀油。
具體就是在讀的時候缘缚,先讀緩存,緩存沒有的話再去讀數(shù)據(jù)庫钧唐,然后順便將數(shù)據(jù)庫取出的數(shù)據(jù)放入緩存忙灼,同時返回響應(yīng)匠襟。
緩存的野心很大钝侠,讀數(shù)據(jù)你得先問問緩存该园,緩存沒有,你去問數(shù)據(jù)庫要帅韧,之后也得分給我里初!
那么問題來了,如果數(shù)據(jù)庫更新了怎么辦忽舟?更新緩存嗎双妨?其實不是,是直接刪除緩存叮阅,這也是數(shù)據(jù)庫唯一報仇的以此的刁品,直接殺死緩存。
為什么是刪除緩存而不是更新呢浩姥?其實也很簡單挑随,因為緩存的結(jié)構(gòu)機理,更新數(shù)據(jù)需要先遍歷一遍勒叠,這就意味著我刪除后重新加入新數(shù)據(jù)也比直接更新要快兜挨。
另外順序也有要求,得先更新數(shù)據(jù)庫眯分,再去殺死緩存拌汇。(不然數(shù)據(jù)庫打不過)

Redis

緩存就了解這么多就可以了,接下來就是核心Redis了弊决。
Redis是遠(yuǎn)程的字典服務(wù)器噪舀,是一個鍵值對內(nèi)存數(shù)據(jù)庫,儲值類型有五種丢氢,比較少傅联,但也是最常用的了。就是字符串疚察、散列蒸走、列表、集合和有序集合貌嫡。
說到底還是一個數(shù)據(jù)庫唄比驻?那他存在的意義在哪呢?
他可以給緩存使用岛抄,減輕數(shù)據(jù)庫的壓力别惦,也可以直接給數(shù)據(jù)庫使用,用來臨時存儲文件夫椭,在一些數(shù)據(jù)交互要求高的場景下經(jīng)常能見到他的身影掸掸。
具體的使用再后面的操作環(huán)節(jié)在做解說。

MySQL每日一刷

這道題是計算視頻的完播率,在抖音這類短視頻平臺應(yīng)該是挺常見的扰付。
可以看下下面的數(shù)據(jù)情況堤撵,給了兩個表(大多情況下都是多個表需要自己組合),表1就是用戶和視頻的交互表羽莺,里面給了基本的id數(shù)據(jù)和視頻的開始結(jié)束時間數(shù)據(jù)(需要以此來判斷視頻是否播放完了)实昨。


image.png

表2就是短視頻的信息表了,包含視頻的id盐固、作者等信息荒给。


image.png

其實不難看出,計算出2021年刁卜,短視頻的完播率情況并不難志电,首先寫出出視頻完播率公式:count(結(jié)束時間-開始時間>視頻時長,1蛔趴,null)/ count(開始時間)
不得不說溪北,這可能是這道題唯一的一個小難點了。不過我的寫法肯定是有問題的夺脾,比較時間差直接用兩個時間相減著實是有些low之拨。
觀看時間= timestampdiff(second, start_time, end_time)記得改成這個不然真會被人笑掉大牙??
select
  a.video_id,
  round(
    count(if(end_time - start_time >= duration,1,null)) / count(start_time),
    3
  ) as avg_comp_play_rate
from
  tb_user_video_log as a
  left join tb_video_info as b on a.video_id = b.video_id
where
  year(start_time) = 2021
group by
  video_id
order by
  avg_comp_play_rate desc
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市咧叭,隨后出現(xiàn)的幾起案子蚀乔,更是在濱河造成了極大的恐慌,老刑警劉巖菲茬,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吉挣,死亡現(xiàn)場離奇詭異,居然都是意外死亡婉弹,警方通過查閱死者的電腦和手機睬魂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來镀赌,“玉大人氯哮,你說我怎么就攤上這事∩谭穑” “怎么了喉钢?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長良姆。 經(jīng)常有香客問我肠虽,道長,這世上最難降的妖魔是什么玛追? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任税课,我火速辦了婚禮闲延,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘韩玩。我一直安慰自己慨代,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布啸如。 她就那樣靜靜地躺著,像睡著了一般氮惯。 火紅的嫁衣襯著肌膚如雪叮雳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天妇汗,我揣著相機與錄音帘不,去河邊找鬼。 笑死杨箭,一個胖子當(dāng)著我的面吹牛寞焙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播互婿,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼捣郊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了慈参?” 一聲冷哼從身側(cè)響起呛牲,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎驮配,沒想到半個月后娘扩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡壮锻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年琐旁,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片猜绣。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡灰殴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出掰邢,到底是詐尸還是另有隱情验懊,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布尸变,位于F島的核電站义图,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏召烂。R本人自食惡果不足惜碱工,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧怕篷,春花似錦历筝、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蒸痹,卻和暖如春春弥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背叠荠。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工匿沛, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人榛鼎。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓逃呼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親者娱。 傳聞我的和親對象是個殘疾皇子抡笼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內(nèi)容