原创 Elasticsearch使用總結

  最初接觸Elasticsearch是在ELK日誌系統的建設中,隨着對日誌數據的消費越來越多,被其強大的數據搜索和分析能力所吸引;後來,在用戶行爲數據採集系統中,使用Elasticsearch做核心數據存儲和實時聚合分析;再後來,使

原创 創業公司做數據分析(一)開篇

        瞭解“認知心理學”的朋友應該知道:人類對事物的認知,總是由淺入深。然而,每個人思考的深度千差萬別,關鍵在於思考的方式。通過提問三部曲:WHAT->HOW->WHY,可以幫助我們一步步地從事物的表象深入到事物的本質。比如學習

原创 循環查詢數據的性能問題及優化

寫在前言:糟糕的代碼,對代碼維護、性能、團隊協作都會造成負面影響,所以,先設計再實現,謀而後動。                 這裏的循環查詢,指的是在一個for循環中,不斷訪問數據庫來查詢數據。在剛接手公司數據報表系統時,發現有很多每

原创 聚合查詢越來越慢?——詳解Elasticsearch的Global Ordinals與High Cardinality

  Elasticsearch中的概念很多,本文將從筆者在實踐過程中遇到的問題出發,逐步詳細介紹 Global Ordinals 和 High Cardinality ,這也是筆者的認知過程。文中的Elasticsearch 版本爲5

原创 淺談微信公衆號營銷背後的技術

       微信公衆號已成爲很多公司/產品線上營銷的主戰場之一。本文試圖分析在開發者模式下,微信公衆號營銷背後的幾個常用技術方案。就目前接觸的業務來看,基於微信公衆號的營銷主要有下面兩條線。         其中,第一條線是以公

原创 創業公司做數據分析(六)數據倉庫的建設

  作爲系列文章的第六篇,本文將重點探討數據處理層中數據倉庫的建設。在第二篇運營數據系統一文,有提到早期的數據服務中存在不少問題,雖然在做運營Dashboard系統時,對後臺數據服務進行了梳理,構建了數據處理的底層公共庫等,但是仍然存

原创 談Elasticsearch下分佈式存儲的數據分佈

  對於一個分佈式存儲系統來說,數據是分散存儲在多個節點上的。如何讓數據均衡的分佈在不同節點上,來保證其高可用性?所謂均衡,是指系統中每個節點的負載是均勻的,並且在發現有不均勻的情況或者有節點增加/刪除時,能及時進行調整,保持均勻狀態

原创 創業公司做數據分析(四)ELK日誌系統

  作爲系列文章的第四篇,本文將重點探討數據採集層中的ELK日誌系統。日誌,指的是後臺服務中產生的log信息,通常會輸入到不同的文件中,比如Django服務下,一般會有nginx日誌和uWSGI日誌。這些日誌分散地存儲在不同的機器上,

原创 基於pandas.merge解決異源數據融合的問題

寫在前言: 1. 閱讀,並不是爲了記住所有的細節,而是要知曉這個事物的存在,並在合適的時機去使用它; 2. 當你跟隨別人使用一個技術時,往往並不能感受其存在的必要意義,然而,當你帶着問題去尋找解決方案時,在找到的那一剎,一定能深深地體會到

原创 創業公司做數據分析(三)用戶行爲數據採集系統

  作爲系列文章的第三篇,本文將重點探討數據採集層中的用戶行爲數據採集系統。這裏的用戶行爲,指的是用戶與產品UI的交互行爲,主要表現在Android App、IOS App與Web頁面上。這些交互行爲,有的會與後端服務通信,有的僅僅引