1小时搭建可视化数据分析平台redash

1小时搭建可视化数据分析平台redash

BI这块选择其实挺多,比如Tableau,PowerBI,Superset,Metabase以及今天介绍的redash。Tableau比较贵,使用起来都是拖拽式,对于一个数据分析人员,写SQL是很多的,所以可以考虑superset vs. Metabase vs. redash,superset之前自己也搭建用过,Airbnb出品,美观,但是好像不太会用,Metabase没用过,PowerBI之前也了解过没深入研究,上一家公司使用的是redash,体验还不错,同时现在工作上也有一些限制,不能直接连接大数据平台,所以考虑在本地搭建一个简易的数据分析平台,便于做一些简单的分析和监控报表,实现方案是:Windows 10+Docker+Redash+Python。Python每天自动爬数据插入postgresql数据库,redash写好sql代码生成报表。

我认为这种方案会比大家直接安装一个mysql数据库在本地或者用Tableau/PowerBI在那里点点点半天会好一些。

安装步骤

# 先安装docker
网上下载一个Docker for windows或者for mac,最新版本还是很好用的,前几年的版本挺难用。
配置国内镜像:百度搜一下就有了
{
  "debug": true,
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ],
  "experimental": true
}


# 从GitHub下载源码[没有git的也可以打开github点击下载然后解压]
git clone https://github.com/getredash/redash.git

# 打开cmd/Termina进入redash目录
cd redash


# 创建docker-compose.production.yml文件,内容参考yml配置。
# 上面git下载的里面也有一个docker-compose.yml文件,这是开发用的,要换。
# 可以不用touch,直接新建一个就好了
touch docker-compose.production.yml

#创建db,没报错就是安装好了
docker-compose -f docker-compose.production.yml run --rm server create_db

#redash运行,这里面也会安装一些东西
docker-compose -f docker-compose.production.yml up

#redash运行后台运行
docker-compose -f docker-compose.production.yml up -d

docker-compose.production.yml文件内容

这个配置REDASH_ADDITIONAL_QUERY_RUNNERS:"redash.query_runner.python"可以用来运行Python,但是是python2,不知道咋改为python3。至于这些参数为啥这样配置我也不懂,能run就行。建议image版本不要选择最新的,下载慢还安装不成功…

# 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:8.0.2.b37747
    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: "suibianxieyige"
      REDASH_WEB_WORKERS: 4  
      #邮箱 
      REDASH_MAIL_SERVER: "smtp.exmail.qq.com"
      REDASH_MAIL_PORT: 465
      REDASH_MAIL_USE_TLS: "true"
      REDASH_MAIL_USE_SSL: "true"
      REDASH_MAIL_USERNAME: "xxx@xx.com"
      REDASH_MAIL_PASSWORD: "xxx"
      REDASH_MAIL_DEFAULT_SENDER: "xxx@xx.com"
      REDASH_HOST: "http://192.168.3.110:80"
      REDASH_ADDITIONAL_QUERY_RUNNERS: "redash.query_runner.python"
    restart: always
  worker:
    image: redash/redash:8.0.2.b37747
    command: scheduler
    environment:
      PYTHONUNBUFFERED: 0
      REDASH_LOG_LEVEL: "INFO"
      REDASH_REDIS_URL: "redis://redis:6379/0"
      REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres"
      REDASH_COOKIE_SECRET: "xxx"
      REDASH_ADDITIONAL_QUERY_RUNNERS: "redash.query_runner.python"
      QUEUES: "queries,scheduled_queries,celery"
      WORKERS_COUNT: 2
    restart: always
  redis:
    image: redis:3.0-alpine
    ports:
     - "6379:6379"
    volumes: 
      - ./data/redis_data:/data
    restart: always
  postgres:
    image: postgres:9.5.6-alpine
    ports:
     - "5432:5432"
    volumes:
      - ./data/postgresql_data:/var/lib/postgresql/data
    restart: always
  nginx:
    image: redash/nginx:latest
    ports:
      - "80:80"
    volumes:
      - ./data/nginx:/etc/nginx
    #depends_on:
    #  - server
    links:
      - server:redash
    restart: always

如果安装没问题,打开浏览器,输入http://0.0.0.0:5000/就可以访问了,如下
在这里插入图片描述
刚进来是没有数据源的,需要添加数据源。可以添加的数据源种类很多,我们添加一个默认的数据库postgresql,数据库名称和host啥的在yaml配置文件里面postgresql://postgres@postgres/postgres。
在这里插入图片描述
在这里插入图片描述
新建一个查询,写一句sql,就可以在本地run一个分析平台了
在这里插入图片描述
Dashboard【伪造数据】
在这里插入图片描述
图表是基于plotly的,这个库有python版本,绘图功能很强。

每个图表的查询可以设置更新时间,所以这个功能就很好了,比如你每天早上要看报表,就设置每天早上8点更新,9点打开电脑就是最新数据了。所以这时候就要涉及到数据怎么来的问题。

有条件的可以直接连接大数据平台或者mysql数据库啥的。也可以自己写个python代码每天自动更新数据。

想想可以每天去抓取房价数据、股市数据来自己做个可视化也挺不错,感觉这个redash比Tableau方便。

目前就这么多,后续:

(1)是想改改源码,然后能直接读取本地的csv文件到数据库,希望有大神可以指导指导;

(2)可以直接改为运行python3,同时可以跑机器学习模型,python结果直接可视化等等;

(3)链接neo4j展示社交网络图,做欺诈分析等。

(4)探索新用法…

–Over–

参考链接:[感谢大佬们的教程]

安装教程:
http://www.aloneme.cn/2019/07/02/Redash%E8%AF%A6%E7%BB%86Docker%E9%83%A8%E7%BD%B2%E6%95%99%E7%A8%8B/
​www.aloneme.cn/2019/07/02/Redash%E8%AF%A6%E7%BB%86Docker%E9%83%A8%E7%BD%B2%E6%95%99%E7%A8%8B/

查询不出结果:

https://github.com/getredash/redash/issues/3761
​github.com/getredash/redash/issues/3761
dockerhub redash:

Docker Hub
​hub.docker.com/r/redash/redash/tags
以Redash為資料視覺化方案之選擇與實踐系列

https://medium.com/marsw-redash/bi%E5%B7%A5%E5%85%B7-%E4%BB%A5redash%E7%82%BA%E8%B3%87%E6%96%99%E8%A6%96%E8%A6%BA%E5%8C%96%E6%96%B9%E6%A1%88%E4%B9%8B%E9%81%B8%E6%93%87%E8%88%87%E5%AF%A6%E8%B8%90%E7%B3%BB%E5%88%97-affbf9cb45a6
​medium.com/marsw-redash/bi%E5%B7%A5%E5%85%B7-%E4%BB%A5redash%E7%82%BA%E8%B3%87%E6%96%99%E8%A6%96%E8%A6%BA%E5%8C%96%E6%96%B9%E6%A1%88%E4%B9%8B%E9%81%B8%E6%93%87%E8%88%87%E5%AF%A6%E8%B8%90%E7%B3%BB%E5%88%97-affbf9cb45a6

Team 报表系统定制——基于 Redash 的二次开发
​www.jianshu.com/p/36ac116f7e0a

medium和github上有很多资料,可以去看看。

redash调研
https://cloud.tencent.com/developer/article/1586580
​cloud.tencent.com/developer/article/1586580

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python风控

支持他!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值