Superset基础入门

news2024/11/25 14:37:37

1 Superset概述

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

2 Superset安装

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

  • python安装步骤:
    (1)安装Miniconda。conda 是一个开源的包、环境管理器,可以用于在同一个机器上安装不同 Python 版本的 软件包及其依赖,并能够在不同的 Python 环境之间切换,Anaconda 包括 Conda、Python 以 及一大堆安装好的工具包,比如:numpy、pandas 等,Miniconda 包括 Conda、Python。 此处,我们不需要如此多的工具包,故选择 MiniConda。Miniconda下载地址:https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

    bash Miniconda3-latest-Linux-x86_64.sh
    

    运行后指定安装路径后安装成功

    (2)加载环境变量配置文件,使之生效

    source ~/.bashrc
    

    (3)Miniconda 安装完成后,每次打开终端都会激活其默认的 base 环境,我们可通过以下命 令,禁止激活默认 base 环境。

    conda config --set auto_activate_base false
    

    (4)配置 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
    

    (5)创建 Python3.8 环境

    conda create --name superset python=3.8
    
  • superset安装部署步骤
    (1)安装依赖

    sudo yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel python-setuptools openssl-devel cyrus-sasl-developenldap-devel
    

    (2)安装(更新)setuptools 和 pip

    pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/
    

    (3)安装superset

    pip install apache-superset -i https://pypi.douban.com/simple/
    

    (4)初始化 Supetset 数据库(元数据库),报错的话安装pip install wtforms==2.3.3

    superset db upgrade
    

    (5)创建管理员用户,输入用户名superset、个人信息(可回车跳过)、密码superset,报错的话安装pip install pillow
    在这里插入图片描述

    export FLASK_APP=superset
    superset fab create-admin
    

    (6)Superset 初始化

    superset init
    
  • 启动superset步骤,将superset部署到web容器中

    (1)安装gunicorn,gunicorn 是一个 Python Web Server,可以和 java 中的 TomCat 类比

    pip install gunicorn -i https://pypi.douban.com/simple/
    

    (2)确保当前 conda 环境为 superset,启动superset,–workers:指定进程个数, --timeout:worker 进程超时时间,超时会自动重启, --bind:绑定本机地址,即为 Superset 访问地址, --daemon:后台运行

    gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 "superset.app:create_app()" --daemon
    

    (3)访问hadoop102:8787,输入账号密码即可登录

  • 关闭superset,没有现成的命令,需要手动关闭进程,过滤出所有包含superset的进程并kill

    ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9
    
  • superset启停脚本

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

3 Superset使用

3.1 配置数据源

  • 要对接不同的数据源,需要安装不同的依赖,https://superset.apache.org/docs/databases/installing-database-drivers,这里安装对接mysql的依赖,然后重启superset

    conda install mysqlclient
    
  • 配置数据源步骤
    (1)点击 Data/Databases
    (2)点击+DATABASE
    (3)点击填写 Database 相关信息进行连接

  • 配置表步骤
    (1)点击 Data/Datasets
    (2)点击+DATASET
    (3)选择要配置的数据库以及表进行添加
    在这里插入图片描述

3.2 制作仪表盘

  • 创建空白仪表盘步骤
    (1)点击 Dashboards/+DASHBOARDS
    (2)命名并保存

  • 创建图表步骤
    (1)点击 Charts/+CHART
    (2)选则数据源及图表类型
    (3)对图表进行配置后创建,配置界面分为三块,分别是表的信息区、表的配置区、表的预览区;其中TIME COLUMN指明数据源表中代表时间的字段,后面它的值会作为横轴;TIME GRAIN代表时间粒度,TIME RANGE代表时间范围,可以设置要展示的时间范围;METRICS则代表衡量指标,可以选择一个数据源表的字段,后面它的值会作为纵轴,同时还需要选择一个聚合函数AGGREGATE,该聚合函数会按照前面选择的时间粒度进行数据的聚合;
    在这里插入图片描述

    (4)点击右上角保存生成的图表,选择要添加到的仪表盘
    (5)可在相应的仪表盘中看到刚刚创建的图表,如果有多个图表的话,可以点击编辑按钮,使用行列组件预先布局,然后再把图表拖到对应的位置上
    (6)在仪表盘右上角可以选择设置自动刷新时间间隔

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

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

相关文章

Hadoop学习笔记(HDP)-Part.12 安装HDFS

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

springboot监听器模式源码精讲

1.前言 很多时候我们看源码的时候看不下去,其中一个原因是系统往往使用了许多设计模式,如果你不清楚这些设计模式,这无疑增加了你阅读源码的难度。 springboot中就大量使用了设计模式,本文主要介绍其中的一种监听器模式&#xf…

mybatis 的快速入门以及基于spring boot整合mybatis

