当前位置: 首页 > news >正文

东方银行--用 MinIO 和 Dremio 替代 Hadoop

我们的客户是一家总部位于日本的全球金融机构,最近与MinIO和Dremio一起完成了一个雄心勃勃的Hadoop替换项目。你可以在Subsurface的这个演讲中看到他们介绍它,但我们认为我们也会把它写下来。与大多数银行一样,该公司已经建立了大量的Hadoop足迹,以支持其分析和风险管理工作负载。与其他所有银行一样,在不断增加的数据量和更密集的查询负载下,传统架构开始破裂。此外,频繁的系统中断影响了银行满足严格的 SLA 和监管要求的能力。为了解决这些挑战,该银行启动了一项全面的现代化计划,其核心是采用 Dremio 针对云数据湖优化的高性能 SQL 查询引擎。为了补充 Dremio 的计算能力,该银行选择了 MinIO 的企业级对象存储。MinIO 专为分析和 AI 工作负载而设计,可提供可扩展且有弹性的数据基础,以满足银行激增的分析需求。对于旨在实现下一代数据驱动型洞察的组织来说,他们的成功凸显了 MinIO 的战略部署如何克服分析限制并释放新的潜力。让我们深入了解一下可以从这个成功故事中吸取的一些教训。

第 1 课:识别遗留系统何时阻碍您

在这家金融机构的现代化之旅中,一个关键的里程碑是认识到其基于Hadoop的架构日益增长的局限性。Hadoop 专为批处理而设计,难以提供现代工作负载所需的实时性能和可扩展性。频繁的稳定性问题和停机困扰着运营。管理Hadoop的复杂性也阻碍了创新,使得追求新的计划变得困难。最重要的是,该银行意识到Hadoop无法经济高效地进行扩展以满足未来的数据增长。像Hadoop这样的遗留系统不是为了利用云或处理JSON和Avro等新数据类型而构建的。将其未来与Hadoop联系在一起意味着限制业务敏捷性和分析能力。

最佳实践

组织应定期评估现有数据基础设施是否仍满足当前和预计的需求。工作负载性能、可扩展性上限、运营开销和创新就绪性是关键的评估标准。尽管最初已经足够了,但遗留系统通常难以支持现代分析需求。及早认识到这些局限性对于在数据架构阻碍竞争力之前实现数据架构转型至关重要。定期审查可确保系统不断发展并符合组织需求。

第 2 课:采用云原生方法实现灵活性和可扩展性

为了实现数据架构的现代化,该银行巧妙地采用了以 Kubernetes 为中心的云原生技术,以实现编排和容器化。这种基于微服务的方法提供了更高的自动化程度,简化了基础设施管理。Kubernetes 的动态资源分配和自动扩展还实现了无缝可扩展性,以处理棘手的工作负载。至关重要的是,Kubernetes 支持跨本地和多云环境的可移植部署。通过集成 Dremio 和 MinIO 等云原生技术,该银行获得了一致的界面,可以在任何地方查询数据。这种支持混合云和多云的分析平台确保了未来的灵活性,并降低了供应商锁定风险。

最佳实践

云原生方法可提高可扩展性,同时抽象出底层基础设施的复杂性。跨环境的可移植性使分析投资经得起未来考验。通过将功能封装到 Kubernetes 编排的模块化微服务中,可以降低复杂性,同时提高运营效率。优先考虑云原生功能和标准合规性,可以跨管道和工作负载解锁数据敏捷性。

第 3 课:为分析工作负载选择专用存储

通用存储系统无法充分发挥现代分析引擎(如 Dremio)的性能潜力。通过选择 MinIO 专门构建的对象存储,该银行确保存储永远不会成为瓶颈。MinIO 的纠删码策略、bitrot 保护和并行化架构专为处理高负载的即席 SQL 查询而设计。这些优化防止了存储阻碍要求苛刻的分析工作负载。通过将 MinIO 的快速对象存储与 Dremio 的加速查询引擎相结合,该银行建立了一流的分析堆栈。总之,这些技术通过减少不必要的数据移动和 I/O 来最大程度地减少查询延迟。该银行没有满足于通用存储,而是选择了一个专为密集分析而设计的系统。Dremio 和 MinIO 的这种战略性配对实现了 PB 级的无与伦比的性能。

最佳实践

评估存储时,请仔细分析针对目标工作负载优化的体系结构属性。对于要求苛刻的分析用例,MinIO 的专用设计可提供出色的性能。

第 4 课:通过战略性数据本地化最大限度地提高性能

为了优化查询性能,该银行战略性地在同一台物理服务器上部署了 Dremio 和 MinIO。这种拓扑最大限度地提高了查询引擎和存储层之间的数据局部性。由于这两种技术都位于每个节点上,Dremio 可以利用 MinIO 的并行架构在本地 SSD 上实现高吞吐量。 计算不是在网络上移动数据,而是与存储的数据一起进行。MinIO 能够使可用磁盘带宽饱和,从而能够快速并行执行查询和数据扫描。同时,Dremio 的列式优化和缓存功能最大限度地减少了最常见查询的磁盘 I/O。通过最大限度地提高 MinIO 和 Dremio 之间的数据局部性,该银行最大限度地减少了网络流量和延迟。这与平台的原生加速功能一起,转化为炽热的整体性能。

最佳实践

构建 MinIO 部署,使存储在物理上靠近计算引擎,从而最大限度地提高数据局部性。这允许快速并行查询执行和缓存,以释放全部性能潜力。该银行的分析现代化之旅为旨在实现下一代数据驱动型洞察的组织提供了关键经验教训。通过采用 MinIO 的云原生对象存储,该银行克服了传统基础设施的限制,从而提高了性能、确保了弹性并解锁了新的创新。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • React18快速入门教程
  • C HTML格式解析与生成
  • 浅谈Kafka(二)
  • EmguCV学习笔记 VB.Net 第5章 图像变换
  • 【机器学习】 1. 总览介绍
  • 开源大屏设计工具DataRoom
  • Elasticsearch:使用 ELSER 进行语义搜索 - sparse_vector
  • 在pytorch中TensorBoard的使用
  • OpenCV c++ 实现图像马赛克效果
  • Magenta——利用深度学习生成音乐和艺术内容
  • 基于STM32的温湿度采集设计
  • npm install` 报错
  • 【软件测试面试题】WEB功能测试(持续更新)
  • 黑神话:悟空-配置推荐
  • catvod、TVBox源的解析过程分析和Spider参数覆盖问题解决
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • Bootstrap JS插件Alert源码分析
  • IDEA常用插件整理
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Javascript设计模式学习之Observer(观察者)模式
  • Python进阶细节
  • SQLServer之创建数据库快照
  • TCP拥塞控制
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 聊聊hikari连接池的leakDetectionThreshold
  • 盘点那些不知名却常用的 Git 操作
  • 什么软件可以剪辑音乐?
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 通过npm或yarn自动生成vue组件
  • 我从编程教室毕业
  • 学习Vue.js的五个小例子
  • 一道面试题引发的“血案”
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • Nginx实现动静分离
  • 阿里云服务器如何修改远程端口?
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #1014 : Trie树
  • (iPhone/iPad开发)在UIWebView中自定义菜单栏
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (代码示例)使用setTimeout来延迟加载JS脚本文件
  • (回溯) LeetCode 131. 分割回文串
  • (六)Hibernate的二级缓存
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (转)scrum常见工具列表
  • (转)程序员技术练级攻略
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .net framework profiles /.net framework 配置
  • .net 按比例显示图片的缩略图
  • .net的socket示例