亞馬遜雲BI產品QuickSight 深度解析
今年十月,亞馬遜發布了一個全新的雲BI服務QuickSight,旨在讓他們的企業用戶更加便捷、快速低成本的分析數據。在這款直接面向企業商業決策人員的工具發布之前,AWS上已經擁有了一整套大數據的解決方案——開發了數據從採集、存儲到分析的全部工具,不僅有離線計算方案,也有流數據處理方案。
其大數據服務的整體架構如下:
數據採集(Collect)方面:AWS Direct Connect / AWS Import/Export / Amzon Kinesis
數據存儲(Store)方面:Amazon S3 / Amazon RDS/Aurora / Amazon Glacier / Amazon DynamoDB / Amazon CloudSearch / Amazon Elasticsearch
數據分析(Analyze)方面:Amazon EMR / Amazon EC2 / Amazon Redshift / Amazon Machine / Amazon kinesis Analytics
這些服務能夠解決企業大數據分析中的大部分問題:
Amazon RDS 解決管理資料庫的困難與苦楚;
Amazon DynamoDB 解決SQL類資料庫在大數據量下性能的問題;
Amazon EMR 解決Hadoop集群部署和管理的難題;
Amazon Redshif 大幅降低了數據倉庫部署和使用的複雜度、減少了花費而且提升了效率;
Amazon Aurora 讓用戶可以低成本的享受擁有商用數據速度和可用性的資料庫產品;
Amazon Kinesis 讓實時數據的捕捉與分析變得不再困難。
應該說,亞馬遜的AWS的大數據服務已經是非常的齊全,生態也很完善。那麼這個時候推出Amazon QuickSight,是出於什麼樣的目的呢?
數據的採集和生產最終是為了決策
提到數據分析和可視化的BI工具,很多朋友可能會想到對用戶非常友好的Tableau和QlikView。這兩款產品直接面向決策段用戶,讓不懂底層數據邏輯,沒有任何代碼基礎的用戶,可以高效的用大數據分析業務,做出商業決策。它們解決了大數據的「最後一公里」問題——結果數據的整理、可視化和Insight共享。
大家可以再回頭去看看剛才我列舉的AWS的大數據服務,就會發現,現有的所有服務全部在數據採集、存儲和計算端——均為工程師們處理海量數據提供服務的。然而這些都讓數據變成成本,我的數據越多,我需要花費的錢越多。那麼如何讓數據產生價值呢?數據產生自業務,自然也得回歸業務、驅動業務創造價值,從成本轉變為生產資料,這才是產生數據、挖掘數據的唯一目標。
之前很多企業內部數據的使用方式一般有這幾種:
產品/運營/市場將需求提給數據分析師/數據分析工程師/數據挖掘工程師/ETL工程師——統稱人肉SQL手,由這些熟練操作資料庫的人員完成數據的提取工作,之後結果數據反饋回業務方,業務方再對數據進行整理、製表、繪圖並分析產生Bussiness Insight。
產品/運營/市場將需求提給公司的數據平台/數據中心,數據平台/數據中心的介面人/數據產品經理將需求統一整理和拆分,製作成固定的報表,定期發送郵件或者展示到前端中,供大家日常查詢和使用。臨時需求?請抽象成報表需求,否則請排期,謝謝合作!
產品/運營/市場將需求自己消化,實踐人人都是數據分析師的偉大理念。人人都有Hive或者MySQL許可權,人人都是SQL小能手,自力更生,豐衣足食。
這些方法,都可以生產數據進行決策,但是各有利弊:
第一種方式會產生大量的冗餘需求,降低決策效率。實際工作情況中,特別是業務比較複雜、產品線較多的公司,因為業務人員對數據不清楚,SQL工程師對業務不了解,雙方的信息差會讓整體的數據提取效率變得非常低。在這種情況下,提需求的成本非常低——轉腦袋的速度可比跑SQL的速度要快上許多。結果就是需求冗餘,產生Insight的周期通常以天,周甚至月來計算。
第二種方式在產品初期有很好的效果,但是到產品中後期進入精細化運營的時候,效率就會急速下降。後期,大量的報表冗餘,無人使用,卻每天消耗伺服器資源。在數據平台/數據中心的組織架構下,臨時需求的解決流程長、速度慢,導致決策效率低下。業務方出於無奈,只能通過不斷建報表的方式,滿足自己的臨時需求。
第三種方式非常適合創業型公司,但是不適合高速成長和大型公司。有產品設計能力同時有商業Sence,不僅能做日常決策,還能自己從資料庫直接提取數據來輔助自己做決策——這種人才請聯繫我!這種人很難規模化的培養和招聘,而且在知識繼承上非常的低效。導致公司在快速成長和精細化運營階段,因為需要做決策的地方過多,而產生大量的精英人力浪費,最終拖累整個公司的決策效率和發展速度。
於是QuickSight應運而生。
Quicksight是整個AWS生態中離商業決策最近的服務,直接解決大數據應用的「最後一公里」問題。其在整個生態中的定位如下:
它不需要用戶有代碼能力,自動識別和整合各種不同的數據源,提供實時互動式的數據查詢方式,並且自動進行數據可視化。最大程度降低了商業決策端用戶使用大數據的成本,也有望解決業務方和數據中心方一直存在矛盾。
作為一項服務,QuickSight並不是傳統的產品形態。它將數據作為一項服務,交付給使用方,使用方可以按需使用。這與提供整個解決方案的整合型產品完全不同,成本低、使用方便,而這也是雲服務的特點和優勢。
整個QuickSight服務分為QuickSight API和QuickSight UI兩個部分——前者負責數據的連接、準備、轉化和計算的工作,後者負責用戶端的數據可視化與決策分享。與傳統BI的內部循環不同,QuickSight的數據連接、準備、轉化和計算的服務不僅可以連接AWS體系內的數據系統,也可以通過JDBC、Oauth等方式連接其他的數據源。在數據輸出方面,除了QuickSight自帶的UI進行可視化與分析之外,還可以連接Tableau、DOMO、TIBC與QlickView等數據分析和可視化產品,非常靈活。
官方給出的整體框架如下:
這些API中,Connectors,Data Prep和SPICE是核心。Connectors能夠自動識別不同數據源並進行連接;Data Prep能夠快速的將不同數據源的數據高效的準備好;SPICE則是一個基於內存的數據查詢引擎,提供實時互動式的快速查詢能力。
亞馬遜官方對其的總結和描述如下:QuickSight是一個高效的、易用的、低成本的和基於雲的商業決策服務。它可以讓毫無代碼基礎的用戶方便的進行可視化和高效的Ad-hoc查詢功能進行數據分析,從海量數據快速獲取商業決策。QuickSigh完美整合了AWS的數據存儲系統、單獨的數據文件和第三方數據源,同時能夠在海量數據,高並發查詢的情況下快速的得出分析結果。
下面我將會對QuickSight API和QuickSight UI的體驗進行詳細解讀。
產品整體分為三個部分:
數據源整合工具Connector和Data Prep
基於內存的快速分析引擎SPICE
可視化工具QuickSight UI
數據整合方面:Connector 和 Data Prep
Connector毫無懸念的提供了與自己雲服務中的數據無縫對接的功能。同時提供直接上傳文件以及連接第三方數據應用方的數據,比如Salesforce、Google Analytics等。不過從之前體驗PowerBI的第三方的數據連接功能來看,這類工具比較雞肋——一個是連接很容易出錯,其次是第三方應用的數據只有部分可以接入,第三數據更新也是個大問題。
數據分析中難度最大、最耗費資源的地方在於數據源的整合、數據的清洗與更新以及元數據管理,而QuickSIght使用自有體系內的數據可控性高,管理成本低,因此,如果沒有使用亞馬遜的服務,它後面提供的那些「炫酷」的能力,也許就只是鏡中水月了。
Data Prep提供數據預處理能力:
提供數據在內聯變化(In-line transformation)和類型強制轉換(type coercions)之後的數據預覽;
提供對字元串、日期、數字和運算邏輯的處理能力;
數據處理的每一步規則都可以保存為模版,以便重複操作;
支持Join、Filters、Hierarchies以及Attribute/Measures的操作;
直接對接S3文件。
這裡的Data Prep,我理解上類似於一個ETL的過程,不過這個過程被模塊化、可視化,讓我想起了Tableau的數據連接過程。
數據分析方面:提供SPICE快速分析引擎
SPICE全稱是Supre-fast, Parallel, In-memmory optimized, Calculation Engine ——超快的、並行的、基於內存優化的計算引擎。
2-4倍壓縮列數據;
Compiled queries with machine code generation(不會翻譯。。。);
Rich calculations(不會翻譯。。。);
類SQL查詢語法;
查詢速度非常快;
全部自有產權,不需要擔心任何軟體或者硬體的授權問題(只能編輯喝管理,並不開源)。
可視化工具QuickSight UI
QuickSight UI提供了一個類Tableau的可視化界面,從Demo中看,對用戶非常友好。為了讓用戶能快速對結果數據進行可視化,它提供了一個AutoGraph的自動繪圖功能。
AutoGraph能夠自動識別數據類型——這裡面Connector和Data Prep的功勞可能更大一些。藉助SPICE的快速分析能力,它能快速的根據推薦的圖表把結果數據算完,然後根據數據類型進行展示。用戶還可以根據計算結果,快速的切換圖表類型——從柱狀圖切到折線圖等。
筆者沒有體驗過QuickSight UI的AutoGraph功能,但是接觸過Tableau和Power BI的Suggestion功能。目前的產品,在簡單的二維數據戰線上表現不錯,但是一旦維度變多,推薦出來的圖表還是比較奇怪。如果繪圖速度不是特別的快,還不如自己直接做。
總體來看,AutoGraph是一個把QuickSight的數據源處理和分析引擎進行了再包裝的一個可視化產品,我覺得這個產品能夠讓看不見的數據處理部分讓用戶可以直觀的感受到,是一個比較不錯的特點。
為了迎合移動辦公的趨勢,QuickSight提供了iOS、Android雙平台的Native應用。同其他的閹割版移動端不同,亞馬遜宣稱移動端和PC端擁有一樣的體驗(你想知道閹割版的話,可以去試試GA和Tableau的移動端)。
在團隊協作方面,QuickSight提供了一個可編輯的Dashboard功能,允許用戶直接將分析結果、截圖,甚至是整個分析邏輯分享給同事,讓同事不僅能夠看到靜態的保鏢,還能看到動態的數據視圖。
歡迎大家掃碼關注,如想加入《數據產品經理會》群,請加 劉洋 微信:liuyangfjnu 。
推薦閱讀:
※商務智能里的 ETL 到底是什麼東西?
※如何評價海致BDP這家公司?
※銀行信貸系統和銀行核心系統間哪些關聯?
※Tableau和QlikView的優點、缺點、區別?
※百億條數據量的oracle資料庫優化?