可视化报表Superset

文章目录

  • 一、Superset入门与安装
    • 1、Superset概述
    • 2、安装Python环境
      • 2.1 安装Miniconda
      • 2.2 创建Python3.7环境
    • 3、Superset部署
      • 3.1 安装Superset
      • 3.2 启动Supterset
      • 3.3 superset启停脚本
    • 4、docker部署
  • 二、Superset使用与实战
    • 1、对接MySQL数据源
    • 2、制作仪表盘与图表

一、Superset入门与安装

1、Superset概述

Superset官网地址:http://superset.apache.org/

Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数据分析引擎,拥有丰富的图表展示形式,并且支持自定义仪表盘

2、安装Python环境

2.1 安装Miniconda

Superset是由Python语言编写的Web应用,要求Python3.7的环境

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 将路径放到/opt/module/miniconda3下
# 成功后重启shell
# 查看python版本
python -V# 加载环境变量配置文件,使之生效也可以
source ~/.bashrc
# 取消激活base环境
# Miniconda安装完成后,每次打开终端都会激活其默认的base环境,我们可通过以下命令,禁止激活默认base环境
conda config --set auto_activate_base false

2.2 创建Python3.7环境

# 配置conda国内镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set show_channel_urls yes# 创建Python3.7环境
conda activate
conda create --name superset python=3.7
conda activate superset
# 退出当前环境
conda deactivate

3、Superset部署

https://superset.apache.org/docs/installation/installing-superset-from-scratch

docker安装更方便,这里演示二进制包安装

3.1 安装Superset

# 安装Superset之前,需安装以下所需依赖
sudo yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel python-setuptools openssl-devel cyrus-sasl-devel openldap-devel# 安装Superset
# 安装(更新)setuptools和pip
pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/
# 安装Supetset
# -i的作用是指定镜像,这里选择国内镜像
pip install apache-superset -i https://pypi.douban.com/simple/
# 如果遇到网络错误导致不能下载,可尝试更换镜
pip install apache-superset --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple
# 初始化Supetset数据库
superset db upgrade
# 一些常见错误可以参考:https://blog.csdn.net/zgzdqq/article/details/127996901
# 这里花了好久,反正就是缺啥补啥,都是版本依赖问题
# markupsafe依赖的版本回退到 2.0.1(报错ImportError: cannot import name 'soft_unicode' from 'markupsafe回退)
# pip install --force-reinstall MarkupSafe==2.0.1# 创建管理员用户
# 说明:flask是一个python web框架,Superset使用的就是flask
export FLASK_APP=superset
superset fab create-admin
# Superset初始化
superset init

3.2 启动Supterset

# gunicorn是一个Python Web Server,可以和java中的TomCat类比
pip install gunicorn -i https://pypi.douban.com/simple/# 启动Superset,确保当前conda环境为superset
gunicorn --workers 5 --timeout 120 --bind hadoop102:8787  "superset.app:create_app()" --daemon 
# workers:指定进程个数
# timeout:worker进程超时时间,超时会自动重启
# bind:绑定本机地址,即为Superset访问地址
# daemon:后台运行# 登录Superset
# 访问http://hadoop102:8787# 停止superset
ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9
conda deactivate

3.3 superset启停脚本

vim superset.sh

#!/bin/bashsuperset_status(){result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`if [[ $result -eq 0 ]]; thenreturn 0elsereturn 1fi
}
superset_start(){source ~/.bashrcsuperset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenconda activate superset ; gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 --daemon 'superset.app:create_app()'elseecho "superset正在运行"fi}superset_stop(){superset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenecho "superset未在运行"elseps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9fi
}case $1 instart )echo "启动Superset"superset_start;;stop )echo "停止Superset"superset_stop;;restart )echo "重启Superset"superset_stopsuperset_start;;status )superset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenecho "superset未在运行"elseecho "superset正在运行"fi
esac

加执行权限

chmod +x superset.sh
superset.sh start

4、docker部署

其他可以参考官网:https://superset.apache.org/docs/installation/installing-superset-using-docker-compose

首先安装好docker依赖