MyBatis基础 MyBatis是一款非常优秀的持久层框架,用于简化JDBC的开发 准备工作: 1,创建sprong boot工程,引入mybatis相关依赖2,准备数据库表User,实体类User3, 配置MyBatis(在applic…

流媒体方案之FFmpeg——实现物联网视频监控项目

目录 前言 一、FFmpeg介绍 二、FFmpeg简易理解 三、FFmpeg的重要概念 四、软硬件准备 五、移植、运行FFmpeg 六、运行FFmpeg 前言 最近想做一个安防相关的项目,所以跟着韦东山老师的视频来学习视频监控方案的相关知识,韦东山老师讲的课非常好&…

消息中间件之间的区别

一.单机吞吐量 ActiveMQ:万级,吞吐量比RocketMQ和Kafka要低了一个数量级 RabbitMQ:万级,吞吐量比RocketMQ和Kafka要低了一个数量级 RocketMQ:10万级,RocketMQ也是可以支撑高吞吐的一种MQ Kafka&#xff…

当发送“Hello,World”时,channel发生了什么?

一、Netty概述 1.Netty是什么? Netty 是一个异步的、基于事件驱动的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端。 2.Netty的地位怎么样? Netty 在 Java 网络应用框架中的地位就好比:Spring 框架在 JavaEE …

5个超实用GPT技巧,包括绩效总结、头脑风暴、营销策略等(内附提示词)

今天和大家分享5个用于工作上的GPT技巧,例如进行绩效总结、自我评估、头脑风暴,还是制作PPT方案等等,最大化提升你工作效率,本期内容对于大家来说都非常受用,记得收藏起来哦! 那么接下来就直接进入正题吧&a…

力扣题:字符的统计-12.5

力扣题-12.5 [力扣刷题攻略] Re:从零开始的力扣刷题生活 力扣题1:551. 学生出勤记录 I 解题思想:进行字符的统计即可 class Solution(object):def checkRecord(self, s):""":type s: str:rtype: bool"""fla…

网工内推 | 上市公司初级网工,HCIP认证优先,14薪,享企业年金

01 易佰网络 招聘岗位:初级网络工程师 职责描述: 1.电脑周边设备(打印机、扫描仪、传真机、复印机、投影仪等)安装与维护; 2.局域网维护;无线网WLAN维护;监控系统维护; 3.固资维护管…

如何使用 Docker 安装 Node-RED

安装 Node-RED 使用 Docker 是一种简便的方式,以下是基本的步骤: 安装 Docker: 确保已在系统上安装 Docker。可从 Docker 官方网站 或 Windows Docker 安装教程 获取安装指南。 拉取运行 Node-RED 镜像: 打开终端或命令行界面&am…

【MySQL】基本安装配置

1 基础知识 1.1 MySQL安装 下载地址:https://dev.mysql.com/downloads/mysql/ 1.1.1 安装过程 配置环境变量(和配置Java8的环境变量如出一辙)在MySQL解压文件夹下,导入my.ini文件,与bin目录同级,具体文…

关于inline函数声明和定义为什么不可以分离

个人主页:Lei宝啊 愿所有美好如期而遇 前言 inline函数在使用时声明和定义不可以分离,接下来我们将会解释为什么是这样的。 我们从程序的编译链接说起。 首先我们先介绍一下程序的翻译环境: 编译分以下几个步骤,预处理&#x…

sort by modulus of a complex number

描述 复数E包含实部x和虚部y, Exyi;E的模为: 输入n(<1000)和n对(x,y); 按模数升序对复合体进行排序&#xff0c;如果模数相等&#xff0c;则按输入顺序排序。 排序后输出n行of (x_i,y_i,mod_i)&#xff0c;保留2个十进制小数。 输入 输入n和n对(x,y); 输出 输出排序后的n行(…

Android : AndroidStudio开发工具优化

1.开启 gradle 单独的守护进程 Windows: 进入目录 C:\Users\Administrator\.gradle 创建文件&#xff1a; gradle.properties # Project-wide Gradle settings. # IDE (e.g. Android Studio) users: # Settings specified in this file will override any Gradle s…

在python的Scikit-learn库中,可以使用train_test_split函数来划分训练集和测试集。

文章目录 一、在Scikit-learn库中&#xff0c;可以使用train_test_split函数来划分训练集和测试集总结 一、在Scikit-learn库中&#xff0c;可以使用train_test_split函数来划分训练集和测试集 在Scikit-learn库中&#xff0c;可以使用train_test_split函数来划分训练集和测试…

深度观察|近视防控乱象下,角膜塑形镜撬动百亿市场的背后…

前不久&#xff0c;“晒眼皮”莫名上了热搜。顾名思义&#xff0c;就是在太阳底下闭眼&#xff0c;让眼皮享受日光浴。 不少近视患者相信&#xff0c;这种做法可以延缓近视&#xff0c;甚至可以让近视度数“清零”。毫无疑问&#xff0c;这是一个收割智商税的做法&#xff0c;…

数字双胞胎:低代码与工业4.0的崭新融合

引言 随着工业4.0的快速发展&#xff0c;数字化转型已经成为制造业的关键课题。在这个数字化浪潮中&#xff0c;"数字双胞胎"技术崭露头角&#xff0c;它将实际世界与数字模拟相连接&#xff0c;提供了更好的生产过程理解、监控和优化方法。但数字双胞胎的构建和维护…

CoreDNS实战(七)-日志处理

本文主要用于介绍CoreDNS用来记录日志的几种方式以及在生产环境中遇到的一些问题和解决方案。 1 log插件 coredns的日志输出并不如nginx那么完善&#xff08;并不能在配置文件中指定输出的文件目录&#xff0c;但是可以指定日志的格式&#xff09;&#xff0c;默认情况下不论…

算法笔记:样条插值

1 什么是样条 样条来源于早期工程制图&#xff0c;为了将一些固定点连成一条光滑的曲线&#xff0c;采用具有弹性的木条固定在这些点上通过样条画出来的曲线不仅经过各固定点&#xff0c;而且连续光滑 2 样条函数 数学上定义成一个分段多项式函数 每两个点之间用一个多项式来…

手机大厂必备测试技能有哪些?CTS 兼容测试首当其冲

这么多手机厂商都要改造成自己的UI&#xff0c;甚至要对Android底层进行改动&#xff0c;难免不会改出什么问题。 所以Google为了这些定制的系统能够符合统一的规范、兼容Android底层的API&#xff0c;就引入了CTS测试。 01 何为CTS 相信小伙伴们都有用过各种款式的Android手…