首页 > 其他分享 >metabase技术调研

metabase技术调研

时间:2024-05-10 13:56:29浏览次数:39  
标签:metabase Metabase Admin 平台 AWS 技术 Docker 集成 调研

1. 背景与需求

为了让运营团队更直观地获取相关数据,我们计划部署一个BI平台,并尽可能地将其集成在Admin运营平台中。这样,运营团队不仅能查看数据,还能通过图形化界面进行更深入的分析。


2. BI 平台介绍 - Metabase

2.1 选型原因

Metabase以其用户友好性、多样化的数据可视化工具和丰富的社区资源而受到青睐。此外,该平台提供不同版本以适应各种组织需求,包括具有高级功能和扩展性的商业版本,为未来可能的需求提供了灵活性。

2.2 功能介绍

  • 数据可视化:提供直观和高度可定制的图表和仪表板,以更有效地分析和解释数据。

  • 自定义报表:允许用户根据特定需求创建个性化的报表,支持多维度分析。

  • 查询灵活性:无论是SQL专家还是数据库新手,Metabase都提供了强大的SQL和非SQL查询选项。

  • 多语言支持:内建多语言功能,方便全球团队的统一使用。

  • 数据库兼容性:支持多种流行的数据库类型,无缝集成现有数据源。

  • 嵌入功能:可轻松嵌入到其他业务平台或应用中,以便进行统一的数据分析和展示。

  • 通知集成:支持与Slack和电子邮件进行集成,可自动发送关键数据和报表。

2.3 版本介绍

  • Open Source

  • Starter

  • Pro

  • Enterprise

具体详见: Metabase Pricing


3. 集成方案与分析

3.1 嵌入式集成到运营Admin平台

在这种方式下,每个Metabase生成的BI报表都会嵌入到运营Admin平台的特定功能区域中。

优点

  • 无缝集成:用户可以在运营平台内直接查看各类数据报表,无需跳转。

缺点

  • 限制交互:免费版本的嵌入报表不支持交互功能。

  • 开发复杂度:需要进行功能/UI设计,确定报表在Admin平台的布局和交互体验。

  • 前后端开发需求:尽管使用iframe简化了集成,但依然需要前后端的适配和开发。

效果如图(简单页面,无交互):

 

截屏2023-09-12 17.56.35.png

3.2 跳转到Metabase平台

用户点击Admin平台中的链接,跳转到部署好的Metabase平台进行数据查看和分析。

优点

  • 功能丰富:用户可使用Metabase平台上更丰富的交互功能。

  • 简化集成:无需在Admin平台进行额外的功能/UI设计和开发。

缺点

  • 多重登录:用户需要在Metabase平台进行额外登录,可能影响使用体验。

效果如图(独立平台,可交互):

 

截屏2023-09-12 17.58.44.png

 


4. 下一步行动计划

4.1 AWS 服务配置

  • 准备部署Metabase的相关AWS服务环境,确保所有必要的资源和设置都已就绪。

4.2 Metabase 部署与账号设置

  • 在AWS服务上部署Metabase应用,并配置相应的权限和账户信息。

4.3 报表开发

  • 根据运营需求,在Metabase平台上进行报表的设计和开发。

4.4 集成方案实施(如选择第一种集成方式)

4.4.1 Admin运营平台的交互与UI设计
  • 规划和设计Metabase报表在Admin运营平台中的布局以及交互体验。

4.4.2 前后端集成开发
  • 针对选定的集成方案,在前后端进行相应的开发工作,包括但不限于iframe嵌入、API接口对接和页面适配。


5. AWS部署方式

按照Metabase官方文档:Installation and operation overview

Metabase提供Jar包、Docker、以及官方云服务的部署方式。但根据我们的需求,只有前两种适合,所以结合AWS的服务,提供以下可能性组合:

5.1 使用Jar包和Amazon EC2

优点:

  • 简单:不需要了解Docker或Kubernetes。

  • 可控:直接在虚拟机上运行,便于手动管理和调试。

缺点:

  • 缺乏自动扩展:如果需要更多资源,你需要手动进行扩展。

  • 需要手动管理:包括安全更新、补丁、和监控。

5.2 使用Docker和Amazon EC2

优点:

  • 稍微标准化:使用Docker容器进行部署。

  • 灵活:容易迁移到其他支持Docker的平台。

缺点:

  • 需要一些Docker经验。

  • 同样缺乏自动扩展。

5.3 使用Docker和Amazon ECS

优点:

  • 容器管理:更易于管理多个容器实例。

  • 部分自动化:AWS ECS有一些自动化功能,如自动扩展。

缺点:

  • 更复杂:需要了解ECS的工作方式。

  • 有一些额外的成本。

5.4 使用Docker和Amazon EKS (Kubernetes)

优点:

  • 强大的自动化:自动扩展、自我修复等。

  • 高度可配置和可扩展。

缺点:

  • 高复杂性:需要了解Kubernetes。

  • 成本高:Kubernetes集群通常比其他选项更昂贵。

5.5 使用AWS Elastic Beanstalk和Jar包

优点:

  • 简单和自动化:提供了很多自动化功能,如扩展和更新。

  • 集成:与其他AWS服务(如RDS、ElastiCache等)很好地集成。

缺点:

  • 限制:某些高级配置可能不太容易实现。

  • 可能有额外成本:虽然Elastic Beanstalk本身是免费的,但它会自动创建一些可能产生费用的AWS资源。

  • github地址 https://github.com/metabase/metabase

标签:metabase,Metabase,Admin,平台,AWS,技术,Docker,集成,调研
From: https://www.cnblogs.com/kylin5201314/p/18184140

相关文章

  • 6.农村电气技术专业人才培养方案
    农村电气技术专业人才培养方案(试行)一、专业名称及代码专业名称:农村电气技术专业专业代码:610111二、入学要求初中毕业生或具有同等学力者。三、修业年限全日制学历教育,修业年限3年。四、职业面向1.面向农村企业有关自动控制的开发、管理、维护工作。2.家用电器使用与维护......
  • 前端技术选型时有用的网站
    npm-compare.com比如我们想比较react-query和swr,可以访问https://npm-compare.com/react-query,swr查看结果,页面提供了下载量,star数量,lisense等的对比,方便我们做出决策。bundlephobia.com比较完了这些,我们可能还想知道哪个包的体积更小,更轻量,这时可以使用bundlepho......
  • 信息技术服务外包(ITO服务)是一个综合性的服务领域
    信息技术服务外包(ITO服务)是一个综合性的服务领域,涵盖了多个关键的服务类别,以支持企业的信息技术需求。以下是关于ITO服务中包含的BPO、IDC驻场运维、IDC工程实施等三大类别的服务的详细解释:BPO(业务流程外包)服务:主要为客户提供7*24小时的呼入、呼出及在线业务服务。这种全天候......
  • GaussDB细粒度资源管控技术透视
    本文分享自华为云社区《【GaussTech速递】技术解读之细粒度资源管控》,作者:GaussDB数据库。背景对数据库集群内资源管控与资源隔离一直是企业客户长久以来的诉求。华为云GaussDB作为一款企业级分布式数据库,一直致力于满足企业对大型数据库集群的管理需要。数据库可以管理的资......
  • 中电金信:看 “咨询+技术”如何引领数字化变革新风向
    当前,新一轮创新技术和产业变革正在重塑全球的经济格局。日本政府及社会各界也从各个领域着手推进数字化。2021年,日本政府成立了“数字厅”,通过一系列举措推动数字化升级,希望将日本加速转型为数字经济的区域领导者,日本企业也积极开展数字化转型为业务创造价值。 中电金信认为,日......
  • 【攻防技术系列】-- JNDI注入
    JNDI概念首先第一个问题,什么是JNDI?JNDI(JavaNamingandDirectoryInterface),是Java平台提供的一个API,它允许Java应用程序访问不同的命名和目录服务。简而言之,JNDI为Java应用提供了一种统一的方式来查询和访问外部资源,如数据库、文件系统、远程对象等。虽然有点抽象,但我......
  • 进阶 Redis 技术与应用
    目录1.Redis高级数据结构1.1.HyperLogLog1.2.Bitmaps1.3.Geospatial数据1.4.Pub/Sub(发布/订阅)2.Redis事务与持久化2.1.Redis事务简介2.2.持久化方式:RDB和AOF2.3.配置和管理持久化3.Redis高级功能3.1.分布式锁3.2.Lua脚本3.3.客户端连接和连接池3.4.......
  • 【攻防技术系列+Python】-- 将Python脚本转化为exe文件
    将Python脚本转化为exe文件到目前为止,我们已经介绍了一个远程控制程序所有常用功能的实现、但是实现的脚本在执行时需要Python环境和模块文件的支持,而目标设备上往往不具备这种条件。如果将使用Python编写的远程控制程序变成在Windows中可以执行的exe文件,就可以解决这个问题......
  • 【攻防技术系列+Python】-- 用 Python 控制系统进程
    用Python控制系统进程由于注册表几乎可以决定整个操作系统的运行,因此它成为安全工具与恶意软件对抗的主要战场之一。除了注册表之外,对系统进程的控制也是安全工具和恶意软件的必争之地。这里我们首先要了解程序和进程的区别。程序是静态的,进程是动态的。进程可以分为系统进程......
  • 技术分享 | i.MX8M Mini适配MIPI转eDP芯片
    1.方案概述此方案使用HD-8MMN-CORE的核心板搭配TI公司的芯片SN65DSI86转换芯片实现。SN65DSI86作为一款MIPIDSI转eDP的芯片,支持双通道DSI输入,最大四通道显示输出,最大支持4K@60fps输出,WUXGA1080P。本方案中将采用单通道DSI输入,双通道DP输出到1080p的屏幕。HD8MMN-CORE系列工......