当前位置:网站首页>Redash - a powerful open source data visualization platform
Redash - a powerful open source data visualization platform
2022-07-20 10:34:00 【Wen Zhenxi】
We will often mention BI System (Business Intelligence), It is an important data access , Help data , Help enterprises obtain data reports and make strategic decisions . What we all know is FineBI and Microsoft Of powerBI, But the use cost is not low. You need authorization and client , Using configuration is also quite tedious . What the author brings to you today is an open source pure Web Web data tools .
Enclosed :
Meow a blog :w-blog.cn
Redash official Git Address :https://github.com/getredash/redash
Redash Official documents :https://redash.io/help/
PS: The latest version is V8 edition , There will be some strange problems when upgrading from a lower version to a higher version. Please make a backup before upgrading
One 、redash Introduce
As a software engineer, the most important thing is , Products keep asking for this kind of data and what kind of data , Or I put forward a lot of data report requirements and keep writing CURD There is no technical content , Repeat things should be solved with tools , Even let the product solve it by itself . The author has been looking for tools , To solve the problem of data output in the research and development of the whole company , An inadvertent opportunity to find Redash This open source component . Of course Redash It has its own advantages .
For one BI The most important thing is the type of data source supported ,Redash Support over 35 Data sources , It can meet almost all scenarios :
- Mainstream MySQL、PostgreSQL、MongoDB、SQL Server etc.
- Big data database Hive、Impala、Presto etc.
- New database ClickHouse、CockroachDB、InfluxDB etc.
- Customize Python Script 、URL Request etc.
Redash There are two parts :
Query editor : Consider using JS Fiddle Conduct SQL Inquire about . By sharing data sets and generating queries for data , You can share data in your organization in an open way . such , Everyone can not only view the result data set , And you can view the process of generating it . It can also be forked to generate new data sets and gain new insights .
Visualization and dashboard : Once you have a dataset , You can create different visualization files from them , Then combine multiple visualization files into a dashboard . at present Redash Support charts , PivotTable , Queues and more .
Two 、redash install
Ubuntu If the complete installation method is ubuntu Run the official order directly :
git clone https://github.com/getredash/setup.git
cd setup
// Step one install docker
// Step two Create a database mapping directory
// Step three Create basic configuration file
// Step four install docker-composer Initialize database , function Redash
./setup.sh
I usually use ubuntu less ,centos It is the system mainly used at ordinary times , According to the official installation method, the author sorted out a set of basic docker You can install the tutorial , The premise is ready docker and docker-composer, You can refer to my previous articles :
mkdir redashsetup
cd redashsetup/
// Create database mapping directories and basic configuration files
vim redashenv.sh
#!/usr/bin/env bash
# This script setups dockerized Redash on Ubuntu 18.04.
set -eu
mkdir /opt/redash
mkdir /opt/redash/postgres-data
REDASH_BASE_PATH=/opt/redash
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
chmod -R 777 redashenv.sh
./redashenv.sh
cat /opt/redash/env
PYTHONUNBUFFERED=0
REDASH_LOG_LEVEL=INFO
REDASH_REDIS_URL=redis://redis:6379/0
POSTGRES_PASSWORD=XjGVGggWXHIRyOP5bOaVsPQ8AKunVsuX
REDASH_COOKIE_SECRET=9hihbX7BTziWKO7kolldC486QFoo5aU2
REDASH_SECRET_KEY=tyS5wWdp8l4gq2YPw9sbrnJwaKbVdeEp
REDASH_DATABASE_URL=postgresql://postgres:[email protected]/postgres
If you need to use mail related functions , Such as user invitation , Password reset , When the alarm is triggered, the following configurations need to be added :
vim /opt/redash/env
REDASH_MAIL_SERVER (default: localhost)
REDASH_MAIL_PORT (default: 25)
REDASH_MAIL_USE_TLS (default: false)
REDASH_MAIL_USE_SSL (default: false)
REDASH_MAIL_USERNAME (default: None)
REDASH_MAIL_PASSWORD (default: None)
REDASH_MAIL_DEFAULT_SENDER (Email address to send from)
version: "2"
services:
server:
image: redash/redash:8.0.0.b32245
depends_on:
- postgres
- redis
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: "INFO"
REDASH_REDIS_URL: "redis://redis:6379/0"
REDASH_DATABASE_URL: "postgresql://[email protected]/postgres"
REDASH_RATELIMIT_ENABLED: "false"
REDASH_WEB_WORKERS: 4
restart: always
command: server
ports:
- "5000:5000"
scheduler:
image: redash/redash:8.0.0.b32245
depends_on:
- postgres
- redis
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: "INFO"
REDASH_REDIS_URL: "redis://redis:6379/0"
REDASH_DATABASE_URL: "postgresql://[email protected]/postgres"
REDASH_RATELIMIT_ENABLED: "false"
QUEUES: "celery"
WORKERS_COUNT: 1
restart: always
command: scheduler
scheduled_worker:
image: redash/redash:8.0.0.b32245
depends_on:
- postgres
- redis
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: "INFO"
REDASH_REDIS_URL: "redis://redis:6379/0"
REDASH_DATABASE_URL: "postgresql://[email protected]/postgres"
REDASH_RATELIMIT_ENABLED: "false"
QUEUES: "scheduled_queries,schemas"
WORKERS_COUNT: 1
restart: always
command: worker
adhoc_worker:
image: redash/redash:8.0.0.b32245
depends_on:
- postgres
- redis
environment:
PYTHONUNBUFFERED: 0
REDASH_LOG_LEVEL: "INFO"
REDASH_REDIS_URL: "redis://redis:6379/0"
REDASH_DATABASE_URL: "postgresql://[email protected]/postgres"
REDASH_RATELIMIT_ENABLED: "false"
QUEUES: "queries"
WORKERS_COUNT: 2
restart: always
command: worker
redis:
image: redis:5.0-alpine
restart: always
postgres:
image: postgres:9.6-alpine
env_file: /opt/redash/env
volumes:
- /opt/redash/postgres-data:/var/lib/postgresql/data
restart: always
nginx:
image: redash/nginx:latest
ports:
- "8880:80"
depends_on:
- server
links:
- server:redash
restart: always
Initialize database dependencies :
docker-compose run --rm server create_db
Creating network "data_default" with the default driver
Creating data_redis_1 ... done
Creating data_postgres_1 ... done
[2019-10-31 04:43:15,422][PID:1][INFO][alembic.runtime.migration] Context impl PostgresqlImpl.
[2019-10-31 04:43:15,422][PID:1][INFO][alembic.runtime.migration] Will assume transactional DDL.
[2019-10-31 04:43:15,437][PID:1][INFO][alembic.runtime.migration] Running stamp_revision -> e5c7a4e2df4d
start-up redash:
docker-compose up -d
adopt nginx Of 8880 Port to access , Next, you can configure the user name and password of the administrator account to start using :
Some suggestions on use
- One user, one account , Don't mix accounts
- Use the grouping function to give corresponding permissions , Distinguish permissions according to business
- The database is configured with a read-only account , Avoid from BI The system obtains high permission of the database
- The database account only gives single database permission , Even to single table permission control data , Try to control the granularity of the data
- After configuring the mail, you can use the mail alarm , Detect and alarm abnormal data
This article by the blog one article many sends the platform OpenWrite Release !
边栏推荐
- 【资源记录】流形学习 Manifold learning 和 PCA 的关系
- Summary 2 - deep learning network building learning
- 论文笔记:Look Back and Predict Forward in Image Captioning# Look Back and Predict Forward in Image Capti
- lambda用法
- 下拉框三角的简易设置
- Regular Expression
- Message queue for inter process communication (with relevant executable code)
- 论文笔记:Self-critical Sequence Training for Image Captioning
- Working principle and configuration of static routing
- pytorch中model.train(),model.eval() 和 torch.no_grad()的区别
猜你喜欢
Win10 + CUDA11.7+pytorch手动安装-2.0版本
Scala case (companion object)
Variable influence notes from UCB CS 285 Sergey Levine
Insert cross column pictures under the title of the home page of latex IEEE paper, and solve the footnote problem
【资源记录】VAE 学习笔记
Examples of cat and dog classification -kaggle
转:Pytorch模型小例子
阿里云微消息队列 MQTT
静态路由工作原理与配置
Unable to get browser (Selenium::WebDriver::Error::NoSuchWindowError)
随机推荐
Go-Zero 业务开发军火库
论文笔记:Look Back and Predict Forward in Image Captioning# Look Back and Predict Forward in Image Capti
Interpretation and practice of CEPH erasure code
Pytoch:torch vision package - Summary
Mocha测试
About querying basic resource information and viewing key data
[record Resources & ideas] how to evaluate the clustering effect i.e. clustering performance evaluation/clustering validity assessment
Scala案例(伴生对象)
pytorch中model.train(),model.eval() 和 torch.no_grad()的区别
Dark horse programmer timer
session和cookie以及token和storage
Installation management program
Optimizer: torch optim
Disk and file system
CEPH detailed mon_ osd_ max_ split_ count
[resource record] VAE learning notes
ModuleNotFoundError: No module named 'gflags'
Working principle and configuration of static routing
ZABBIX chart Chinese garbled
Kingbasees database administrator's Guide -- 13 table management