k8s與資料分析--利用redash做自助資料分析
前言
在之前文章中,一直講prometheus的metrics以及apm的指標的重要性,多側重於收據的收集和儲存。如果不對這些資料進行資料分析,那麼就沒有收集的意義了。通過資料分析和挖掘,讓資料產生價值。一直以來我認為devops必須是一個閉環,即apm,日誌,監控著三大系統的資料,必須經過分析對dev和ops有價值。
資料視覺化是大資料的『最後一公里』,做好視覺化是對於資料分析是重要的。
今天,主要介紹 ofollow,noindex">redash 這款資料分析的利器。
redash簡介
redash是一款開源的BI工具,提供了基於web的資料庫查詢和資料視覺化功能。

基本上滿足了大多數的場景。相比
superset,除了上手簡單,支援influxdb等時序資料庫。這點對於監控資料分析很有優勢。
- sql友好的SQL editor,更加高效的編寫複雜的sql

隨時寫,隨時查,實時看到查詢的效果
-
支援豐富的視覺化展示形式
- Boxplot
- Chart - Line, Bar, Area, Pie, Scatter
- Cohort
- Counter
- Funnel
- Map
- Pivot Table
- Sankey
- Sunburst
- Word Cloud

- 角色許可權相關,支援ldap等,方便與企業內部的使用者體系打通。
安裝和簡單使用
安裝
如果是想直接體驗的話,docker-compose部署最簡單, redash github倉庫中直接提供了docker-compose.production.yml檔案,直接docker-compose up -d 即可。
# This is an example configuration for Docker Compose. Make sure to atleast update # the cookie secret & postgres database password. # # Some other recommendations: # 1. To persist Postgres data, assign it a volume host location. # 2. Split the worker service to adhoc workers and scheduled queries workers. version: '2' services: server: image: redash/redash:latest command: server depends_on: - postgres - redis ports: - "5000:5000" environment: PYTHONUNBUFFERED: 0 REDASH_LOG_LEVEL: "INFO" REDASH_REDIS_URL: "redis://redis:6379/0" REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres" REDASH_COOKIE_SECRET: veryverysecret REDASH_WEB_WORKERS: 4 restart: always worker: image: redash/redash:latest command: scheduler environment: PYTHONUNBUFFERED: 0 REDASH_LOG_LEVEL: "INFO" REDASH_REDIS_URL: "redis://redis:6379/0" REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres" QUEUES: "queries,scheduled_queries,celery" WORKERS_COUNT: 2 restart: always redis: image: redis:3.0-alpine restart: always postgres: image: postgres:9.5.6-alpine# volumes:# - /opt/postgres-data:/var/lib/postgresql/data restart: always nginx: image: redash/nginx:latest ports: - "80:80" depends_on: - server links: - server:redash restart: always
通過compose檔案可以看出,redash依賴redis和pgsql資料庫。redis用來快取一些查詢result,而pgsql是元資料庫,目前不支援mysql替換pgsql。
其他安裝方式,見 官方文件
簡單使用
先上一張實際的效果圖:
包含了couter和area chart。
資料來源包括influxdb時序資料庫,和mysql業務庫。
其中audit-middware 其實是Query Results庫。Query Results Data Source 允許你在一些已經存在的查詢結果之上再做一些高階的查詢, 這樣就可以輕易合併一些查詢結果。
總結
在實際使用中,redash和superset各有優劣。根據自己的場景來選擇吧。查閱資料的過程中,已經有人對redash做了二次開發,這也許是深度使用的必經之路。
為什麼非要使用這種開源BI視覺化工具?
因為如果是前後端配合的話,工作量會很大。而且也很難實現隨時修改隨時上線。不過這取決於前期資料的完整性。
本文轉自中文社群- k8s與資料分析--利用redash做自助資料分析