数据分析-开源可视化项目metabase

metabase简介

metabase是一款开源的BI工具
可以通过下拉选择【不用写SQL】的方式实现要展示的数据及展示形式【图表】
可以方便的实现Dashboard
官方网站 http://www.metabase.com/
Github https://github.com/metabase/metabase
文档 http://www.metabase.com/docs/latest/
对于复杂业务的展示,需要进行数据的ETL,生成OLAP(分析型系统)的数据结构

image

支持的数据库

Postgres
MySQL
Druid
SQL Server
Redshift
MongoDB
Google BigQuery
SQLite
H2
CrateDB
Oracle
Vertica
Presto

安装

Docker

1
$ docker run -d -p 3000:3000 --name metabase metabase/metabase

jvm
下载可执行jar包http://www.metabase.com/start/

1
$ java -jar metabase.jar

metabase开发环境搭建

metabase是使用clojure和node开发的
clojure https://clojure.org/

Oracle JDK 8 (http://www.oracle.com/technetwork/java/javase/downloads/index.html)
Node.js (http://nodejs.org/)
Yarn package manager for Node.js
Leiningen (http://leiningen.org/)

环境和IDE

java version “1.8.0_40”
node v7.9.0
yarn 0.27.5
Leiningen 2.7.1 on Java 1.8.0_40 Java HotSpot(TM) 64-Bit Server VM
idea checkout 或者 git clone https://github.com/metabase/metabase.git

编译生成jar包
1
$ ./bin/build
代码结构

后端使用Clojure编写,包括REST API和处理数据库查询相关代码
前端页面使用JavaScript编写,提供单页面视图应用
后端和前端代码通过编译合并到一个jar文件中

编译前端和启动项目

前端三种方式

对代码改动无响应

1
$ yarn run build

代码有变化时,自动重新加载

1
$ yarn run build-hot

webpack重启时才会加载CSS的变化

1
2
$ yarn run build-watch
Warning: in webpack watch mode you must restart webpack if you change any CSS variables or custom media queries

后端即项目

1
$ lein ring server

image

演示基本操作和界面

邵志鹏 wechat
扫一扫上面的二维码关注我的公众号
0%