docker pull amancevice/superset
# 创建存储superset数据配置所需文件夹
mkdir -p /opt/module/superset/conf 
mkdir -p /opt/module/superset/data# 运行superset容器
docker run --name superset -u 0 -d -p 17077:8088 \
-v /opt/module/superset/conf:/etc/superset \
-v /opt/module/superset/data:/var/lib/superset amancevice/superset:latest# 初始化superset数据库
docker exec -it superset superset db upgrade
# 创建superset管理员用户
docker exec -it superset superset fab create-admin
# 初始化superset
docker exec -it superset superset init 
# 开启服务
docker exec -it superset superset run --with-threads --reload --debugger
# 浏览器地址栏输入 IP:17077/login

二、Superset使用与实战

1、对接MySQL数据源

对接不同的数据源,需安装不同的依赖,以下地址为官网说明:https://superset.apache.org/docs/databases/installing-database-drivers

conda install mysqlclient
superset.sh restart

然后配置数据源配置,配置数据源,然后导入dataset

2、制作仪表盘与图表

点击Dashboards/+DASHBOARDS制作空白仪表盘;然后创建图表,点击Charts/+CHART,选则数据源及图表类型,下面是一些图配置,具体的操作详见官网

制作地图,报表为ads_order_count_by_province

制作饼状图,报表为ads_order_count_by_category

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/817937.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

游戏测试审表流程

备注:本文为博主原创文章,未经博主允许禁止转载。如有问题,欢迎指正。 个人笔记(整理不易,有帮助,收藏+点赞+评论,爱你们!!!你的支持是我写作的动力) 笔记目录:笔记本~笔记目录_airtest和selenium那个好用-CSDN博客 个人随笔:工作总结随笔_8、以前工作中都接触过哪…

python接口测试之测试报告

在本文章中,主要使用jenkins和编写的自动化测试代码,来生成漂亮的测试报告,关于什么是CI这些我就不详细的介绍了,这里我们主要是实战为主。 首先搭建java的环境,这个这里不做介绍。搭建好java的环境后,在h…

【已测 非网上加密版】全新UI彩虹站长在线工具箱系统源码下载 全开源版本

支持高达72种站长工具、开发工具、娱乐工具等功能。本地调用API、自带免费API接口,是一个多功能性工具程序支持后台管理、上传插件、添加增减删功能。 环境要求 * PHP > 7.3 * MySQL > 5.6 * fileinfo扩展 * 使用Redis缓存需安装Redis扩展 部署 * 下载源代码 …

智慧用电安全管理系统

智慧用电安全管理系统 智慧用电安全管理系统是智能电网中客户侧关键的构成部分,是基本建设新型智慧城市的基本,将完成地区内各种各样用电设备的智能化系统监管,完成地区内日常生活与工作中安全性、舒服。 一、智慧用电安全管理系统介绍 …

【杂谈】一些面经

最近又在找工作了,回想起去年好像也是这个时候在找工作。 上周五面了两家,一家车厂,一家芯片厂,待会还要面试两个芯片厂,打算简单的写个面经,最后在整理下自己近期的学习规划。 车厂 车机wifi研发&#x…

JAVA-贪吃蛇(源代码)

