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

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

求存儲(chǔ)數(shù)據(jù)高效過濾重復(fù)數(shù)據(jù)決解方案

求存儲(chǔ)數(shù)據(jù)高效過濾重復(fù)數(shù)據(jù)決解方案

紅糖糍粑 2019-03-01 10:27:53
問題產(chǎn)生過程描述: 【最近在做一個(gè)對接合作方接口業(yè)務(wù),該接口返回最近30分鐘內(nèi)的實(shí)時(shí)訂單數(shù)據(jù),而我們這邊要做的是儲(chǔ)存接口返回來的訂單數(shù)據(jù),且要求我們儲(chǔ)存的訂單數(shù)據(jù)必須唯一, 不能有冗余。然后我們根據(jù)這一業(yè)務(wù)要求進(jìn)行的設(shè)計(jì)是,系統(tǒng)每1分鐘定時(shí)去調(diào)用接口以獲取接口數(shù)據(jù),然后把返回的訂單信息保存。那么現(xiàn)在問題來了,因?yàn)榻涌诜祷氐氖亲罱?0分鐘內(nèi)的訂單數(shù)據(jù),而我們系統(tǒng)是定時(shí)每1分鐘去調(diào)用,如18:55分去調(diào)用接口,返回的是18:25至18:55分時(shí)間內(nèi)的訂單信息。1分鐘后,也就是18:56分又去調(diào)用接口,接口返回18:26至18:56分的訂單數(shù)據(jù)。那么怎么防止插入重復(fù)數(shù)據(jù)】 解決方案: 【我們把保存該訂單信息的表的訂單號(hào)字段設(shè)置成唯一索引。那每次插入重復(fù)數(shù)據(jù)的時(shí)候就不會(huì)重復(fù)插入了】 問題: 除了如上利用唯一索引方式是否還有更高效的解決方案?
查看完整描述

3 回答

?
慕姐4208626

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

如果你只是單一的防重,可以把訂單號(hào)放入redis中,下次獲取的時(shí)候比對一下緩存就可以了。既然你是需要最近30分鐘內(nèi)的實(shí)時(shí)訂單數(shù)據(jù),為何不每30分鐘去獲取一次。

查看完整回答
反對 回復(fù) 2019-03-01
?
慕斯709654

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

如果你的系統(tǒng)是在一個(gè)單機(jī)上運(yùn)行的后臺(tái)的batch job(每分鐘運(yùn)行一次),你只要定義一個(gè)全局變量把每次存儲(chǔ)到數(shù)據(jù)庫的最后一個(gè)訂單id存起來,如果你是按順序存儲(chǔ)訂單。然后把get回來的訂單list里面訂單號(hào)在那個(gè)全局變量之前的訂單都過濾掉,只存儲(chǔ)訂單后在那個(gè)全局變量之后的訂單,并記得每存一次訂單都update一個(gè)那個(gè)全家變量。如果系統(tǒng)是第一次啟動(dòng),可以從數(shù)據(jù)庫load出那個(gè)最大的訂單號(hào)并存在那個(gè)全局變量里。最后,為了保持?jǐn)?shù)據(jù)庫的完整性和一致性,你最好還是把要訂單號(hào)字段設(shè)置成唯一索引。

查看完整回答
反對 回復(fù) 2019-03-01
?
犯罪嫌疑人X

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

這個(gè)本來就是考慮入時(shí)防重復(fù),而不是出時(shí)防重復(fù).而至于出時(shí)的數(shù)據(jù)重讀問題,每個(gè)訂單肯定有個(gè)獨(dú)立特征,比如時(shí)間戳,ID等,比如第一次取出1-10,那么以10為基點(diǎn),第二次從10開始不就行了?

查看完整回答
反對 回復(fù) 2019-03-01
  • 3 回答
  • 0 關(guān)注
  • 507 瀏覽

添加回答

舉報(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)