被大佬啟悟到演算法思想特此記錄

2021-09-24 01:14:59 字數 465 閱讀 3624

一、mysql在分庫分表後如何做到插入id自增且唯一

答:使用去中心化的思想,借助mac位址、時間戳等一些第三方的標誌符用hash生成唯一id,如果是同一毫秒進來的資料,再對這同一毫秒的資料做乙個計數,繼續生成唯一識別符號對資料做區分,這樣就可以完成去中心化,免除對id做自增時的第三方服務可能會宕機的問題。

二、分庫分表後如何進行高效能的查詢

答:使用類似於跳板機的服務,將你的sql整體傳入到服務層,服務層對sql進行拆分查詢,等結果出來再將結果做計算返回給請求者

三、100億的字串檔案怎麼做去重

答:這個問題 我首先想到的是用hive+spark來對資料做去重,其實這個解決問題的想法是沒錯的,但是關鍵在於怎麼將資料拆開,

還是乙個大佬給了我解決思路,那就是流式讀取,這樣就不會存在檔案太大記憶體爆掉的問題,然後對你讀取到的每乙個字串做hash,將hash值相同的字串push到同乙個路徑下,這樣就實現了離線的大資料量去重