摘要:概述我非常認同前百度數據工程師現神策分析創始人桑老師最近談到的數據分析三重境界統計計數多維分析機器學習數據分析的統計計數和多維分析,我們通常稱之為數據探索式分析,這個步驟旨在了解數據的特性,有助于我們進一步挖掘數據的價值。
概述
我非常認同前百度數據工程師、現神策分析創始人桑老師最近談到的數據分析三重境界:
統計計數
多維分析
機器學習
數據分析的統計計數和多維分析,我們通常稱之為數據探索式分析,這個步驟旨在了解數據的特性,有助于我們進一步挖掘數據的價值。而基于我們對數據的理解,再引入機器學習的算法對數據做出預測就變得水到渠成了。
現實世界里,大部分的公司更多時間其實沒有這個精力去搭建復雜的數據分析平臺,面對快速變化的業務需求,很多數據工程師都把自己的青春埋葬在SQL里了。(其實我也是埋葬在SQL里的)
這幾年,所謂的無埋點技術、自助式分析等等概念開始興起,得益于數據領域的快速發展,國內外也涌現了大量基于數據分析平臺的start-ups,而隨著技術的發展,許多創業公司也是抱團取暖組成一個更大的團體。
考慮到國內數據安全性的問題,即使我們使用大廠比如百度的網站分析服務也很難保證數據安全性,私有化部署才是很多企業級解決方案的王道。
隨著 Superset 被Airbnb的數據科學部門開源了,我看到的是有許多數據分析平臺的創業公司或許要轉變方向了,自助式分析將不再依賴于各大廠商!
什么是SupersetSuperset的中文翻譯是快船,而Superset其實是一個自助式數據分析工具,它的主要目標是簡化我們的數據探索分析操作,它的強大之處在于整個過程一氣呵成,幾乎不用片刻的等待。
Superset 的特性Superset通過讓用戶創建并且分享儀表盤的方式為數據分析人員提供一個快速的數據可視化功能。
在你用這種豐富的數據可視化方案來分析你的數據的同時,Superset還可以兼顧數據格式的拓展性、數據模型的高粒度保證、快速的復雜規則查詢、兼容主流鑒權模式(數據庫、OpenID、LDAP、OAuth或者基于Flask AppBuilder的REMOTE_USER)
通過一個定義字段、下拉聚合規則的簡單的語法層操作就讓我們可以將數據源在U上豐富地呈現。Superset還深度整合了Druid以保證我們在操作超大、實時數據的分片和切分都能行云流水。
Superset 是基于 Druid.io 設計的,但是又支持橫向到像 SQLAlchemy 這樣的常見Python ORM框架上面。
那Druid又是什么呢?Druid 是一個基于分布式的快速列式存儲,也是一個為BI設計的開源數據存儲查詢工具。Druid提供了一種實時數據低延遲的插入、靈活的數據探索和快速數據聚合?,F有的Druid已經可以支持擴展到TB級別的事件和PB級的數據了,Druid是BI應用的最佳搭檔。
想必,你已經受夠了Hive那個龜速查詢,迫不及待想體驗一下這種酣暢淋漓的快感了吧!
實戰既然,要行云流水,沒有Docker是不行的,想要了解一下Docker可以參考之前的文章:海納百川 有容乃大:SparkR與Docker的機器學習實戰
這里我默認你已經具備了使用Daocloud加速Docker的知識。
本地跑Docker下載鏡像:
docker pull index.tenxcloud.com/7harryprince/Superset
跑容器
docker run -p 8088:8088 -d index.tenxcloud.com/7harryprince/Superset
查詢一下你的docekr ip
docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default - virtualbox Running tcp://192.168.99.100:2376 v1.9.1 dev - virtualbox Saved Unknown
這里可以看到我的默認Docker的IP是192.168.99.100
所以需要在瀏覽器中訪問 192.168.99.100:8088
這樣我們又是三行代碼搞定了一個大數據分析神器。
需要注意到,這個 Superset 容器里的默認鑒權配置是:
username: admin password: Superset_admin在線Demo
下面我提供了Superset的一個在線Demo:
http://52.33.104.157:8088/login/
下面是儀表盤的交互式分析頁面:
我們可以導出JSON、CSV文件、直接得到SQL語句甚至分享頁面鏈接。
下面是全球人口的一個分析儀表盤,感覺再改動一下就可以做信息圖了,大數據分析也不在話下。
下面是我最喜歡的sankey chart:
看到如此驚艷的數據產品,想必你也很想自己動手做一個吧!讓我們一起看看整體的架構。
后端整個項目的后端是基于Python的,用到了Flask、Pandas、SqlAlchemy。
Flask AppBuilder(鑒權、CRUD、規則)
Pandas(分析)
SqlAlchemy(數據庫ORM)
此外,也關注到Superset的緩存機制值得我們學習:
采用memcache和Redis作為緩存
級聯超時配置
UI具有時效性控制
允許強制刷新
前端自然前端是JS的天下,用到了npm、react、webpack,這意味著你可以在手機也可以流暢使用。
d3 (數據可視化)
nvd3.org(可重用圖表)
局限性Superset的可視化,目前只支持每次可視化一張表,對于多表join的情況還無能為力
依賴于數據庫的快速響應,如果數據庫本身太慢Superset也沒什么辦法
語義層的封裝還需要完善,因為druid原生只支持部分sql。
參考資料Superset GitHub地址
推薦鏡像 kochalex/Superset
知乎:presto、druid、sparkSQL、kylin的對比分析,如性能、架構等,有什么異同?
mysql-db installation
Superset - sweet time based visualisation and dashboard reporting
Superset Installation
推薦產品神策分析:數據分析平臺的私有化部署方案
神策目前提供私有化的數據分析平臺解決方案,根據桑老師的說法,現在考慮到安全性的問題,還沒有做到Docker部署,只能遠程部署(大概半個小時),這里有一絲淡淡的遺憾。
作為分享主義者(sharism),本人所有互聯網發布的圖文均遵從CC版權,轉載請保留作者信息并注明作者 Harry Zhu 的 FinanceR專欄:https://segmentfault.com/blog...,如果涉及源代碼請注明GitHub地址:https://github.com/harryprince。微信號: harryzhustudio
商業使用請聯系作者。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/37913.html
摘要:概述是一個我們正在用的工作流調度器,相對于傳統的任務管理,很好的為我們理清了復雜的任務依賴關系監控任務執行的情況。步驟三修改默認數據庫找到配置文件修改配置注意到,之前使用的的方式是行不通的。微信號商業使用請聯系作者。 showImg(https://segmentfault.com/img/remote/1460000006760428?w=1918&h=1556); 概述 Airfl...
閱讀 1876·2021-09-24 09:48
閱讀 3220·2021-08-26 14:14
閱讀 1674·2021-08-20 09:36
閱讀 1460·2019-08-30 15:55
閱讀 3627·2019-08-26 17:15
閱讀 1425·2019-08-26 12:09
閱讀 606·2019-08-26 11:59
閱讀 3323·2019-08-26 11:57