抖音hbase庫表設計
1.需求
①如何檢視某紅人的粉絲
②如何檢視某紅人的粉絲數
③如何確定此粉絲是某紅人的嗎
④某紅人的粉絲是否關注了此紅人
⑤有多少粉絲和此粉絲關注的紅人數及紅人一樣
解決方案
①將紅人的姓名作為rowkey,列限定符為自增張,粉絲的姓名作為key,遍歷此rowkey可以得到,但效能極低不合適
②將紅人的姓名作為rowkey,列限定符為自增張,粉絲的姓名作為key,在表中維護乙個count計數器可以統計當前的粉絲數,當插入時只需得知計數器為多少即可在後面插入,但是相對來說查詢粉絲姓名則相當麻煩,因為客戶端傳過來的是粉絲姓名不是關注此紅人的次序號,所以導致查詢只能按照姓名搜尋 scan遍歷性能極低,且在取消關注此紅人時也需要scan遍歷才可得知
③將紅人的姓名作為rowkey,粉絲姓名作為列限定符,值為1,如果關注則增加列限定符,取關則減一,相對來說好一些吧
④將粉絲姓名+紅人姓名結合做rowkey,列限定符為紅人的姓名,值為1,這樣可以更塊的搜尋查詢且關注取關也非常方便
⑤將md5碼+粉絲的姓名+md5碼+紅人的姓名當做rowkeykey,列限定符為紅人的姓名,值為粉絲的姓名。(md5來散裂化rowkey可以提高效能)
資料庫亂碼解決方案
oracle 資料庫亂碼解決方案 你插入資料的時候,用 轉變字串的亂碼函式 param str return public string getstr string str catch exception e 向bean裡面賦值 public void setaction string action...
資料庫死鎖解決方案
一 活鎖 如果事務t1封鎖了資料r,事務t2又請求封鎖r,於是t2等待。t3也請求封鎖r,當t1釋放了r上的封鎖之後系統首先批准了t3的請求,t2仍然等待。然後t4又請求封鎖r,當t3釋放了r上的封鎖之後系統又批准了t4的請求,t2有可能永遠等待,這就是活鎖的情形。避免活鎖的簡單方法是採用先來先服務...
資料庫亂碼解決方案
mysql會出現中文亂碼的原因不外乎下列幾點 1.server本身設定問題,例如還停留在latin1 2.table的語系設定問題 包含character與collation 3.客戶端程式 例如php 的連線語系設定問題 強烈建議使用utf8 utf8可以相容世界上所有字元 一 避免建立資料庫及表...