[转帖]数据可视化之redash(支持43种数据源) (转自https://anjia0532.github.io/2019/07/08/redash/)

数据,可视化,redash,支持,数据源,https,anjia0532,github,io · 浏览次数 : 0

小编点评

**简介** 这篇文章介绍了一种可视化工具 Redash 的安装和配置方法,以帮助用户在没有可视化工具的情况下进行数据分析和可视化。 **安装** 1. 获取 Redash 安装文件。 2. 运行以下命令安装: ```bash apt install -y pwgen python-pippip install pip -Upip config set global.index-url ``` **配置** 1. 创建一个名为 `setup.sh` 的文件,并粘贴内容到该文件中: ```bash # This script setups dockerized Redash on Ubuntu 18.04. set -euREDASH_BASE_PATH=/opt/redashcreate_directories() { if [[ ! -e $REDASH_BASE_PATH ]]; then sudo mkdir -p $REDASH_BASE_PATH sudo chown $USER:$USER $REDASH_BASE_PATH fi if [[ ! -e $REDASH_BASE_PATH/postgres-data ]]; then mkdir $REDASH_BASE_PATH/postgres-data } create_config() { if [[ -e $REDASH_BASE_PATH/env ]]; then rm $REDASH_BASE_PATH/env touch $REDASH_BASE_PATH/env fi COOKIE_SECRET=$(pwgen -1s 32) SECRET_KEY=$(pwgen -1s 32) POSTGRES_PASSWORD=$(pwgen -1s 32) REDASH_DATABASE_URL=\"postgresql://postgres:${POSTGRES_PASSWORD}@postgres/postgres\" echo "PYTHONUNBUFFERED=0" >> $REDASH_BASE_PATH/env echo "REDASH_LOG_LEVEL=INFO" >> $REDASH_BASE_PATH/env echo "REDASH_REDIS_URL=redis://redis:6379/0" >> $REDASH_BASE_PATH/env echo "POSTGRES_PASSWORD=$POSTGRES_PASSWORD" >> $REDASH_BASE_PATH/env echo "REDASH_COOKIE_SECRET=$COOKIE_SECRET" >> $REDASH_BASE_PATH/env echo "REDASH_SECRET_KEY=$SECRET_KEY" >> $REDASH_BASE_PATH/env echo "REDASH_DATABASE_URL=$REDASH_DATABASE_URL" >> $REDASH_BASE_PATH/env } create_directoriescreate_config } ``` 2. 创建一个名为 `redash-service.yml` 的文件,并粘贴以下内容: ```yaml version: "2" x-redash-service: image: redash/redash:7.0.0.b18042 depends_on: - postgres - redis env_file: /opt/redash/env restart: always server: <<: *redash-service command: server ports: - "5000:5000" environment: REDASH_WEB_WORKERS: 4 scheduler: <<: *redash-service command: scheduler environment: QUEUES: "celery" WORKERS_COUNT: 1 scheduled_worker: name: scheduled-worker command: my-scheduler share: dashboard: Dashboard ``` 3. 创建一个名为 `dashboard.sql` 的文件,并粘贴以下内容: ```sql SELECT Carrier, avg(DepDelay > 10) * 100 AS c3 FROM ontime WHERE Year = 2018 GROUP BY Carrier ORDER BY Carrier发布 ``` 4. 启动 Redash 服务: ```bash sudo docker-compose run --rm server create_db sudo docker-compose up -d ``` **配置 Redash** 1. 创建一个名为 `redash.yml` 的文件,并粘贴以下内容: ```yaml data_sources: clickhouse: connection_url: postgres://postgres:your_password@your_host:your_port/your_database ``` 2. 保存并启动 Redash。 **注意** * 将 `your_password`、`your_host`、`your_port` 和 `your_database` 替换为实际值。 * 该示例假设您已经安装了 ClickHouse。如果您尚未安装,请按照 ClickHouse 的文档进行安装。

正文

https://www.cnblogs.com/a00ium/p/13177272.html

 

人类都是视觉动物,讲究一图胜千言。如果没了可视化,那么你在跟领导汇报工作时,很大程度会鸡同鸭讲。
其实 excel2016+已经是一个不错的数据分析及可视化工具了(支持几十种数据源),但是,不方便权限控制,集中,及报警。

我一般将 redash 作为可视化工具、数据库查询编辑器(类似 navicat-premium)、数据挖掘探索工具来用。
截止目前,自建 redash 支持 43 种数据源
image.png

安装 redash

复制代码
## 安装必要工具
apt install -y pwgen python-pip
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install docker-compose

## 生成脚本
cat << EOF | sudo tee -a ./setup.sh
#!/usr/bin/env bash
# This script setups dockerized Redash on Ubuntu 18.04.
set -eu

REDASH_BASE_PATH=/opt/redash

create_directories() {
    if [[ ! -e $REDASH_BASE_PATH ]]; then
        sudo mkdir -p $REDASH_BASE_PATH
        sudo chown $USER:$USER $REDASH_BASE_PATH
    fi

    if [[ ! -e $REDASH_BASE_PATH/postgres-data ]]; then
        mkdir $REDASH_BASE_PATH/postgres-data
    fi
}

create_config() {
    if [[ -e $REDASH_BASE_PATH/env ]]; then
        rm $REDASH_BASE_PATH/env
        touch $REDASH_BASE_PATH/env
    fi

    COOKIE_SECRET=$(pwgen -1s 32)
    SECRET_KEY=$(pwgen -1s 32)
    POSTGRES_PASSWORD=$(pwgen -1s 32)
    REDASH_DATABASE_URL="postgresql://postgres:${POSTGRES_PASSWORD}@postgres/postgres"

    echo "PYTHONUNBUFFERED=0" >> $REDASH_BASE_PATH/env
    echo "REDASH_LOG_LEVEL=INFO" >> $REDASH_BASE_PATH/env
    echo "REDASH_REDIS_URL=redis://redis:6379/0" >> $REDASH_BASE_PATH/env
    echo "POSTGRES_PASSWORD=$POSTGRES_PASSWORD" >> $REDASH_BASE_PATH/env
    echo "REDASH_COOKIE_SECRET=$COOKIE_SECRET" >> $REDASH_BASE_PATH/env
    echo "REDASH_SECRET_KEY=$SECRET_KEY" >> $REDASH_BASE_PATH/env
    echo "REDASH_DATABASE_URL=$REDASH_DATABASE_URL" >> $REDASH_BASE_PATH/env
}

create_directories
create_config
EOF

## 生成必要配置文件
chmod +x ./setup && ./setup
复制代码

docker-compose.yml

复制代码
version: "2"
x-redash-service: &redash-service
  image: redash/redash:7.0.0.b18042
  depends_on:
    - postgres
    - redis
  env_file: /opt/redash/env
  restart: always
services:
  server:
    <<: *redash-service
    command: server
    ports:
      - "5000:5000"
    environment:
      REDASH_WEB_WORKERS: 4
  scheduler:
    <<: *redash-service
    command: scheduler
    environment:
      QUEUES: "celery"
      WORKERS_COUNT: 1
  scheduled_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "scheduled_queries,schemas"
      WORKERS_COUNT: 1
  adhoc_worker:
    <<: *redash-service
    command: worker
    environment:
      QUEUES: "queries"
      WORKERS_COUNT: 2
  redis:
    image: redis:5.0-alpine
    restart: always
  postgres:
    image: postgres:9.5-alpine
    env_file: /opt/redash/env
    volumes:
      - /opt/redash/postgres-data:/var/lib/postgresql/data
    restart: always
  nginx:
    image: redash/nginx:latest
    ports:
      - "80:80"
    depends_on:
      - server
    links:
      - server:redash
    restart: always
## 配置数据库
sudo docker-compose run --rm server create_db
## 启动
sudo docker-compose up -d
复制代码

 

配置 redash

image.png

创建数据源
image.png
image.png

注意:
为做演示,clickhouse 已导入官网提供的 2018 年航天数据,详见 https://clickhouse.yandex/docs/zh/getting_started/example_datasets/ontime/

演示 redash

创建查询 查询 2007 年各航空公司延误超过 10 分钟以上的百分比
image.png

SELECT Carrier, avg(DepDelay > 10) * 100 AS c3 FROM ontime WHERE Year = 2018 GROUP BY Carrier ORDER BY Carrier
image.png
image.png
image.png

发布
image.png

创建仪表盘(Dashboard)

image.png

image.png
image.png
image.png
image.png
分享后的 dashboard,在底下有个 redash 的 logo
image.png

可以嵌入到已有系统里。

参考资料

招聘小广告

山东济南的小伙伴欢迎投简历啊 加入我们 , 一起搞事情。
长期招聘,Java 程序员,大数据工程师,运维工程师,前端工程师。

与[转帖]数据可视化之redash(支持43种数据源) (转自https://anjia0532.github.io/2019/07/08/redash/)相似的内容:

[转帖]数据可视化之redash(支持43种数据源) (转自https://anjia0532.github.io/2019/07/08/redash/)

https://www.cnblogs.com/a00ium/p/13177272.html 人类都是视觉动物,讲究一图胜千言。如果没了可视化,那么你在跟领导汇报工作时,很大程度会鸡同鸭讲。其实 excel2016+已经是一个不错的数据分析及可视化工具了(支持几十种数据源),但是,不方便权限控制,集

[转帖]终于!SOFATracer 完成了它的链路可视化之旅

https://my.oschina.net/sofastack/blog/5283439 ▼ 背 景 有幸参与开源软件供应链点亮计划——暑期 2021 支持的开源项目,目前 SOFATracer 已经能够将埋点数据上报到 Zipkin 中,本项目的主要目标是将产生的埋点数据上报给 Jaeger 和

[转帖]Kafka可靠性之HW与Leader Epoch

《深入理解Kafka:核心设计与实现原理》是基于2.0.0版本的书 在这本书中,终于看懂了笔者之前提过的几个问题 准备知识 1、leader里存着4个数据:leader_LEO、leader_HW、remote_LEO集合、remote_HW集合 2、follower里只保存自身的:follower

[转帖]TiDB损坏多副本之有损恢复处理方法

https://tidb.net/blog/b1ae4ee7 TiDB分布式数据库采用多副本机制,数据副本通过 Multi-Raft 协议同步事务日志,确保数据强一致性且少数副本发生故障时不影响数据的可用性。在三副本情况下,单副本损坏可以说对集群没什么影响,但当遇到多副本损坏的损坏丢失的时候,如何快

[转帖]JVM(3)之垃圾回收(GC垃圾收集器+垃圾回收算法+安全点+记忆集与卡表+并发可达性分析......)

《深入理解java虚拟机》+宋红康老师+阳哥大厂面试题2总结整理 一、堆的结构组成 堆位于运行时数据区中是线程共享的。一个进程对应一个jvm实例。一个jvm实例对应一个运行时数据区。一个运行时数据区有一个堆空间。 java堆区在jvm启动的时候就被创建了,其空间大小也就被确定了(堆是jvm管理的最大

[转帖]Kafka之ISR机制的理解

Kafka对于producer发来的消息怎么保证可靠性? 每个partition都给配上副本,做数据同步,保证数据不丢失。 副本数据同步策略 和zookeeper不同的是,Kafka选择的是全部完成同步,才发送ack。但是又有所区别。 所以,你们才会在各种博客看到这句话【kafka不是完全同步,也不

[转帖]003、体系结构之TiKV持久化

TiKV架构和作用 数据持久化分布式一致性MVCC分布式事务Coprocessor coprocessor : 协同处理器。 可以将一些SQL计算交给TiKV处理。不需要将TiKV所有数据通过网络发送给TiDB Server RocksDB 任何持久化的存储引擎,数据终归要保存在磁盘上,TiKV 也

[转帖]Linux IO调度之队列、队列深度

有关数据结构 请求队列:struct request_queue 请求描述符:struct request 队列深度 可以在端口队列中等待IO请求数量; 具体代表其值的是request_queue的成员nr_requests:存放了每个数据传送方向的最大请求个数; nr_requests在Linux

[转帖]TIKV扩容之刨坑填坑​

01 背景 某tidb集群收到告警,TIKV 节点磁盘使用率85%以上,联系业务无法快速删除数据,于是想到扩容TIKV 节点,原先TIKV 节点机器都是6TB的硬盘,目前只有3TB的机器可扩,也担心region 均衡后会不会打满3TB的盘,PD 调度策略来看应该是会根据不同存储机器的资源配置和使用情

[转帖]JVM系列之:你知道Java有多少种内存溢出吗

本文为《深入学习 JVM 系列》第二十五篇文章 Java内存区域 关于这部分内容大多来源于《深入理解Java虚拟机》一书。 Java 运行时数据区域(JDK8)如下图所示: 关于上述提到的线程共享和线程隔离区域,下图做详细讲解: 程序计数器 程序计数器是一块较小的内存空间,可以看作是当前线程所执行的