数据湖屋的可靠性

可靠性支柱的体系结构原则解决了系统从故障中恢复并继续运行的需求。

Databricks 的可靠性湖屋体系结构示意图。

可靠性原则

  1. 防故障设计

    在高度分布式的环境中,有可能发生服务中断。 对于平台和各种工作负载(例如流式处理作业、批处理作业、模型训练和 BI 查询),必须能够预见到故障,并开发可复原解决方案来提高可靠性。 工作重心是设计好应用程序以快速恢复,最好是使其能够自动恢复。

  2. 管理数据质量

    数据质量是从数据中获取准确且有意义的见解的基础。 数据质量有许多维度,其中包括完整性、准确性、有效性和一致性。 必须主动管理以提高最终数据集的质量,使数据成为业务用户的可靠和可信信息。

  3. 自动缩放设计

    标准 ETL 过程、业务报表和仪表板通常在内存和计算方面具有可预测的资源需求。 但是,新项目、季节性任务或模型训练(用于流失率计算、预测和维护)等高级方法会导致资源需求出现高峰。 对于需要处理所有这些工作负载的组织,需有一个可缩放的存储和计算平台。 必须能够轻松地按需添加新资源,并且应该只为实际使用量付费。 在高峰过后,可以释放资源,从而相应地降低成本。 这通常称为水平缩放(节点数量)和垂直缩放(节点大小)。

  4. 测试恢复过程

    大多数应用程序和系统的企业级灾难恢复策略需要对优先级、功能、限制和成本进行评估。 可靠的灾难恢复方法会定期测试工作负载如何发生故障,并验证恢复过程。 自动化可用于模拟不同的故障,或重新创建过去导致了故障的场景。

  5. 将部署和工作负载自动化

    将湖屋的部署和工作负载自动化有助于标准化这些流程、消除人为错误、提高生产力并提供更高的可重复性。 这包括使用“配置即代码”来避免配置偏差,使用“基础结构即代码”来自动预配所有必需的湖屋和云服务。

  6. 监视系统和工作负载

    湖屋中的工作负载通常集成 Databricks 平台服务和外部云服务来实现特定目标,例如将其用作数据源或目标。 仅当执行链中的每个服务都正常运行时,才能成功执行。 如果不是这种情况,则必须设置监视、警报和日志记录来检测和跟踪问题以及了解系统行为。

下一篇:可靠性最佳做法

请参阅可靠性最佳做法