課程簡介
隨著網(wǎng)絡與信息技術的高速發(fā)展,軟件研發(fā)逐漸朝著大規(guī)模、高復雜度的大型軟件系統(tǒng)發(fā)展。特別是隨著近幾年互聯(lián)網(wǎng)的高速發(fā)展,帶動著全行業(yè)的互聯(lián)網(wǎng)轉(zhuǎn)型,使得未來的軟件系統(tǒng)還將向著持續(xù)性、深層次架構(gòu)調(diào)整的方向發(fā)展。在這樣的背景下,如何從全局的角度思考軟件系統(tǒng)方方面面的問題,提前識別軟件項目的技術風險點,并有針對性地制訂技術方案,以及如何構(gòu)建一個更加靈活、易于調(diào)整、快速變化的軟件系統(tǒng),成為大型軟件系統(tǒng)至關重要的設計內(nèi)容。
目標收益
本課程首先將系統(tǒng)地講述高質(zhì)量的軟件架構(gòu)該設計過程,包括如何運用領域驅(qū)動設計的思想貫穿整個架構(gòu)設計,又如何使軟件系統(tǒng)在衍變中調(diào)整架構(gòu),從而適應需求的變化;如何運用5視圖的方法,全面地思考軟件架構(gòu)各方面的問題:從需求的角度進行可行性分析;從全局的角度進行軟件分層、技術選型、模塊劃分等方面的設計;運用數(shù)據(jù)持久化的方式設計數(shù)據(jù)結(jié)構(gòu);運用“屬性->場景->決策”的過程把握非功能設計;從部署、網(wǎng)絡、性能的角度進行物理架構(gòu)的設計,從而有效避免架構(gòu)設計時遺漏關鍵風險點,使架構(gòu)設計過程變得有序。
培訓對象
中高級工程師、企業(yè)架構(gòu)師、軟件設計師、數(shù)據(jù)庫/存儲技術人員、技術決策/解決方案人員等。
課程大綱
第一部分 高質(zhì)量架構(gòu)設計 第一單元 軟件架構(gòu)設計概述 |
情景?。很浖軜?gòu)設計的價值 1. 一個人的軟件設計過程 2. 5個人的軟件設計過程 3. 10個人的軟件設計過程 4. 10個人以上的軟件設計過程 結(jié)論:揭示架構(gòu)設計的價值與架構(gòu)師的作用 架構(gòu)設計5視圖法: 1. 介紹架構(gòu)設計5視圖法 2. 運用5視圖法設計軟件架構(gòu)的過程 |
第二單元 邏輯架構(gòu)設計過程 |
案例講解邏輯架構(gòu)的設計過程 1. 邏輯架構(gòu)的概念與作用 2. 需求分析與用例模型設計 ? 由粗到細的需求分析過程 ? 不同類型的用例描述 3. 流程分析與行動圖 4. 領域模型分析 ? 講解領域驅(qū)動設計的思想 ? 在需求討論中繪制領域模型 ? 用原文分析法進行領域分析 5. 需求確認與可行性分析 ? 探討需求不可行給項目帶來的風險 ? 案例講解主動式需求分析的過程 |
第三單元 開發(fā)架構(gòu)設計過程 |
案例講解開發(fā)架構(gòu)的設計過程 1. 開發(fā)架構(gòu)的概念與作用 2. 討論合理的分層架構(gòu) 案例:演示一個工資系統(tǒng)的需求變更過程 ? 展示三次巨大需求變更及其分析設計過程 ? 探討什么樣的架構(gòu)能真正適應需求的變更 3. 技術選型與決策 4. 軟件架構(gòu)設計 ? 案例講解軟件的可擴展設計 ? 案例講解軟件的易維護設計 5. 模塊劃分與分包 6. 軟件開發(fā)規(guī)范的制訂 |
第四單元 數(shù)據(jù)架構(gòu)設計過程 |
探討傳統(tǒng)的數(shù)據(jù)架構(gòu)設計過程 講解基于領域的數(shù)據(jù)架構(gòu)設計過程 1. 如何將領域模型轉(zhuǎn)換為數(shù)據(jù)庫設計 ? 傳統(tǒng)的4種關系轉(zhuǎn)換為數(shù)據(jù)庫設計 ? 繼承關系的3種數(shù)據(jù)庫設計 2. 如何將領域模型轉(zhuǎn)換為軟件 貧血模型 vs. 充血模型 |
第五單位 運行架構(gòu)設計過程 |
探討運行架構(gòu)的設計過程 1. 關注關鍵點與難點而不是全局 2. 屬性→場景→決策的分析過程 專題討論運行架構(gòu)需要決策的內(nèi)容 1. 并發(fā)訪問與串行操作 2. 同步操作與異步操作 3. 進程與線程 |
第六單元 物理架構(gòu)設計過程 |
探討物理架構(gòu)設計過程 1. 案例講解一些常見物理架構(gòu)設計 2. 案例講解應用架構(gòu)設計 3. 案例講解一些技術方案的編寫 |
第七單元 逐步演化的架構(gòu)設計 |
恰如其分的架構(gòu)設計 1. 恰如其分的架構(gòu)設計過程 案例:一個郵件系統(tǒng)的架構(gòu)演變過程 2. 風險驅(qū)動的架構(gòu)設計 逐步演化的架構(gòu)設計過程 1. 探討老系統(tǒng)維護過程中架構(gòu)設計的問題 2. 剖析以往采取的辦法及失敗的原因 ? 縫縫補補不能從根本上解決 ? 走一步退兩步淺嘗輒止的根源 ? 拋棄一切從頭再來的風險 3. 剖析問題的根源與解決的辦法 ? 演化式改造的過程 ? 平臺建設與重構(gòu)并行 ? 改造與維護并舉 剖析架構(gòu)設計中的一些常見誤區(qū) |
第二部分互聯(lián)網(wǎng)架構(gòu)設計 第八單元 大并發(fā)相關的指標 |
高并發(fā)相關的指標 1. 吞吐量 / 每秒事務數(shù) / 事務響應時間 2. 用戶數(shù) / 用戶并發(fā)數(shù) / 最大用戶并發(fā)數(shù) 高并發(fā)問題的解決思路 1. 目標→問題→方案 2. 業(yè)務梳理與優(yōu)化 |
第九單元 并發(fā)問題的快速優(yōu)化策略 |
傳統(tǒng)架構(gòu)的演變過程 1. All-in-One的架構(gòu)設計 2. 多級集中的架構(gòu)設計 3. 傳統(tǒng)架構(gòu)面臨的挑戰(zhàn) 基于風險的架構(gòu)設計思想 1. 先識別未來存在的風險,再進行有針對的架構(gòu)設計 2. 用最快的速度解決最急迫的問題 并發(fā)問題的快速優(yōu)化策略 1. 智能DNS及其優(yōu)缺點 2. CDN內(nèi)容分發(fā)網(wǎng)絡及其優(yōu)缺點 3. 負載均衡與反向代理 1)Nginx技術及其解決的問題 2)動靜分離的設計 3)Zookeeper及其非中心化設計 |
第十單元 數(shù)據(jù)庫瓶頸及其優(yōu)化策略 |
數(shù)據(jù)庫瓶頸 1. 現(xiàn)有數(shù)據(jù)庫設計及其性能瓶 2. Shared Disk vs. Shared Nothing 3. 介紹PostgreSQL與GreenPlum 數(shù)據(jù)庫讀寫分離的設計 1. 三種不同類型的操作及其優(yōu)化策略 業(yè)務操作 / 隨機查詢 / 統(tǒng)計分析 2. MySQL主從機實現(xiàn)讀寫分離 1)MySQL主從機實現(xiàn)讀寫分離的思想與局限 2)在原有系統(tǒng)上實現(xiàn)讀寫分離的改造過程 3. 真正實現(xiàn)讀寫分離的設計方案 數(shù)據(jù)庫分庫的設計思想 1. 縱向拆分的設計思想及其注意的問題 案例:國家金稅三期的架構(gòu)設計 案例:阿里巴巴的架構(gòu)設計 2. 橫向拆分的設計思想及其注意的問題 1)按地域拆分的設計及其評價 2)按用戶號進行拆分的設計及其評價 案例:淘寶網(wǎng)的架構(gòu)設計解析 3. 在原有系統(tǒng)上如何實現(xiàn)數(shù)據(jù)庫分庫 1)縱向拆分的系統(tǒng)改造過程 2)橫向拆分的系統(tǒng)改造過程 |
第十一單元 應用緩存的設計 |
應用緩存技術 1. 應用緩存技術解決的問題 2. 單機緩存 vs. 分布式緩存 3. 分布式緩存的特點及其設計 Memcached技術 1. Memcached技術及其特點 2. 分布式哈希算法及其一致性哈希 3. Memcached的部署結(jié)構(gòu)及其應用方案 案例:負載均衡的session同步及其故障轉(zhuǎn)移 如何在原有系統(tǒng)上進行應用緩存改造 1. Spring + Memcached的設計改造過程 2. Hibernate + Memcached的設計改造過程 3. Memcached的命中率分析及其調(diào)優(yōu) 4. 應用緩存的設計過程中應當注意的問題 |
第十二單元 內(nèi)存數(shù)據(jù)庫的設計 |
內(nèi)存數(shù)據(jù)庫技術 1. 內(nèi)存數(shù)據(jù)庫的概念 2. 解析內(nèi)存數(shù)據(jù)庫的運行原理 3. Oracle TimesTen的介紹 4. Gemfire及其在12306的應用 Redis內(nèi)存數(shù)據(jù)庫技術 1. Redis的運行原理及其特點 2. Redis的部署形式 3. Redis的應用設計 案例:spring-redis-data的設計應用 案例:京東訂單系統(tǒng)的優(yōu)化過程 4. 內(nèi)存數(shù)據(jù)庫的設計局限 |
第十三單元 異步化操作的設計 |
1. 異步化操作的原理 案例:12306的異步化改造過程 2. 異步化操作的設計實踐 3. 分布式隊列的設計 |
第十四單元 互聯(lián)網(wǎng)不斷演進的架構(gòu)設計過程 |
互聯(lián)網(wǎng)+時代的架構(gòu)設計特點 1. 互聯(lián)網(wǎng)+帶來的巨大變革 2. 互聯(lián)網(wǎng)公司不斷面對的升級改造 3. 傳統(tǒng)行業(yè)必須面對的互聯(lián)網(wǎng)轉(zhuǎn)型 好的架構(gòu)源于不斷的衍變 案例:58同城的架構(gòu)衍變過程 1. 最初的架構(gòu)設計 2. 網(wǎng)絡接入層的改造過程 3. 數(shù)據(jù)庫拆分的改造過程 4. 服務化為中心的改造過程 |
第十五單元 大并發(fā)架構(gòu)設計的驗證 |
1. 設計測試用例與場景 2. 錄制測試腳本執(zhí)行測試 3. 測試結(jié)果的評價與調(diào)優(yōu) 4. 編寫性能測試報告 案例:某大型互聯(lián)網(wǎng)開票系統(tǒng)的架構(gòu)驗證過程 |
第三部分針對大數(shù)據(jù)的架構(gòu)設計 第十六單元 NoSQL數(shù)據(jù)庫及其設計 |
NoSQL數(shù)據(jù)庫的概念 1. 分布式架構(gòu)與CAP理論 2. ACID vs. BASE 3. 強一致性與弱一致性 4. NoSQL數(shù)據(jù)庫的特點 MongoDB數(shù)據(jù)庫 1. MongoDB數(shù)據(jù)庫簡介 2. MongoDB數(shù)據(jù)庫的概念模型 3. 插入、更新、刪除、查詢操作 案例:MongoDB實現(xiàn)企業(yè)征信報告的海量存儲與快速查詢 4. MongoDB數(shù)據(jù)庫的優(yōu)劣勢分析與適用范圍 |
第十七單元 Hadoop大數(shù)據(jù)處理技術 |
Hadoop大數(shù)據(jù)處理技術 1. Hadoop簡介 2. Hadoop生態(tài)圈 3. Hadoop架構(gòu)及其與傳統(tǒng)架構(gòu)的優(yōu)勢 Hadoop的核心組件 1. 解析HDFS分布式文件系統(tǒng)的運行原理 2. 解析MapReduce分布式運算框架的運行原理 3. MapReduce的優(yōu)劣勢與適用范圍 案例:WordCount詞頻計算程序的分析設計過程 Hadoop的生態(tài)圈 1. Hive技術 1)Hive技術簡介 2)Hive與傳統(tǒng)關系型數(shù)據(jù)庫的比較 3)Hive的建表、載入數(shù)據(jù)、查詢數(shù)據(jù)的語句 2. Spark技術 1)Spark設計原理 2)Spark編程實踐 案例:Spark小步快跑的設計過程 3. Sqoop技術 1)Sqoop技術簡介 2)Sqoop導入語句 3)Sqoop導出語句 4. HBase數(shù)據(jù)庫 1)HBase數(shù)據(jù)庫的簡介 2)HBase數(shù)據(jù)庫的概念模型 3)HBase的面向列式存儲 4)HBase的系統(tǒng)架構(gòu) 案例:用HBase存儲與展示搜索結(jié)果 5. ElasticSearch搜索引擎 1)ElasticSearch設計原理 2)ElasticSearch+Hive的設計方案 3)ElasticSearch的RUSTful數(shù)據(jù)搜索 案例:如何實現(xiàn)海量數(shù)據(jù)秒級響應 Hadoop的安裝部署 1. Hadoop的物理部署架構(gòu) 2. Hadoop的技術選型 3. Hadoop的組件部署結(jié)構(gòu) |
第十八單元 面向主題的數(shù)據(jù)倉庫設計 |
數(shù)據(jù)倉庫的概念 1. 大范圍數(shù)據(jù)統(tǒng)計的操作特點與設計思路 2. 數(shù)據(jù)倉庫的架構(gòu)設計 大數(shù)據(jù)環(huán)境下的數(shù)據(jù)倉庫設計 1. 大數(shù)據(jù)環(huán)境下數(shù)據(jù)倉庫設計面臨的困境 2. 講解海量數(shù)據(jù)的多維數(shù)據(jù)模型設計方案 案例:HBase實現(xiàn)大數(shù)據(jù)多維模型 案例:企業(yè)征信大數(shù)據(jù)的設計過程 3. 淺析數(shù)據(jù)挖掘與機器學習過程 傳統(tǒng)BI系統(tǒng)的大數(shù)據(jù)轉(zhuǎn)型 1. 傳統(tǒng)BI系統(tǒng)面臨的難題 2. 案例講解演化式BI轉(zhuǎn)型過程 |
第一部分 高質(zhì)量架構(gòu)設計 第一單元 軟件架構(gòu)設計概述 情景劇:軟件架構(gòu)設計的價值 1. 一個人的軟件設計過程 2. 5個人的軟件設計過程 3. 10個人的軟件設計過程 4. 10個人以上的軟件設計過程 結(jié)論:揭示架構(gòu)設計的價值與架構(gòu)師的作用 架構(gòu)設計5視圖法: 1. 介紹架構(gòu)設計5視圖法 2. 運用5視圖法設計軟件架構(gòu)的過程 |
第二單元 邏輯架構(gòu)設計過程 案例講解邏輯架構(gòu)的設計過程 1. 邏輯架構(gòu)的概念與作用 2. 需求分析與用例模型設計 ? 由粗到細的需求分析過程 ? 不同類型的用例描述 3. 流程分析與行動圖 4. 領域模型分析 ? 講解領域驅(qū)動設計的思想 ? 在需求討論中繪制領域模型 ? 用原文分析法進行領域分析 5. 需求確認與可行性分析 ? 探討需求不可行給項目帶來的風險 ? 案例講解主動式需求分析的過程 |
第三單元 開發(fā)架構(gòu)設計過程 案例講解開發(fā)架構(gòu)的設計過程 1. 開發(fā)架構(gòu)的概念與作用 2. 討論合理的分層架構(gòu) 案例:演示一個工資系統(tǒng)的需求變更過程 ? 展示三次巨大需求變更及其分析設計過程 ? 探討什么樣的架構(gòu)能真正適應需求的變更 3. 技術選型與決策 4. 軟件架構(gòu)設計 ? 案例講解軟件的可擴展設計 ? 案例講解軟件的易維護設計 5. 模塊劃分與分包 6. 軟件開發(fā)規(guī)范的制訂 |
第四單元 數(shù)據(jù)架構(gòu)設計過程 探討傳統(tǒng)的數(shù)據(jù)架構(gòu)設計過程 講解基于領域的數(shù)據(jù)架構(gòu)設計過程 1. 如何將領域模型轉(zhuǎn)換為數(shù)據(jù)庫設計 ? 傳統(tǒng)的4種關系轉(zhuǎn)換為數(shù)據(jù)庫設計 ? 繼承關系的3種數(shù)據(jù)庫設計 2. 如何將領域模型轉(zhuǎn)換為軟件 貧血模型 vs. 充血模型 |
第五單位 運行架構(gòu)設計過程 探討運行架構(gòu)的設計過程 1. 關注關鍵點與難點而不是全局 2. 屬性→場景→決策的分析過程 專題討論運行架構(gòu)需要決策的內(nèi)容 1. 并發(fā)訪問與串行操作 2. 同步操作與異步操作 3. 進程與線程 |
第六單元 物理架構(gòu)設計過程 探討物理架構(gòu)設計過程 1. 案例講解一些常見物理架構(gòu)設計 2. 案例講解應用架構(gòu)設計 3. 案例講解一些技術方案的編寫 |
第七單元 逐步演化的架構(gòu)設計 恰如其分的架構(gòu)設計 1. 恰如其分的架構(gòu)設計過程 案例:一個郵件系統(tǒng)的架構(gòu)演變過程 2. 風險驅(qū)動的架構(gòu)設計 逐步演化的架構(gòu)設計過程 1. 探討老系統(tǒng)維護過程中架構(gòu)設計的問題 2. 剖析以往采取的辦法及失敗的原因 ? 縫縫補補不能從根本上解決 ? 走一步退兩步淺嘗輒止的根源 ? 拋棄一切從頭再來的風險 3. 剖析問題的根源與解決的辦法 ? 演化式改造的過程 ? 平臺建設與重構(gòu)并行 ? 改造與維護并舉 剖析架構(gòu)設計中的一些常見誤區(qū) |
第二部分互聯(lián)網(wǎng)架構(gòu)設計 第八單元 大并發(fā)相關的指標 高并發(fā)相關的指標 1. 吞吐量 / 每秒事務數(shù) / 事務響應時間 2. 用戶數(shù) / 用戶并發(fā)數(shù) / 最大用戶并發(fā)數(shù) 高并發(fā)問題的解決思路 1. 目標→問題→方案 2. 業(yè)務梳理與優(yōu)化 |
第九單元 并發(fā)問題的快速優(yōu)化策略 傳統(tǒng)架構(gòu)的演變過程 1. All-in-One的架構(gòu)設計 2. 多級集中的架構(gòu)設計 3. 傳統(tǒng)架構(gòu)面臨的挑戰(zhàn) 基于風險的架構(gòu)設計思想 1. 先識別未來存在的風險,再進行有針對的架構(gòu)設計 2. 用最快的速度解決最急迫的問題 并發(fā)問題的快速優(yōu)化策略 1. 智能DNS及其優(yōu)缺點 2. CDN內(nèi)容分發(fā)網(wǎng)絡及其優(yōu)缺點 3. 負載均衡與反向代理 1)Nginx技術及其解決的問題 2)動靜分離的設計 3)Zookeeper及其非中心化設計 |
第十單元 數(shù)據(jù)庫瓶頸及其優(yōu)化策略 數(shù)據(jù)庫瓶頸 1. 現(xiàn)有數(shù)據(jù)庫設計及其性能瓶 2. Shared Disk vs. Shared Nothing 3. 介紹PostgreSQL與GreenPlum 數(shù)據(jù)庫讀寫分離的設計 1. 三種不同類型的操作及其優(yōu)化策略 業(yè)務操作 / 隨機查詢 / 統(tǒng)計分析 2. MySQL主從機實現(xiàn)讀寫分離 1)MySQL主從機實現(xiàn)讀寫分離的思想與局限 2)在原有系統(tǒng)上實現(xiàn)讀寫分離的改造過程 3. 真正實現(xiàn)讀寫分離的設計方案 數(shù)據(jù)庫分庫的設計思想 1. 縱向拆分的設計思想及其注意的問題 案例:國家金稅三期的架構(gòu)設計 案例:阿里巴巴的架構(gòu)設計 2. 橫向拆分的設計思想及其注意的問題 1)按地域拆分的設計及其評價 2)按用戶號進行拆分的設計及其評價 案例:淘寶網(wǎng)的架構(gòu)設計解析 3. 在原有系統(tǒng)上如何實現(xiàn)數(shù)據(jù)庫分庫 1)縱向拆分的系統(tǒng)改造過程 2)橫向拆分的系統(tǒng)改造過程 |
第十一單元 應用緩存的設計 應用緩存技術 1. 應用緩存技術解決的問題 2. 單機緩存 vs. 分布式緩存 3. 分布式緩存的特點及其設計 Memcached技術 1. Memcached技術及其特點 2. 分布式哈希算法及其一致性哈希 3. Memcached的部署結(jié)構(gòu)及其應用方案 案例:負載均衡的session同步及其故障轉(zhuǎn)移 如何在原有系統(tǒng)上進行應用緩存改造 1. Spring + Memcached的設計改造過程 2. Hibernate + Memcached的設計改造過程 3. Memcached的命中率分析及其調(diào)優(yōu) 4. 應用緩存的設計過程中應當注意的問題 |
第十二單元 內(nèi)存數(shù)據(jù)庫的設計 內(nèi)存數(shù)據(jù)庫技術 1. 內(nèi)存數(shù)據(jù)庫的概念 2. 解析內(nèi)存數(shù)據(jù)庫的運行原理 3. Oracle TimesTen的介紹 4. Gemfire及其在12306的應用 Redis內(nèi)存數(shù)據(jù)庫技術 1. Redis的運行原理及其特點 2. Redis的部署形式 3. Redis的應用設計 案例:spring-redis-data的設計應用 案例:京東訂單系統(tǒng)的優(yōu)化過程 4. 內(nèi)存數(shù)據(jù)庫的設計局限 |
第十三單元 異步化操作的設計 1. 異步化操作的原理 案例:12306的異步化改造過程 2. 異步化操作的設計實踐 3. 分布式隊列的設計 |
第十四單元 互聯(lián)網(wǎng)不斷演進的架構(gòu)設計過程 互聯(lián)網(wǎng)+時代的架構(gòu)設計特點 1. 互聯(lián)網(wǎng)+帶來的巨大變革 2. 互聯(lián)網(wǎng)公司不斷面對的升級改造 3. 傳統(tǒng)行業(yè)必須面對的互聯(lián)網(wǎng)轉(zhuǎn)型 好的架構(gòu)源于不斷的衍變 案例:58同城的架構(gòu)衍變過程 1. 最初的架構(gòu)設計 2. 網(wǎng)絡接入層的改造過程 3. 數(shù)據(jù)庫拆分的改造過程 4. 服務化為中心的改造過程 |
第十五單元 大并發(fā)架構(gòu)設計的驗證 1. 設計測試用例與場景 2. 錄制測試腳本執(zhí)行測試 3. 測試結(jié)果的評價與調(diào)優(yōu) 4. 編寫性能測試報告 案例:某大型互聯(lián)網(wǎng)開票系統(tǒng)的架構(gòu)驗證過程 |
第三部分針對大數(shù)據(jù)的架構(gòu)設計 第十六單元 NoSQL數(shù)據(jù)庫及其設計 NoSQL數(shù)據(jù)庫的概念 1. 分布式架構(gòu)與CAP理論 2. ACID vs. BASE 3. 強一致性與弱一致性 4. NoSQL數(shù)據(jù)庫的特點 MongoDB數(shù)據(jù)庫 1. MongoDB數(shù)據(jù)庫簡介 2. MongoDB數(shù)據(jù)庫的概念模型 3. 插入、更新、刪除、查詢操作 案例:MongoDB實現(xiàn)企業(yè)征信報告的海量存儲與快速查詢 4. MongoDB數(shù)據(jù)庫的優(yōu)劣勢分析與適用范圍 |
第十七單元 Hadoop大數(shù)據(jù)處理技術 Hadoop大數(shù)據(jù)處理技術 1. Hadoop簡介 2. Hadoop生態(tài)圈 3. Hadoop架構(gòu)及其與傳統(tǒng)架構(gòu)的優(yōu)勢 Hadoop的核心組件 1. 解析HDFS分布式文件系統(tǒng)的運行原理 2. 解析MapReduce分布式運算框架的運行原理 3. MapReduce的優(yōu)劣勢與適用范圍 案例:WordCount詞頻計算程序的分析設計過程 Hadoop的生態(tài)圈 1. Hive技術 1)Hive技術簡介 2)Hive與傳統(tǒng)關系型數(shù)據(jù)庫的比較 3)Hive的建表、載入數(shù)據(jù)、查詢數(shù)據(jù)的語句 2. Spark技術 1)Spark設計原理 2)Spark編程實踐 案例:Spark小步快跑的設計過程 3. Sqoop技術 1)Sqoop技術簡介 2)Sqoop導入語句 3)Sqoop導出語句 4. HBase數(shù)據(jù)庫 1)HBase數(shù)據(jù)庫的簡介 2)HBase數(shù)據(jù)庫的概念模型 3)HBase的面向列式存儲 4)HBase的系統(tǒng)架構(gòu) 案例:用HBase存儲與展示搜索結(jié)果 5. ElasticSearch搜索引擎 1)ElasticSearch設計原理 2)ElasticSearch+Hive的設計方案 3)ElasticSearch的RUSTful數(shù)據(jù)搜索 案例:如何實現(xiàn)海量數(shù)據(jù)秒級響應 Hadoop的安裝部署 1. Hadoop的物理部署架構(gòu) 2. Hadoop的技術選型 3. Hadoop的組件部署結(jié)構(gòu) |
第十八單元 面向主題的數(shù)據(jù)倉庫設計 數(shù)據(jù)倉庫的概念 1. 大范圍數(shù)據(jù)統(tǒng)計的操作特點與設計思路 2. 數(shù)據(jù)倉庫的架構(gòu)設計 大數(shù)據(jù)環(huán)境下的數(shù)據(jù)倉庫設計 1. 大數(shù)據(jù)環(huán)境下數(shù)據(jù)倉庫設計面臨的困境 2. 講解海量數(shù)據(jù)的多維數(shù)據(jù)模型設計方案 案例:HBase實現(xiàn)大數(shù)據(jù)多維模型 案例:企業(yè)征信大數(shù)據(jù)的設計過程 3. 淺析數(shù)據(jù)挖掘與機器學習過程 傳統(tǒng)BI系統(tǒng)的大數(shù)據(jù)轉(zhuǎn)型 1. 傳統(tǒng)BI系統(tǒng)面臨的難題 2. 案例講解演化式BI轉(zhuǎn)型過程 |