首页 > 其他分享 >supertest搭建

supertest搭建

时间:2022-11-28 23:47:26浏览次数:61  
标签:usr py supertest examples File line superset 搭建

supertest 搭建

介绍

Superset 是一款由 Airbnb 开源的“现代化的企业级 BI(商业智能) Web 应用程序”,其通过创建和分享 dashboard,为数据分析提供了轻量级的数据查询和可视化方案。
  Superset 的前端主要用到了 ReactNVD3/D3,而后端则基于 Python 的 Flask 框架和 PandasSQLAlchemy 等依赖库,主要提供了这几方面的功能:

  • 集成数据查询功能,支持多种数据库,包括 MySQL、PostgresSQL、Oracle、SQL Server、SQLite、SparkSQL 等,并深度支持 Druid
  • 通过 NVD3/D3 预定义了多种可视化图表,满足大部分的数据展示功能。如果还有其他需求,也可以自开发更多的图表类型,或者嵌入其他的 JavaScript 图表库(如 HighCharts、ECharts)。
  • 提供细粒度安全模型,可以在功能层面和数据层面进行访问控制。支持多种鉴权方式(如数据库、OpenID、LDAP、OAuth、REMOTE_USER 等)。

官网

Welcome | Superset (apache.org)

安装部署(docker方式安装)

环境

Linux CentOS Linux release 7.9.2009 (Core)

docker安装

Install Docker Engine on CentOS | Docker Documentation

来镜像并启动

 docker run -d -p 8080:8088 --name superset apache/superset

设置本地账户

docker exec -it superset superset fab create-admin \
              --username admin \
              --firstname Superset \
              --lastname Admin \
              --email [email protected] \
              --password admin

将本地数据库加载到最新版本

docker exec -it superset superset db upgrade

加载示例

此步骤由于网络问题会出错,解决方法看排错部分

 docker exec -it superset superset load_examples

设置角色

docker exec -it superset superset init

登录访问:

http://xxx.xxx.xxx.xxx:8080 账号密码admin/admin

image

问题排查

问题1

加载示例报错

Creating a World's Health Bank dashboard
Loading [Birth names]
Traceback (most recent call last):
  File "/usr/local/bin/superset", line 33, in <module>
    sys.exit(load_entry_point('apache-superset', 'console_scripts', 'superset')())
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 586, in main
    return super(FlaskGroup, self).main(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/click/decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/flask/cli.py", line 426, in decorator
    return __ctx.invoke(f, *args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/app/superset/cli.py", line 193, in load_examples
    load_examples_run(load_test_data, load_big_data, only_metadata, force)
  File "/app/superset/cli.py", line 137, in load_examples_run
    examples.load_birth_names(only_metadata, force)
  File "/app/superset/examples/birth_names.py", line 112, in load_birth_names
    load_data(tbl_name, database, sample=sample)
  File "/app/superset/examples/birth_names.py", line 68, in load_data
    pdf = pd.read_json(get_example_data("birth_names2.json.gz"))
  File "/app/superset/examples/helpers.py", line 72, in get_example_data
    content = request.urlopen(  # pylint: disable=consider-using-with
  File "/usr/local/lib/python3.8/urllib/request.py", line 222, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/local/lib/python3.8/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/local/lib/python3.8/urllib/request.py", line 542, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/usr/local/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/usr/local/lib/python3.8/urllib/request.py", line 1397, in https_open
    return self.do_open(http.client.HTTPSConnection, req,
  File "/usr/local/lib/python3.8/urllib/request.py", line 1358, in do_open
    r = h.getresponse()
  File "/usr/local/lib/python3.8/http/client.py", line 1348, in getresponse
    response.begin()
  File "/usr/local/lib/python3.8/http/client.py", line 316, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.8/http/client.py", line 285, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

解决方法:

网络问题,可下载到本地然后修改相关配置文件进行本地加载

1 下载示例

https://gitcode.net/mirrors/apache-superset/examples-data?utm_source=csdn_github_accelerator
或
https://github.com/apache-superset/examples-data

2 解压数据

unzip examples-data-master.zip

3 使用python起一个http服务

$ cd examples-data-master

$ python3 -m http.server 7887

Serving HTTP on 0.0.0.0 port 7887 (http://0.0.0.0:7887/) ...

4 重启 superset_init 服务,并修改python源码。假设主机iP是192.168.47.202

sed -i 's/BASE_URL = .*"/BASE_URL = "http:\/\/192.168.47.202:7887\/"/g' superset/examples/helpers.py

sed -i 's/https:\/\/github.com\/apache-superset\/examples-data\/raw\/master\//http:\/\/192.168.47.202:7887\//g' superset/examples/configs/datasets/examples/*.yaml

sed -i 's/http:\/\/192.168.3.20:7887\//http:\/\/192.168.47.202:7887\//g' superset/examples/configs/datasets/examples/*.yaml

sed -i 's/https:\/\/raw.githubusercontent.com\/apache-superset\/examples-data\/master\//http:\/\/192.168.47.202:7887\//g' superset/examples/configs/datasets/examples/*.yaml

sed -i 's/https:\/\/raw.githubusercontent.com\/apache-superset\/examples-data\/lowercase_columns_examples\/datasets\/examples\//http:\/\/192.168.47.202:7887\/datasets\/examples/\//g' superset/examples/configs/datasets/examples/*.yaml

exit

5 再次重启superset_init 服务

$ docker restart superset_init 

6 执行等待加载示例结束

 docker exec -it superset superset load_examples

问题2

上传csv文件提示

ERROR: No database is allowed for your csv upload

image

解决方法

数据库没有开放相关权限,开放相关权限即可

点击 【Data】——》【Databases】——》【Edit】

image
ity】
点击 【ADVANCED】——》【Security】
image

勾选【Allow data upload】点击保存
image

参考

apache/superset - Docker Image |码头工人中心

ERROR: No database is allowed for your csv upload · Issue #10304 · apache/superset · GitHub

superset加载示例数据load_examples报错_软件1024的博客-CSDN博客

标签:usr,py,supertest,examples,File,line,superset,搭建
From: https://www.cnblogs.com/xinga/p/16934146.html

相关文章

  • 关于Seata(1.4.2)环境搭建
    转载一:https://blog.csdn.net/xiaoguo1001/article/details/126812465?ops_request_misc=&request_id=&biz_id=102&utm_term=Seata-1.4.2%E7%89%88%E6%9C%AC%E5%AE%89%E8%A......
  • 搭建rac dg备库连接数据库时报错ORA-12514
    文档课题:搭建racdg备库连接数据库时报错ORA-12514,如下所示:[oracle@hisdb3~]$sqlplussys/oracle_4U@healdgassysdbaSQL*Plus:Release11.2.0.4.0ProductiononSunN......
  • Centos7 搭建Jupyter NoteBook教程
    (目录)以下操作基于root用户1.Anaconda31.1下载wgethttps://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh1.2安装bashAnaconda3-5.0.1-Linux-......
  • windows下OpenCV开发环境的搭建(最简单)
    为什么是做简单基于msys2,是用mingw-gcc编译。opencv用包管理器自动下载,无需手动配置。步骤下载安装msys2https://www.msys2.org/从官网下载msys2并安装安装gcc,OpenC......
  • SRS4.0(环境搭建及基础使用演示)
     srs安装​​官网地址​​,下载srs4.0并上传到服务器中1根目录下创建srs文件夹,并将下载的文件上传至该目录下mkdirsrs编辑2.解压文件unzip srs-4.0release编辑3.按照官方......
  • Docker 搭建Redis集群(哨兵模式)
    一、简介Redis集群的哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而......
  • 想体验ES6语法?那用gulp+Babel来搭建ES6环境吧~
    参考:​​ES6初体验——gulp+Babel搭建ES6环境​​​​gulp-load-plugins模块化管理插件​​那至于怎么使用gulp构建工具这一问题这里就略过咯(可以参考我之前发过的......
  • 【2022-11-28】Docker部署搭建Yapi
    一、环境准备1.准备一台虚拟机\或者购买服务器2.虚拟机硬件要求2.1内存2-4G2.2CPU2核2G2.3硬盘至少20G3.系统镜像 centos7.9二、安装docker#......
  • Pycharm 搭建 Django 项目
    1.安装需求在使用python框架Django需要注意下面事项Pycharm版本是专业版而不是社区版本Pycharm配置好了python解释器(一般我们现在用的都是python3)我自己使......
  • 【2022-11-28】Docker部署搭建Gitlab
    一、环境准备1.准备一台虚拟机\或者购买服务器2.虚拟机硬件要求2.1内存不得少于4G,否则启动会报502错误,可自行百度解决,将虚拟机的swap分区调整为2G大小即可2......