BI工具调研

1、前言

目前公司使用Tableau作为BI工具,但是感觉不是很好用,且国内市场已经不维护了,所以打算换下BI工具,因此需要针对当前市场开源和商业的BI工具进行调研,看看是买商业的还是用开源的。
基于以下部分开源的做了一个表格对照。
在这里插入图片描述

2、各个开源BI工具网站

https://superset.apache.org/docs/databases/installing-database-drivers/
https://dataease.io/
https://www.metabase.com/
https://redash.io/
https://www.jaspersoft.com/why-jaspersoft

3、dataease是国内开源工具,文档比较简单易懂,这里就不介绍了

4、Superset 基本介绍

1.1 简介

Apache Superset(孵化)是一个现代化的企业级商业智能Web应用程序。

1.2 特点

1)快速创建可交互的、直观形象的数据集合
2)有丰富的可视化方法来分析数据,且具有灵活的扩展能力
3)具有可扩展的、高粒度的安全模型,可以用复杂规则来控制访问权限。目前支持主要的认证提供商:DB、OpenID、LDAP、OAuth、和Flask AppBuiler的REMOTE_USER
4)使用简单的语法,就可以控制数据在UI中的展现方式
5)通过SQLAlchemy与大多数讲SQL的RDBMS集成
6)与Druid深度结合,可快速的分析大数据
7)配置缓存来快速加载仪表盘

1.3 数据库依赖

除了Sqlite (它是Python标准库的一部分)之外,Superset不捆绑连接到数据库。其他均需要为要用作元数据数据库的数据库安装所需的包,以及连接到要通过Superset访问的数据库所需的包。
下面是一些连接方式(本文只列举几种常用类型):

在这里插入图片描述

更多数据库连接方式请访问:
http://superset.incubator.apache.org/installation.html#getting-started

2.1安装地址

Superset同时支持Python2和Python3, 这里以Python3作为演示。它支持pip形式的下载,不过我不建议直接安装,因为Superset的依赖包较多,如果直接安装,很容易和现有的模块产生冲突。
这里需要先搭建Python的虚拟环境。虚拟环境可以帮助我们在单机上建立多个版本的Python。简而言之,即可以Python2和Python3共存,也能Python3.3、3.4、3.5共济一堂,彼此间互相独立。这里以Anaconda自带的conda工具为例,采取在线安装的方式,耗时较长,请耐心等待。

1.Superset官网地址
http://superset.incubator.apache.org
2.Anaconda 官网地址
https://www.anaconda.com/distribution/

2.2 Superset环境准备及安装

1.添加系统依赖
[ybb@hadoop104 ~]$ sudo yum upgrade python-setuptools
[ybb@hadoop104 ~]$ sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel
2.安装Anaconda
(1)把Anaconda3-2019.03-Linux-x86_64.sh上传到linux的/opt/software目录下
(2)运行Anaconda3-2019.03-Linux-x86_64.sh文件进行程序安装
[ybb@hadoop104 software]$ bash Anaconda3-2019.03-Linux-x86_64.sh

Welcome to Anaconda3 2019.03

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue		#点击“Enter”查看“许可证协议”
>>> 
===================================
Anaconda End User License Agreement
===================================
....
Notice of Third Party Software Licenses
=======================================
....
Cryptography Notice
===================
....
Do you accept the license terms? [yes|no]
[no] >>> 
Please answer 'yes' or 'no':'		#是否接受license协议,输入yes
>>> yes

Anaconda3 will now be installed into this location:
/home/ybb/anaconda3

  - Press ENTER to confirm the location		#按回车键确认安装路径
  - Press CTRL-C to abort the installation	#按'CTRL-C'取消安装或者指定安装目录
  - Or specify a different location below	

