Metabase可视化BI系统部署安装及简单使用
Metabase 是国外开源的一个可视化系统,语言使用了Clojure + TypeScript。
Clojure(/ˈkloʊʒər/)是Lisp程式語言在Java平台上的現代、動態及函數式方言。来自维基百科。
我也是第一次看到这个语言,知道它是可以运行在Java环境上的语言就可以了
官方介绍该系统为“为公司中的每个人提供商业智能和分析的最简单、最快的方法”。
ChatGPT 是这样介绍它的
Metabase是一种开源的数据分析和可视化工具,它可以让非技术人员通过简单的查询和可视化操作来探索和理解数据。Metabase支持多种数据源,例如MySQL、PostgreSQL、MongoDB、Amazon Redshift、Google BigQuery等,可以通过简单的设置和配置来连接这些数据源。
使用Metabase,用户可以轻松创建各种类型的数据可视化图表和报表,例如柱状图、折线图、饼图、地图等等。此外,Metabase还具有一些高级功能,例如数据过滤、数据分组、数据透视表等,这些功能可以帮助用户更深入地了解数据。
安装
其安装的主要有两种方式docker和jar包安装。我这里介绍一下jar包安装吧,这样不用安装docker,适合更多不同机器(包含在虚拟机、docker容器内)安装部署。
默认安装使用的是H2数据库,为了尽可以贴合生产环境安装,需要替换掉默认的数据库,可以通过部署的时候设置变量来指定连接数据库。其支持PostgreSQL( 最低版本为: 9.4)、MySQL (最低版本为:5.7.7,需要设置 utf8mb4_unicode_ci collation, utf8mb4 character set, and innodb_large_prefix=ON.)、MariaDB.(最低版本为:10.2.2. 需要设置 utf8mb4_unicode_ci collation, utf8mb4 character set, and innodb_large_prefix=ON)。参考自metabase V0.46 版本安装说明。
以下为一个部署示例,指定启动端口为9092,存储的数据库类型为MySQL和指定存储的MySQL链接(对应的MySQL数据库metabase_db需要先创建好,并且用户需要有创建表权限,默认启动的时候会链接数据库进行创建表)
echo "创建目录并进行目标安装目录"
mkdir -vp /data/server/metabase
cd /data/server/metabase
echo "这里下载可能会有点慢"
wget https://downloads.metabase.com/v0.46.3/metabase.jar
echo "开始启动,下面需要替换为自己的mysql链接"
java -DMB_JETTY_PORT=9092 -DMB_DB_TYPE=mysql -DMB_DB_CONNECTION_URI="jdbc:mysql://<host>:3306/metabase_db?user=<username>&password=<password>" -jar metabase.jar
上面命令启动时前台启动的,退出或关闭当前控制台后进程就退出。
当前台启动查看日志没报错之后,可以使用下面的后台启动命令来启动,这样就可以保持程序一直在后台运行。
nohup java -DMB_JETTY_PORT=9092 -DMB_DB_TYPE=mysql -DMB_DB_CONNECTION_URI="jdbc:mysql://<host>:3306/metabase_db?user=<username>&password=<password>" -jar metabase.jar &
当出现下面的INFO 日志的时候基本就表示启动没问题了的
这个时候可以访问 http://127.0.0.1:9092 (其中的Ip可以换成自己的服务器外网的ip,如果有防火墙之类的需要关闭9092端口的屏蔽)
就会默认跳转到初始化设置页面了,主要设置一些自己的管理员账号和密码,还有设置要链接分析的数据库。
设置完成界面如下:
接着就可以正式进行metabase 系统使用了。进入首页后,会看到metabase系统推荐关于你数据库的一些表的分析,可以简单展示你要分析的数据表信息。
简单使用
首先是创建数据库,管理员可以看到这个数据库创建功能,可以选择添加数据库来创建对应数据库,其他组角色的数据库权限默认开源版本没有也不能设置的。
创建完数据库后,可以进入“浏览数据”来查看表的数据,并对表的数据进行可视化设置,然后保存为图来展示
除了上面的通过浏览数据的可视化操作来创建可视化图表,也可以通过创建“模型”来实现灵活写sql获取数据跟根据其sql数据创建图表
在看到数据展示的页面,可以根据数据来进行可视化编辑创建图表,主要设置要展示图类型(饼图、线图、柱形等),然后再设置x轴和y轴的字段的就可以看到图表会被正确显示出来了。
最后将创建好的图表保存到仪表板里面就可以了
其实官网有个讲解视频,讲得也很不错,看完之后还是比较容易上手的(不过是英语的,主要仔细看看他的操作)。 https://www.metabase.com/demo
总结
metabase 搭建还是比较简单的,有提供了一个启动jar包提供启动安装,不需要像Superset 等需要安装python、npm 等环境或者安装docker 来安装。启动的时候还提供灵活的环境变量来设置的端口、链接的数据库等启动配置信息。
另外有个部署的亮点是它默认支持PostgreSQL和MySQL这两种比较流行的数据库作为应用存储,不需要再修改源码或者增加jar包才可以支持。一开始的我以为它是只支持PostgreSQL数据库的,想着我对PostgreSQL不太熟悉,还考虑过怎么安装PostgreSQL,后来细看了一下它官方安装文档,才知道MySQL也是支持的,节省了我安装部署的一大部分工作量。不过它后端实现使用 Clojure 语言,这个没什么听过,如果要二开也是算一个比较大的工作量,如果是 Java 的话,估计现在有一大批有关它的二开系统了。
我这边搭建了一个公开的metabase系统的demo,地址为:http://metabase.kanlon.ink/ 账号和密码可以关注 CrudBoys 公众 回复“可视化”获取
参考
- metadata 安装可以设置变量: https://www.metabase.com/docs/v0.46/configuring-metabase/environment-variables
- github地址: https://github.com/metabase/metabase
- 官网及介绍视频:https://www.metabase.com/demo
- 其他参考资料:https://metabasecn.net/ 中文介绍
Metabase可视化BI系统部署安装及简单使用的更多相关文章
- Davinci 可视化系统部署安装及简单使用
Davinci 是一个目前比较热门的国内开源BI系统,功能比较完善,各种可视化效果也挺不错.主要获取数据的方式是通过编写SQL 创建数据视图来展示各种图表的. Davinci面向业务人员/数据工程师/ ...
- 最火的分布式调度系统 XXL-JOB 安装和简单使用
唉,在谈文章之前先说一下自己的情况.原计划是在上周六写完这篇文章的,然而周六的时候打开电脑的,按照平常"惯例",先补一些 "黑色五叶草"/"进巨&qu ...
- linux系统部署安装过程
1. 虚拟环境安装 1.新建虚拟机 2.虚拟机设置 2.系统历程 1.进入系统引导界面进行配置 引导项说明: 1.安装centos 系统 ...
- walle(瓦力)部署系统的安装和简单使用
Walle(瓦力):一套软件开发的部署系统.提供了清晰的日志记录,支持数据的回滚.用于解决大型团队在软件开发中的测试.预测试和上线的统一部署管理. 系统环境:CentOS6.8-A CentOS-6. ...
- 可视化数据matplotlib之安装与简单折线图
matplotlib是一个可视化数据的模块,安装前需要先安装Visual Studio Community:然后去https://pypi.python.org/pypi上查找matplotlib并下 ...
- Redhat系统部署安装Splunk
一.下载安装包 可以从国内网站进入:http://10data.com/splunk/ 下载前需要注册一个splunk账号,注册后便可以提供下载,安装包名称:splunklight-6.5.1-f74 ...
- VMware下CenOS7系统的安装及lnmp服务器的搭建
CentOS7系统的安装 CentOS7下载:http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso 下 ...
- BI系统打包Docker镜像及容器化部署的具体实现
在过去的几年中,"云"作为明星热词站在了各种新潮技术之中,你可能使用过,但说不清它的原理:或者是没用过,但听过它的大名:也可能连它的名字都没听过,但你对这只蓝色鲸鱼一定十分眼熟.作 ...
- BI系统打包Docker镜像及部署的技术难度和实现
BI系统打包Docker镜像及部署的技术难度和实现 随着容器化技术盛行,Docker在前端领域也有着越来越广泛的应用:传统的前端部署方式需要我们将项目打包生成一系列的静态文件,然后上传到服务器,配置n ...
- MongoDB在Windows下安装、Shell客户端的使用、Bson扩充的数据类型、MongoVUE可视化工具安装和简单使用、Robomongo可视化工具(2)
一.Windows 下载安装 1.去http://www.mongodb.org/downloads下载,mongodb默认安装在C:\Program Files\MongoDB目录下,到F:\Off ...
随机推荐
- Monkey二次开发 -- Monkey jar包构建
前面已经下载好了Android源码,可以在对应目录下构建二次开发后的monkey jar包了: 当前环境:Ubuntu16.04,Andorid10源码. 1.初始化环境 cd进入andr ...
- MATLAB信号处理常用函数(转载)
https://shimo.im/docs/YyRXY8cQdqY8RJvc/ <MATLAB信号处理工具箱>,可复制链接后用石墨文档 App 或小程序打开 嗯这个肯定是随便看看,有个印象 ...
- 记一次 .NET 某手术室行为信息系统 内存泄露分析
一:背景 1. 讲故事 昨天有位朋友找到我,说他的程序内存存在泄露导致系统特别卡,大地址也开了,让我帮忙看一下怎么回事?今天上午看了下dump,感觉挺有意思,在我的分析之旅中此类问题也蛮少见,算是完善 ...
- 【踩坑系列】发送微信模板消息返回40165 invalid weapp pagepath
1. 踩坑经历 最近做了个需求,需要往公司微信公众号推送一个模板消息,并且点击该消息需要跳转到公司小程序的某个页面. 1.1 拿到模板id 既然是发送模板消息,第一步就需要登录微信公众号后台新建模板消 ...
- golang pprof 监控系列(4) —— goroutine thread 统计原理
golang pprof 监控系列(4) -- goroutine thread 统计原理 大家好,我是蓝胖子. 在之前 golang pprof监控 系列文章里我分别介绍了go trace以及go ...
- 逍遥自在学C语言 | 逻辑运算符
前言 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.构成和表示方式 逻辑运算符是用来比较和操作布尔值的运算符 ...
- 在Kubernetes(k8s)中部署 jenkins
在Kubernetes(k8s)中部署 jenkins YAML配置文件 由于jenkins需要持久化存储,通过nfs动态供给pvc存储卷. 可以参考我之前的文档:https://cloud.tenc ...
- kubernetes(k8s) 存储动态挂载
使用 nfs 文件系统 实现kubernetes存储动态挂载 1. 安装服务端和客户端 root@hello:~# apt install nfs-kernel-server nfs-common 其 ...
- [Java EE]缓存技术初探
1 背景 使用场景:计算或检索一个值的代价很高,并且对同样的输入需要不止一次获取值的时候,就应当考虑使用缓存. 高并发下,为提高 频繁 查询 大量 可能常用的 数据库数据的 查询效率. 大部分情况下, ...
- VMware另一个程序锁定文件的一部分,进程无法访问
问题描述:搭建RAC11g,在做共享磁盘的时候,节点2要共享节点1的磁盘,但是有一个问题,节点2关机之后,再打开,是有一个访问节点1的磁盘的过程,如果访问失败,就会开不了机器 rac1加的三个磁盘: ...