• Metabase学习教程:系统管理-6


    Metabase可扩展性

    扩展Metabase以支持更多人和数据库的最佳实践。

    Metabase是一个可扩展的、经过实战的软件,被成千上万的公司用来提供高质量的自助服务分析。它通过水平扩展支持高可用性,而且它是开箱即用的高效工具:一台拥有4gb内存的单核机器可以将Metabase扩展到数百个用户。

    图1。连接到多个数据库及其应用程序数据库的单个Metabase实例,该数据库存储问题、仪表板和其他特定于Metabase的数据。随着增长,可以轻松添加更多Metabase实例。

    本文提供了有关如何随着用户和数据源数量的增加而在生产中保持Metabase平稳运行的高级指导和最佳实践。每个数据系统都是不同的,所以我们只能在较高的层次上讨论扩展策略,但是您应该能够将这些策略转换为您特定的环境和使用情况。

    影响Metabase性能和可用性的因素

    Metabase在垂直和水平方向上都可以很好地缩放,但它只是数据仓库,系统的总体性能将取决于系统的组成和使用模式。影响您使用Metabase体验的主要因素包括:

    • 连接到Metabase的数据库数。
    • 每个数据库中的表数。
    • 数据仓库的效率。
    • 仪表板中的问题数。

    例如,如果问题需要运行数据库需要30分钟才能完成的查询:只需要30分钟。解决方案是重新评估你对这些数据的需求(你真的每次都需要这些信息吗?)或者找到提高数据库性能的方法,例如重新组织、索引或缓存数据。

    数据库和表的数量也会影响客户机性能,但仅在管理数百个数据库和/或数千个表的大规模情况下,如元数据它本身可能有很多问题需要查询。为了使性能在这个范围内保持平稳,您可以管理Metabase同步其元数据的时间与您连接的数据库。

    现在,让我们确保您的Metabase应用程序能够很好地适应规模。

    垂直缩放

    垂直缩放是暴力手段。Metabase更多的内核和内存,它将有更多的可用资源来完成它的工作。如果遇到与应用程序本身相关的性能问题(即,与数据库的宽度和大小无关),则在功能更强大的计算机上运行Metabase可以提高性能。

    也就是说,Metabase已经是开箱即用的高效工具。例如,对于AWS上的starterMetabase实例,我们建议使用平台即服务技术t3.small实例,并从那里扩展。那是一台双核机器,有2GB的内存。4-8gb的计算机应该可以处理数百个用户,如果需要,可以增加内核数量和千兆字节内存。

    虽然添加更多的内核和内存会很有效,但是通常最好使用水平伸缩来支持更多的用户。原因是每个Metabase实例都内置了数据库连接限制,以防止实例用请求压倒数据仓库。你可以增加连接数可用于您的实例,但我们仍建议使用多个实例。

    水平缩放

    水平缩放涉及到将Metabase的多个实例与负载平衡器一起运行,以将流量定向到实例。Metabase是为水平扩展而设置的,因此不需要任何特殊配置来运行Metabase的多个实例。

    水平扩展的主要用例是提高可靠性(也称为高可用性

  • 相关阅读:
    Docker-compose
    go中的rune类型
    2022 极术通讯-聚焦云计算领域,Arm Neoverse系统获国内外主流云厂商采用
    超级强大的菜鸟工具库
    如何使用Java对doc文档拆分,但无法获取表格位置,只能统一获取表格?
    面试官:vue2和vue3的区别有哪些?
    Java笔试题
    C语言实现字符串的部分匹配算法
    Python pip更新教程(两种方式)
    酷开科技不断调整战略布局,提升OTT市场增量空间
  • 原文地址:https://blog.csdn.net/weixin_38030820/article/details/128181985