場景2:排序
場景3:lbs場景
場景4:二值狀態統計
基數統計是指統計乙個集合內不重複的元素,常見應用場景有日活dau、月活mau、網頁uv等;
lbs(location based service),基於距離的服務,常見場景如附近的人、附近的商家等。geo是專門針對lbs場景的資料結構,底層資料結構仍是zset。
geo原理:首選,通過geohash編碼將經緯度(二維資訊)生成乙個編碼(一維資訊),該編碼作為元素的權重儲存在zset中;然後,通過zset的範圍查詢獲取到附近的距離資訊;
首先,分別對經緯度編碼。緯度區間是[-90,90],經度區間是[-180,180],不斷利用二分查詢,確定定位點所在的區間,左邊為0,右邊為1,以此得到二進位制編碼,編碼位數越多表示精度越高;
其次,對經緯度的二進位制串組碼,偶數字放經度,奇數字放緯度,組成新的二進位制串,然後進行base32編碼,得到最終的geohash編碼;
問題1:突變性
問題2:邊界性
二值狀態是指集合內元素的值只有0和1兩種,常見應用場景有簽到打卡;
參考:geohash核心原理解析
redis使用場景
最近要去面試php程式設計師,去各家招聘 看看,都要有redis方面的知識儲備。這裡寫一篇部落格,就當是對最近學習redis的一次回顧。簡單一句話介紹redis 基於記憶體的高效的key value資料庫,把資料載入到記憶體中進行處理,定期把資料儲存到硬碟進行儲存,單執行緒。redis五大資料型別 ...
redis使用場景
redis開創了一種新的資料儲存思路,使用redis,我們不用在面對功能單調的資料庫時,把精力放在寫龐大的sql上了,而是利用redis靈活多變的資料結構和資料操作來實現。redis常用資料型別 redis最為常用的資料型別主要有以下五種 下面我們先來逐一的分析下這五種資料型別的使用和內部實現方式 ...
Redis使用場景
1 字串使用場景 a 快取功能 典型使用場景 redis作為快取層,mysql作為儲存層,絕大部分請求的資料都是從redis中獲取,由於redis具有支撐高併發的特性,所以快取通常能起到加速讀寫和降低後端壓力的作用。b 計數 c 共享session 典型應用場景 使用者登陸資訊,redis將使用者的...