開源BI分析工具Metabase配置與完全使用手冊


 

  1. 簡介

Metabase是一個免費的BI分析工具,可以幫助你把數據庫中的數據更好的呈現給更多人,通過建立一個”查詢“來提煉數據,再以圖形化的方式做展示。上手簡單,操作門檻低,即使不會sql語句也能使用。同時工具輕量、安裝依賴的環境簡單、配置簡單清楚,只需一個jar包和一條命令就能完成安裝

  1. 安裝

Metabase的安裝非常簡單,只需將jar包下載下來后(下載地址),放在有java環境的機子上,通過java -jar命令啟動即可,啟動命令:

java -jar metabase.jar
  1. 1

這里需要注意的是metabase自帶的H2數據庫相對較弱,最好替換成其他數據源,比如MySQL等,這里可以參考我的另一篇文章:《metabase默認應用數據源H2變更為MySQL及歷史數據遷移》

  1. 初始配置

啟動后metabase默認端口為3000,如果要變更端口,可添加環境變量MB_JETTY_PORT來指定端口
,假設metabase為本地啟動,瀏覽器訪問網址:http://localhost:3000/即可進入初始化界面
在這里插入圖片描述
按提示一步步填寫相關信息即可,注意第一個創建的賬戶默認即為管理員賬戶
在這里插入圖片描述
等待初始化之后,進入首頁即可看到配置數據庫下的所有表
在這里插入圖片描述

  1. 數據分析

接下來就可以正式使用了,右上角各功能如下:
在這里插入圖片描述
下面就以具體場景為例,分別解釋各項功能,點擊創建問題 --》簡單查詢,先從簡單的開始,走一遍整體流程
在這里插入圖片描述

  1. 簡單查詢

假設我要對一張名為customer_group_info的客戶群表做多個維度的分析,表結構與測試記錄如下:
在這里插入圖片描述
需求場景如下:

  1. 根據status狀態字段做聚合,查看各個狀態下的客群數
  2. 根據insert_time創建時間字段對客群做趨勢分析
  3. 篩選出cgp_type客群類型為3的客群
  4. 創建場景

場景1:
1) 右上角選聚合,聚合條件為總行數,分組條件為status,聚合結果如下:
在這里插入圖片描述
2) 為了便於觀察,我們以圖表形式顯示,選擇右下角“可視化”,選擇圖表類型
在這里插入圖片描述
3)保存該問題,由於目前還沒新建集合,先默認保存在“分析下”
在這里插入圖片描述
場景2,3類似,就不再贅述
場景2:
在這里插入圖片描述
場景3:
在這里插入圖片描述
以上三個問題創建完畢,目前都保存在“分析”下,為了便於分類管理,下面就新建一個集合,把以上問題歸類

  1. 創建集合和儀表盤

回到首頁,進入“分析”,新建名為“客群分析”的集合,然后把問題移到該集合下
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
目前雖然已經歸類到一個集合下了,但是查看還是很不方便,還是要每個問題分別點進去才能看到,下面就開始建一個儀表盤,把這三個問題整合到同一個儀表盤下,點右上角“+”號,選擇新儀表盤,放到“客群分析”集合下
在這里插入圖片描述
然后在儀表盤中把三個問題添加進去即可
在這里插入圖片描述
在這里插入圖片描述
這樣,后續對這三個場景的數據分析,就可以直接在該儀表盤中查看了

  1. 自定義查詢

自定義查詢相較於簡單查詢,支持更高級的操作,如多表關聯,表與創建的問題之間的關聯等,但整體操作還是跟簡單查詢類似,這里就不再重復了
在這里插入圖片描述

  1. 原生查詢

原生查詢即直接寫sql查詢,但是前提是該用戶必須有sql查詢的權限,權限問題會在后面的權限管理中講到。
sql查詢可直接通過右上角控制台圖標進入,進入后記得要先在左上角選擇數據庫
在這里插入圖片描述
metabase中的sql可以支持變量和根據變量做動態sql拼接,變量形式:{{變量名}},動態sql片段形式:[[and 字段 = {{變量名}}]],具體如何使用,下面舉例說明。

  1. sql變量

還是以customer_group_info這張表為例,假設創建了一個問題,問題中的sql如下:

select * from customer_group_info where cgp_id = '2589bd22-c719-4e01-b9bf-2144beacadca' 
  1. 1

