原创 MySQL實戰-2

  ORDER BY工作原理 假設有如下建表語句 CREATE TABLE `t` (   `id` int(11) NOT NULL,   `city` varchar(16) NOT NULL,   `name` varchar(1

原创 持續交付

持續交付:一套軟件工程方法論和許多的最佳實踐的集合 持續繼承:從編碼到構建再到測試的反覆持續的過程 持續交付:通過外部反饋對“持續繼承”進行進行優化的過程 持續部署:將可交付的產品,快速安全的交給用戶的一套方法和系統,是“持續交付”的最後

原创 MySQL實戰-基礎部分

  一條SQL查詢是如何執行的 1.客戶端經過連接器連上mysql,校驗用戶名/密碼,如果連上之後長時間沒操作會自動斷開的 2.查詢緩存,對錶變化不大的可以用,表經常變動的一個update就會清空緩存反而效率變低 3.分析器,做sql語

原创 大規模數據處理實戰--Spark

  爲什麼需要Spark MapReduce的缺點 1.抽象層次太低,大量底層邏輯需要開發者手工完成 2.只有map和reduce兩個操作 3.每一個job的計算結果都會存儲在HDFS中,所以每一步計算成本很高 4.只支持批處理,卻反對流

原创 大規模數據處理實戰--基礎知識

目錄 SLA 三個指標 批處理和流處理 Workflow 發佈-訂閱模式   SLA 服務等級協議 Service-Level Agreement 服務等級協議 是系統服務提供者Provider對客戶Customer的一個服務承諾 包括可

原创 大規模數據處理實戰--基礎

  大規模數據處理工具出現的年代 到2014年穀歌內部沒人用Map-Reduce了 2016年穀歌內部培訓中,把Map-Reduce替換成了FlumJava Map-Reduce淘汰的原因 1.高昂的維護成本 預測美團的股價,其中一個重

原创 秒殺系統-削峯

  目錄 排隊 答題 分層過濾 流量削峯的一些操作思路:排隊、答題、分層過濾。這幾種方式都是無損(即不會損失用戶的發出請求)的實現方案 當然還有些有損的實現方案,關於穩定性的一些辦法,比如限流和機器負載保護等一些強制措施也能達到削峯保護的

原创 秒殺系統-保障方案

高可用建設應該從哪裏着手   說到系統的高可用建設,它其實是一個系統工程,需要考慮到系統建設的各個階段,也就是說它其實貫穿了系統建設的整個生命週期

原创 數據結構和算法-高級部分1

拓撲排序 最短路徑 位圖 統計問題

原创 數據結構和算法-高級部分2

  向量空間 B+樹 搜索 索引 並行算法

原创 秒殺系統-動靜分離

    秒殺的場景中,對於系統的要求其實就三個字:快、準、穩。 快的原則只有兩點, 一點是提高單次請求的效率 一點是減少沒必要的請求 “動靜分離”其實就是瞄着這個大方向去的。 最早的秒殺系統其實是要刷新整體頁面的,但後來秒殺的時候,你

原创 秒殺系統-概述

  秒殺的整體架構 穩,保證整個系統滿足高可用 準,不能有超賣,也就是一致性 快,也就是高性能 總體來說就是高可用,一致性,高性能 高性能,涉及大量的併發讀,併發寫,方案包括東京分離,熱點的發現與隔離,請求的削峯與分層過濾,服務端極致優化

原创 Hive總結

  Hive架構圖   外部表,內部表 Hive存儲的各種字段類型,表屬性 分區(其實就是目錄的名字),分桶 DESCRIBE FORMATTED [表明]   Tez    Ambari   加載數據 LOAD DATA [LOCA

原创 數據結構與算法--四種算法思想

。。。 。。。

原创 Linux性能優化-總結

  系統監控的綜合思路 USE方法 USE(Utilization Saturation and Errors) USE法把系統資源的性能指標,簡化成了三個類別,使用率,飽和度,錯誤數 使用率,表示資源用於服務的時間 或者容量的百分比,1