[/home/ybb/anaconda3] >>>/opt/module/anaconda3	
#此处可以输入安装路径/opt/module/anaconda3,输入之后按回车,注意此目录必须不存在
PREFIX=/opt/module/anaconda3
installing: python-3.7.3-h0371630_0 ...
Python 3.7.3
installing: conda-env-2.6.0-1 ...
installing: blas-1.0-mkl ...
........
installing: seaborn-0.9.0-py37_0 ...
installing: anaconda-2019.03-py37_0 ...
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no] #初始化程序安装路径环境变量,自动在.bashrc中添加
[no] >>> no #这里我们输入no,如果输入yes,开机就会自动进入base环境,于我们无意。
WARNING: The conda.compat module is deprecated and will be removed in a future release.
no change     /opt/module/anaconda3/condabin/conda
no change     /opt/module/anaconda3/bin/conda
no change     /opt/module/anaconda3/bin/conda-env
no change     /opt/module/anaconda3/bin/activate
no change     /opt/module/anaconda3/bin/deactivate
no change     /opt/module/anaconda3/etc/profile.d/conda.sh
no change     /opt/module/anaconda3/etc/fish/conf.d/conda.fish
no change     /opt/module/anaconda3/shell/condabin/Conda.psm1
no change     /opt/module/anaconda3/shell/condabin/conda-hook.ps1
no change     /opt/module/anaconda3/lib/python3.7/site-packages/xonsh/conda.xsh
no change     /opt/module/anaconda3/etc/profile.d/conda.csh
modified      /home/ybb/.bashrc

==> For changes to take effect, close and re-open your current shell. <==

If you'd prefer that conda's base environment not be activated on startup, 
   set the auto_activate_base parameter to false: 

conda config --set auto_activate_base false

Thank you for installing Anaconda3!

===========================================================================

Anaconda and JetBrains are working together to bring you Anaconda-powered
environments tightly integrated in the PyCharm IDE.

PyCharm for Anaconda is available at:
https://www.anaconda.com/pycharm

(3)为Anaconda配置环境变量
[ybb@hadoop104 anaconda3]$ sudo vim /etc/profile
export CONDA_HOME=/opt/module/anaconda3
export PATH= P A T H : PATH: PATH:CONDA_HOME/bin
[ybb@hadoop104 anaconda3]$ source /etc/profile
[ybb@hadoop104 anaconda3]$ conda list #对Anaconda进行验证,出现下列情况即成功

在这里插入图片描述
(4)修改Anaconda 的镜像文件
在安装Anaconda用户的家目录下(/home/ybb/)创建 ‘.condarc’文件,并添加如下内容:
[ybb@hadoop104 ~]$ vim .condarc
channels:

  • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  • https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    show_channel_urls: true

2.安装Superset
(1)为了避免依赖冲突,创建superset的虚拟环境。
[ybb@hadoop104 ~]$ conda create -n superset python=3
(2)进入/退出superset环境
[ybb@hadoop104 anaconda3]$ conda activate superset #进入
(superset) [ybb@hadoop104 anaconda3]$
(superset) [ybb@hadoop104 anaconda3]$ conda deactivate #退出
[ybb@hadoop104 anaconda3]$
(3)安装 pip 和setuptools最新版,命令如下(包较大,执行时间有点长,出现Read time out,请重新执行一遍当前命令,支持断点续传):
(superset) [ybb@hadoop104 anaconda3]$ pip install --upgrade setuptools pip
(superset) [ybb@hadoop104 anaconda3]$ pip install superset
自动退出及安装完成

(4)创建一个admin用户:
(superset) [ybb@hadoop104 anaconda3]$ fabmanager create-admin --app superset
(5)初始化数据库
(superset) [ybb@hadoop104 anaconda3]$ superset db upgrade
错误提示:
"Can’t determine which FROM clause to join "
sqlalchemy.exc.InvalidRequestError: Can’t determine which FROM clause to join from, there are multiple FROMS which can join to this entity. Try adding an explicit ON clause to help resolve the ambiguity.
解决方案:
(superset) [ybb@hadoop104 anaconda3]$ pip install sqlalchemy==1.2.18
(6)加载一些样例,并进行初始化
(superset) [ybb@hadoop104 anaconda3]$ superset load_examples
(superset) [ybb@hadoop104 anaconda3]$ superset init
(7)web页面进行汉化(可自主选择):
(superset) [ybb@hadoop104 anaconda3]$ vim /opt/module/anaconda3/envs/superset/lib/python3.6/site-packages/superset/config.py
找到BABEL_DEFAULT_LOCALE=’en’改为BABEL_DEFAULT_LOCALE = ‘zh’

在这里插入图片描述
(superset) [ybb@hadoop104 anaconda3]$ cd /opt/module/anaconda3/envs/superset/lib/python3.6/site-packages/superset/
(superset) [ybb@hadoop104 superset]$ mkdir -p translations/zh/LC_MESSAGES
(superset) [ybb@hadoop104 superset]$ wget ‘https://github.com/apache/incubator-superset/blob/master/superset/translations/zh/LC_MESSAGES/messages.mo’