根據cgp_id去查找記錄,但是cgp_id是固定的,如果每次查詢都要修改問題中的sql去改變值的話,那豈不是跟直接寫sql沒差,這時候就可以用變量替換,把cgp_id改成變量,然后直接輸入查詢值,改成如下格式的sql:

select * from customer_group_info where cgp_id = {{input_id}}
  1. 1

問題上方會多出一個文本框,在文本框中輸入cgp_id就可以查詢
在這里插入圖片描述

  1. 動態sql片段

sql變量雖然解決了查詢條件值不固定的問題,但是如果有些查詢條件也是可選的,這該怎么解決呢,如下面的sql:

select cgp_id as 客群編號, user_name as 用戶名, cgp_type as 客群類型 from customer_group_info where user_name = 'apicloud1' and cgp_type = 2 -- 該條件為可選條件 
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9

那就可根據條件來動態拼sql,改成如下形式:

select cgp_id as 客群編號, user_name as 用戶名 [[ ,{{input_type}} as 客群類型]] from customer_group_info where user_name = {{input_user}} [[and cgp_type = {{input_type}}]] 
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8

當不輸入cgp_type時,查詢出所有客群類型
在這里插入圖片描述

當指定cgp_type時,查詢出指定客群類型
在這里插入圖片描述

以上為數據分析人員的數據分析操作,下面來說一下管理員角色的管理功能

  1. 管理員操作

  2. 添加數據庫

  3. 點擊設置,切換為管理員,進入管理員頁面
    在這里插入圖片描述
  4. 選擇 數據庫 --> 添加數據庫
    在這里插入圖片描述
  5. 填寫數據庫信息, 填寫完成后保存即可
    在這里插入圖片描述

后續也可以通過該步驟選擇已有數據庫變更信息

  1. 連接oracle

metabase的默認數據源連接里面是沒有oracle選項的,如果要連接oracle,需要單獨配置
在這里插入圖片描述

首先去oracle官網下載ojdbc驅動:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-UEVQCOHU-1608544558294)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172112671.png)]

放到/metabase/plugins目錄下,重啟metabase即可

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-MhYycIoU-1608544558296)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172036459.png)]

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-02ZduREY-1608544558298)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172311920.png)]

  1. 成員管理

  2. 邀請新成員

可以在 管理員頁面 --》人員 --》 邀請其他人 邀請新用戶,並分配用戶組,邀請初始密碼隨機生成
在這里插入圖片描述
在這里插入圖片描述

  1. 權限配置

權限管理主要分為數據權限和文件夾權限兩類,數據權限只訪問數據庫與表記錄的權限,文件夾權限指訪問集合的權限

  1. 數據權限

數據權限管理頁面如下圖所示,其中縱軸為所有的數據庫,橫軸為所有用戶組
在這里插入圖片描述
權限類型如下:

  1. 允許訪問數據

    1. 沒有權限: 無法訪問整個數據庫
    2. 部分權限:可訪問指定表
    3. 授予不受限制的訪問權限:可訪問整個數據庫
  2. sql查詢

    1. 沒有權限: 無法在終端寫原生sql
    2. 寫原始查詢語句: 可寫sql
  3. 文件夾權限

其管理頁面如下,縱軸為所有集合,橫軸為所有用戶組
在這里插入圖片描述
權限類型如下:

  1. 集合權限
    1. 沒有權限
    2. 查看集合
    3. 修改集合
  2. 郵箱配置

配置郵箱后,metabase可定時將指定的集合的分析結果推送至關注人郵箱,就不用主動登錄metabase去查看

郵箱配置流程如下:
管理員頁面 --》設置 --》 郵箱,填寫郵件服務器信息與發送者郵箱
在這里插入圖片描述
配置好后點擊 ”發送測試郵件“,如果管理員郵箱中能收到如下測試郵件,說明郵箱配置成功
在這里插入圖片描述

  1. 定時任務

郵箱配置完成之后,就可以配置定時任務來定時推送結果,將上面創建的三個問題的結果推送給對應郵箱,步驟如下:

    1. 回到首頁,點擊”+“添加新的定時任務
      在這里插入圖片描述
    2. 選擇集合中的問題
      在這里插入圖片描述
    3. 設置定時任務和接收者郵箱,這里要注意你metabase設定的時區對不對,然后就能定時推送分析報告了
      在這里插入圖片描述
      收到郵件如下:
      在這里插入圖片描述

