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 ...
随机推荐
- Kafka 消息送达语义
更多内容,前往IT-BLOG 消息送达语义是消息系统中一个常见的问题,主要包含三种语义:[1]At most once:消息发送或消费至多一次:[2]At least once:消息发送或消费至少一次 ...
- 1.HVV介绍
HVV介绍 1.护网职责划分 红队:打点人员.攻击人员.社工人员 蓝队:监控人员.研判人员.溯源人员 2.护网需要具备的技能 红队: 外围打点能力.漏洞挖掘能力.漏洞分析能力.权限提升能力.权限维持能 ...
- Javascript 加密解密方法
本文链接 https://www.cnblogs.com/zichliang/p/17265960.html Javascript 和 我之前发的 python加密 以及 go加密 解密不一样 不需要 ...
- Hive 和 Spark 分区策略剖析
作者:vivo 互联网搜索团队- Deng Jie 随着技术的不断的发展,大数据领域对于海量数据的存储和处理的技术框架越来越多.在离线数据处理生态系统最具代表性的分布式处理引擎当属Hive和Spark ...
- JsonCpp JSON格式处理库的介绍和使用(面向业务编程-文件格式处理)
JsonCpp JSON格式处理库的介绍和使用(面向业务编程-文件格式处理) 介绍 JSON是一种轻量级的数据交换格式,它是一种键值对的集合.它的值可以是数字.字符串.布尔值.序列. 想知道更多有关J ...
- IBM Cloud Computing Practitioners 2019 (IBM云计算从业者2019)Exam答案
Cloud Computing Practitioners 2019 IBM Cloud Computing Practitioners 2019 (IBM云计算从业者2019)Exam答案,加粗的为 ...
- Algorithm参数记录
一.vector<Point2f> vector是一个存储二维点坐标的容器,其中每个元素都是一个Point2f类型的对象.在OpenCV中,Point2f表示一个由两个单精度浮点数构成的二 ...
- [Linux]Linux大文件已删除,但df查看已使用的空间并未减少解决【待续】
1 问题描述 X 参考文献 Linux大文件已删除,但df查看已使用的空间并未减少解决 - ChinaUnix linux磁盘空间未及时释放 - 博客园 linux磁盘目录占用空间分析工具之ncdu ...
- [J2EE]SSM整合/Spring 与 MyBatis的整合【待续】
参考文献 spring与mybatis五种整合方法 - 博客园/推荐
- Redis key命名规范
Redis key命名规范 一.实现目标 简洁,高效,可维护 二.键值设计规约 1 Redis key 命名风格 [推荐]Redis key 命名需具有可读性以及可管理性,不该使用含义不清的 key ...