游戏界面: 图片素材: 背景图片 蛇身 食物 蛇头 标题 源代码: 运行界面 package com.snake.game;public class snakeApp {public static void main(String[] args) {//添加界面new snakeJFrame();} }游戏界面类JFrame package com.snake.game;import javax.swing.*; import …

机器学习——模型融合:Stacking算法

机器学习——模型融合:Stacking算法 在机器学习中,模型融合是一种常用的方法,它可以提高模型的泛化能力和预测性能。Stacking算法(又称为堆叠泛化)是一种强大的模型融合技术,它通过组合多个基本分类器的预…

HTTP 响应码

HTTP 响应码有哪些?分别代表什么含义? 200:成功,Web 服务器成功处理了客户端的请求。 301:永久重定向,当客户端请求一个网址的时候,Web 服务器会将当前请求重定向到另一个 网址,搜索…

如何正确使用数字化仪前端信号调理?(二)

在上期文章如何正确使用数字化仪前端信号调理?(一)中,我们为大家介绍了数字化仪前端电路所需的特性以及使用过程中需要的输入抗阻和输入耦合,本期文章将为您介绍数字化仪前端信号调理的使用过程中所需的输入电压范围&a…

C# 关于进程回收管理的一款工具设计与分享

目录 设计初衷 开发运行环境 Craneoffice ProcessGC 运行主界面 管理任务与策略 其它设置 移动存储设备管理 核心代码-计时器监控 小结 设计初衷 在使用 COM 模式操作 OFFICE 组件的开发过程中,当操作完相关文档后,在某些情况下仍然无法释放掉…

内网渗透-Windows内网渗透

内网渗透-Windows内网渗透 文章目录 内网渗透-Windows内网渗透前言一、信息收集 1.1、SPN1.2、端口连接1.3、配置文件1.4、用户信息1.6、会话收集1.7、凭据收集 navicat:SecureCRT:Xshell:WinSCP:VNC: 1.8、DPAPI1.9、域信任1.10、…

视频编辑软件pitivi基本功之安装篇

视频编辑软件pitivi基本功之安装篇 台式机的系统是openSUSE-Leap-15.5-DVD-x86_64 应用程序——工具——终端,切换到root用户 ruhonglocalhost:~> su - 密码: localhost:~ # zypper search pitivi localhost:~ # zypper install pitivi ruhonglocalho…

PINet车道线检测+YOLOv8视频目标检测

前言: 本文主要目的是实现在PINet车道线检测的代码中嵌入YOLOv8的目标检测模块,具体效果如图所示: 在学习和使用YOLOv8进行目标检测时,感觉可以和最近研究的车道线检测项目结合起来,形成一套如上图所示的视频效…

每日一题 第九十二期 Codeforces Round 939 (Div. 2)

A. Nene’s Game time limit per test: 1 second memory limit per test: 256 megabytes input: standard input output: standard output Nene invented a new game based on an increasing sequence of integers a 1 , a 2 , … , a k a_1, a_2, \ldots, a_k a1​,a2​…

c++的学习之路:4、入门(3)

摘要 本章将介绍一下auto、for和指针空值,文章末附上入门的所有代码。 目录 摘要 一、auto 二、for 三、指针空值 四、代码 五、思维导图 一、auto 这个关键字是c提出的,可以自动识别变量的类型,可以看出下方图片,auto自…

Java 8的流(Stream)和Lambda表达式求List<User>中age最大和最小的年龄

Java 8的流(Stream)和Lambda表达式求List中age最大和最小的年龄 要查询一个包含字符串类型age字段的User对象的列表(List)中的最大和最小年龄,你可以使用Java 8的流(Stream)和Lambda表达式来实现…

亚马逊、沃尔玛自养号测评技术解析:如何降低潜在风险

亚马逊等电商平台在全球范围内迅速扩张,竞争愈发激烈。为提升产品排名和销量,众多卖家选择采用自养号测评的策略。然而,自养号测评技术并非完美无缺,它存在着一定的技术局限性。由于缺乏对自养号原理及底层环境搭建的深入理解&…

三个截然不同的爆仓案例,值得每个交易者反思

用铜做镜子,能端正衣冠;以史为镜可知兴;以人为镜能明得与失得。”做买卖,需要以他人的得失为鉴,这样才会不断地反思持续地提高持续地进步。在这篇文章中,我们会分享3个完全不同的爆仓案例给交易者一个“与明…

curl 常见使用详解以及调用post/get接口以及post请求使用json传参

前言 CURL是一个功能强大的命令行工具,可用于传输数据并测试各种协议。它最初是为了方便地从命令行传输文件而设计的,但是现在已经发展成为一个通用的HTTP客户端,支持HTTP、HTTPS、FTP、SFTP等多种协议。 基本语法 cURL的基本语法如下: curl [options] [URL...]其中options…

Altium Designer许可证更新

在电子设计领域,Altium Designer已成为设计师们的首选工具。为了不断提升设计效率和创新能力,及时更新Altium Designer许可证至关重要。今天,我们将一同了解更新Altium Designer许可证的重要性,为您揭示最新许可证带来的无限可能。…