------------恢復內容開始------------

 

簡介

Metabase是一個免費的BI分析工具,可以幫助你把數據庫中的數據更好的呈現給更多人,通過建立一個”查詢“來提煉數據,再以圖形化的方式做展示。上手簡單,操作門檻低,即使不會sql語句也能使用。同時工具輕量、安裝依賴的環境簡單、配置簡單清楚,只需一個jar包和一條命令就能完成安裝

安裝

Metabase的安裝非常簡單,只需將jar包下載下來后(下載地址),放在有java環境的機子上,通過java -jar命令啟動即可,啟動命令:

java -jar metabase.jar
  • 1

這里需要注意的是metabase自帶的H2數據庫相對較弱,最好替換成其他數據源,比如MySQL等,這里可以參考我的另一篇文章:《metabase默認應用數據源H2變更為MySQL及歷史數據遷移》

初始配置

啟動后metabase默認端口為3000,如果要變更端口,可添加環境變量MB_JETTY_PORT來指定端口
,假設metabase為本地啟動,瀏覽器訪問網址:http://localhost:3000/即可進入初始化界面
在這里插入圖片描述
按提示一步步填寫相關信息即可,注意第一個創建的賬戶默認即為管理員賬戶
在這里插入圖片描述
等待初始化之后,進入首頁即可看到配置數據庫下的所有表
在這里插入圖片描述

數據分析

接下來就可以正式使用了,右上角各功能如下:
在這里插入圖片描述
下面就以具體場景為例,分別解釋各項功能,點擊創建問題 --》簡單查詢,先從簡單的開始,走一遍整體流程
在這里插入圖片描述

簡單查詢

假設我要對一張名為customer_group_info的客戶群表做多個維度的分析,表結構與測試記錄如下:
在這里插入圖片描述
需求場景如下:

  1. 根據status狀態字段做聚合,查看各個狀態下的客群數
  2. 根據insert_time創建時間字段對客群做趨勢分析
  3. 篩選出cgp_type客群類型為3的客群

創建場景

場景1:
1) 右上角選聚合,聚合條件為總行數,分組條件為status,聚合結果如下:
在這里插入圖片描述
2) 為了便於觀察,我們以圖表形式顯示,選擇右下角“可視化”,選擇圖表類型
在這里插入圖片描述
3)保存該問題,由於目前還沒新建集合,先默認保存在“分析下”
在這里插入圖片描述
場景2,3類似,就不再贅述
場景2:
在這里插入圖片描述
場景3:
在這里插入圖片描述
以上三個問題創建完畢,目前都保存在“分析”下,為了便於分類管理,下面就新建一個集合,把以上問題歸類

創建集合和儀表盤

回到首頁,進入“分析”,新建名為“客群分析”的集合,然后把問題移到該集合下
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
目前雖然已經歸類到一個集合下了,但是查看還是很不方便,還是要每個問題分別點進去才能看到,下面就開始建一個儀表盤,把這三個問題整合到同一個儀表盤下,點右上角“+”號,選擇新儀表盤,放到“客群分析”集合下
在這里插入圖片描述
然后在儀表盤中把三個問題添加進去即可
在這里插入圖片描述
在這里插入圖片描述
這樣,后續對這三個場景的數據分析,就可以直接在該儀表盤中查看了

自定義查詢

自定義查詢相較於簡單查詢,支持更高級的操作,如多表關聯,表與創建的問題之間的關聯等,但整體操作還是跟簡單查詢類似,這里就不再重復了
在這里插入圖片描述

原生查詢

原生查詢即直接寫sql查詢,但是前提是該用戶必須有sql查詢的權限,權限問題會在后面的權限管理中講到。
sql查詢可直接通過右上角控制台圖標進入,進入后記得要先在左上角選擇數據庫
在這里插入圖片描述
metabase中的sql可以支持變量和根據變量做動態sql拼接,變量形式:{{變量名}},動態sql片段形式:[[and 字段 = {{變量名}}]],具體如何使用,下面舉例說明。

sql變量

還是以customer_group_info這張表為例,假設創建了一個問題,問題中的sql如下:

select * from customer_group_info where cgp_id = '2589bd22-c719-4e01-b9bf-2144beacadca' 
  • 1