(8)安装mysql连接支持
(superset) [ybb@hadoop104 anaconda3]$ sudo yum install mysql-devel
(superset) [ybb@hadoop104 anaconda3]$ pip install mysqlclient

(9)启用web页面

(superset) [ybb@hadoop104 ~]$ superset runserver ([-p port]可指定其他端口,默认8088)
2019-06-21 20:18:36,438:INFO:root:The Gunicorn 'superset runserver' command is deprecated. Please use the 'gunicorn' command instead.
Starting server with command: 
gunicorn -w 2 --timeout 60 -b  0.0.0.0:8088 --limit-request-line 0 --limit-request-field_size 0 superset:app

[2019-06-21 20:18:36 +0800] [2985] [INFO] Starting gunicorn 19.9.0
[2019-06-21 20:18:36 +0800] [2985] [INFO] Listening at: http://0.0.0.0:8088 (2985)
[2019-06-21 20:18:36 +0800] [2985] [INFO] Using worker: sync
[2019-06-21 20:18:36 +0800] [2988] [INFO] Booting worker with pid: 2988
[2019-06-21 20:18:36 +0800] [2989] [INFO] Booting worker with pid: 2989

浏览器访问:http://hadoop104:8088
登陆账户和密码均为第四步执行创建的。

3.1 创建Mysql数据库连接

1)登陆之后点击数据源(Source) ->数据库(Databases)

在这里插入图片描述
2)点击右上角加号(+)添加数据源
在这里插入图片描述
3)添加Mysql数据
1.SQL Alchemy URI编写规范:mysql://账号:密码@IP/数据库名称
2.点击测试连接,出现“Seems OK!”表示连接成功,下方展示出所有表名称。
3.勾选“在SQL工具箱中公开”,可以使用SQL语句查询。
4.其他根据需求进行勾选,无过多要求,随后点击最下方“保存(save)”。

在这里插入图片描述
在这里插入图片描述
4)添加成功

3.2 添加Mysql数据库的表格

1)添加数据表
在这里插入图片描述

2)点击加号(+),添加表格,并保存
gmall数据库表格名称:base_category1 | base_category2 |base_category3 |order_detail |order_info |payment_info |sku_info |user_info
在这里插入图片描述
3)添加完成,可点击“过滤条件”选择不同维度对展示列表进行过滤。
在这里插入图片描述

3.3 表的查看与编辑

1)点击编辑

在这里插入图片描述
2)列表展示
1.在“详细”页中可通过sql语法对数据进行提前过滤操作,后续的操作基于本次查询的基础上进行实现。
2.可对表结构、数据类型、是否可进行group、filter、count、sum、min、max操作等进行编辑。
3.可通过sql语法添加一些新的列和列指标。
在这里插入图片描述

  • 31
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
时空云平台的BI工具是一种数据分析和可视化工具,用于帮助企业和组织从大量的数据中提取有用的信息和见解。它提供了一套功能强大的工具和功能,用于收集、整理、处理和展示数据,以帮助用户更好地理解和利用数据。 BI工具通常具有以下功能和特点: 1. 数据连接和整合:BI工具可以从不同的数据源中提取数据,并将其整合到一个中心化的平台中进行分析。这些数据源可以包括数据库、文件、API等。 2. 数据分析和处理:BI工具提供了各种分析和处理功能,如数据清洗、转换、计算指标、创建模型等。用户可以利用这些功能对数据进行加工和处理,以得出有用的结论和见解。 3. 可视化和报表:BI工具可以将数据以各种图表和报表的形式进行可视化展示,使用户能够更直观地理解数据。用户可以根据自己的需求创建各种图表和报表,并进行定制和调整。 4. 自助式查询:BI工具通常支持自助式查询,用户可以通过简单的界面和操作来查询和探索数据,而无需编写复杂的SQL语句或代码。 5. 实时监控和预测:一些高级的BI工具还提供实时监控和预测功能,可以对数据进行实时监测,并基于历史数据进行趋势分析和预测。 时空云平台的BI工具可以帮助企业和组织更好地了解他们的业务和运营情况,发现潜在的问题和机会,并支持更明智的决策和战略规划。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有语忆语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值