根據cgp_id去查找記錄,但是cgp_id是固定的,如果每次查詢都要修改問題中的sql去改變值的話,那豈不是跟直接寫sql沒差,這時候就可以用變量替換,把cgp_id改成變量,然后直接輸入查詢值,改成如下格式的sql:

select * from customer_group_info where cgp_id = {{input_id}}
  • 1

問題上方會多出一個文本框,在文本框中輸入cgp_id就可以查詢
在這里插入圖片描述

動態sql片段

sql變量雖然解決了查詢條件值不固定的問題,但是如果有些查詢條件也是可選的,這該怎么解決呢,如下面的sql:

select cgp_id as 客群編號, user_name as 用戶名, cgp_type as 客群類型 from customer_group_info where user_name = 'apicloud1' and cgp_type = 2 -- 該條件為可選條件 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

那就可根據條件來動態拼sql,改成如下形式:

select cgp_id as 客群編號, user_name as 用戶名 [[ ,{{input_type}} as 客群類型]] from customer_group_info where user_name = {{input_user}} [[and cgp_type = {{input_type}}]] 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

當不輸入cgp_type時,查詢出所有客群類型
在這里插入圖片描述

當指定cgp_type時,查詢出指定客群類型
在這里插入圖片描述

以上為數據分析人員的數據分析操作,下面來說一下管理員角色的管理功能

管理員操作

添加數據庫

  1. 點擊設置,切換為管理員,進入管理員頁面
    在這里插入圖片描述
  2. 選擇 數據庫 --> 添加數據庫
    在這里插入圖片描述
  3. 填寫數據庫信息, 填寫完成后保存即可
    在這里插入圖片描述

后續也可以通過該步驟選擇已有數據庫變更信息

連接oracle

metabase的默認數據源連接里面是沒有oracle選項的,如果要連接oracle,需要單獨配置
在這里插入圖片描述

首先去oracle官網下載ojdbc驅動:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-UEVQCOHU-1608544558294)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172112671.png)]

放到/metabase/plugins目錄下,重啟metabase即可

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-MhYycIoU-1608544558296)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172036459.png)]

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-02ZduREY-1608544558298)(C:\Users\17391\AppData\Roaming\Typora\typora-user-images\image-20201221172311920.png)]

成員管理

邀請新成員

可以在 管理員頁面 --》人員 --》 邀請其他人 邀請新用戶,並分配用戶組,邀請初始密碼隨機生成
在這里插入圖片描述
在這里插入圖片描述

權限配置

權限管理主要分為數據權限和文件夾權限兩類,數據權限只訪問數據庫與表記錄的權限,文件夾權限指訪問集合的權限

數據權限

數據權限管理頁面如下圖所示,其中縱軸為所有的數據庫,橫軸為所有用戶組
在這里插入圖片描述
權限類型如下:

  • 允許訪問數據

    • 沒有權限: 無法訪問整個數據庫
    • 部分權限:可訪問指定表
    • 授予不受限制的訪問權限:可訪問整個數據庫
  • sql查詢

    • 沒有權限: 無法在終端寫原生sql
    • 寫原始查詢語句: 可寫sql

文件夾權限

其管理頁面如下,縱軸為所有集合,橫軸為所有用戶組
在這里插入圖片描述
權限類型如下:

  • 集合權限
    • 沒有權限
    • 查看集合
    • 修改集合

郵箱配置

配置郵箱后,metabase可定時將指定的集合的分析結果推送至關注人郵箱,就不用主動登錄metabase去查看

郵箱配置流程如下:
管理員頁面 --》設置 --》 郵箱,填寫郵件服務器信息與發送者郵箱
在這里插入圖片描述
配置好后點擊 ”發送測試郵件“,如果管理員郵箱中能收到如下測試郵件,說明郵箱配置成功
在這里插入圖片描述

定時任務

郵箱配置完成之后,就可以配置定時任務來定時推送結果,將上面創建的三個問題的結果推送給對應郵箱,步驟如下:

    1. 回到首頁,點擊”+“添加新的定時任務
      在這里插入圖片描述
    2. 選擇集合中的問題
      在這里插入圖片描述
    3. 設置定時任務和接收者郵箱,這里要注意你metabase設定的時區對不對,然后就能定時推送分析報告了
      在這里插入圖片描述
      收到郵件如下:
      在這里插入圖片描述
作者: 
出處: https://blog.csdn.net/he3more/article/details/111811684


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM