一分钟5万个文件,分布式存储在“数字机台”场景下的应用实践

2023-10-30 14:01

本文主要是介绍一分钟5万个文件,分布式存储在“数字机台”场景下的应用实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、 什么是“数字机台”?

从一个普普通通的螺丝,到一台复杂精密的汽车,现代工业让数以万计的零部件在流水线上彼此组合。但复杂的分工和流程,也给各个制造环节设置了极为苛刻的标准。比如一个小小的汽车组件,就有数百种尺寸要求,在生产时每个尺寸都需要通过X、Y、Z三轴数据进行确认。如何保证这些零部件的尺寸、质量符合标准,“数字机台”由此在智能制造的创新中应运而生。

通过“数字机台”的部署,新一代生产线可以利用机器视觉技术从各个不同角度快速获取被检测产品的信息,实现自动化的装配定位、质量检测、产品识别、尺寸测量等功能,可以极大程度上提升生产的效率,并已在电子制造、半导体、新汽车制造中实现了规模化应用。但随之而来的是生产线上出现了大量小至几KB大至几十MB的文本、图片数据,这些非结构化的数据让传统存储难以应付。

二、新华三分布式存储X10000助力“数字机台”场景应用的优势解析

在数字机台中,AOI(Auto Optical Inspection,自动光学检测)是核心设备之一,一台AOI设备在一分钟时间内就能产生5万多个大小在十几K到几百K左右的小文件,同时这些小文件要被打上标签,被AI计算设备读取分析,并在后续进行全生命周期的管理。但这种独特应用场景的传统存储方式存在众多问题,比如多个客户端协议导致统一管理不便,单点故障容易导致业务中断和数据丢失等问题,并且存储需要高的可扩展性,便于应对业务增长的需求,并且要有能力做好亿级小文件的高效检索和全生命周期管理,以低成本应对海量存储的需要。

在这里插入图片描述

从上图可以看到,“数字机台”对于底层数据存储平台的需求是极其复杂和多变的,其中既包括了通用网络文件系统CIFS、文件传输协议FTP、简单存储服务S3等各种协议,让底层的存储集群疲于应对,而且在集群内部也需要处理好不同数据的传输和管理。显而易见,传统本地存储和集中式NAS存储都无法独立满足这些严格需求。
在这里插入图片描述

为什么本地存储和NAS存储都无法满足数字机台的需求

作为新华三集团自主研发的存储“代表作”,X10000存储凭借高达8192个节点的高扩展性,提供EB级的大容量存储,能够以五大亮点应对“数字机台”特定场景的高标准要求。

  • 亮点一:统一存储,简便运维

X10000支持HDFS、S3、iSCSI、NFS、CIFS、CSI等全存储协议,基于硬盘池划分实现块、文件、对象、大数据等不同类型数据的融合部署,做到按需扩容,多集群的统一管理。

- 亮点二:数据安全多重保障
X10000还提供了多副本、纠删码等诸多功能保障数据实现11个9的高可靠,WORM、回收站、多版本等数据保护手段能有效避免数据丢失、损坏等风险,并能通过跨越上千公里的远程复制构建完备的容灾体系。

- 亮点三:读写性能全面提升
X10000打造了一个由SSD+HDD组成的 “缓存池”,智能化地处理不同IO需求,前台写小IO,并通过小IO聚合为大IO的方式提升性能加速,借助ROW无损快照将性能下降控制在5%以内,单桶20亿的性能下降控制在了10%以内。
在这里插入图片描述

- 亮点四:检索效率提升几十倍

X10000通过自动定时推送、自动打标签、元数据检索等用户友好型特性,实现亿级文件秒级检索,帮助企业减少人工操作,融合非结构化数据资源池,更好地利用机台数据进行质检分析,帮助提升产线产品质量,释放机台数据的业务价值。

  • 亮点五:线性扩容,低TCO

8+2的大比例纠删,支持图片重删压缩,让数字机台在同等硬件配置下,有效磁盘空间从三副本的33%提升到了80%。而且X10000支持无缝的不停机扩容,做到性能线性增加,避免新购License提升成本。而且X10000支持硬盘一键换盘,支持热插拔,并支持自动化的文件分级存储和对象生命周期管理,能够有效提升存储效率。

在这里插入图片描述

三、落地有为,在实践中印证实力

如果说技术和参数让X10000具备承载数字机台高效运转的全能实力,那么在半导体、制造等行业中的真实应用,就给出了这一能力的实践印证。在某家国内知名的半导体企业,X10000成为了应对ADC业务数亿小文件的创新“利器”,通过小IO聚合、读写缓存、ROW等提升读写性能,并借助线性平滑扩容和大规模集群应对数据量的大幅度增长,提升生产效率。在某家全球领先的制造企业,X10000帮助其破解数据统一管理难题,以多种存储类型和协议的广泛兼容,为未来的业务增长预留创新空间,并通过EB级的扩展性和全方位的运维保障特性,提供全生命周期的数据服务。

在核心的制造业之外,X10000也在能源、汽车等行业中广泛应用。在某能源企业内,CCD机器视觉检测业务每天都会产出几百KB的小文件,并且这些文件要保证未来15年的存放和管理。为了应对这一高难度的需求,X10000通过大比例纠删冗余策略提升空间利用率,并通过自动分级和归档在满足快速访问查询的需求的同时,满足数据低成本长期存储。

四、小结

从制造到智造注定不是一个一蹴而就的过程,而是需要长期的创新探索和实践变革。在这背后,新华三以对智能存储创新的持续投入为更多行业转型场景构筑坚实有力、智能高效的数字底座,让数据这一指数级增长的生产要素在未来焕发新的价值和生命力。

这篇关于一分钟5万个文件,分布式存储在“数字机台”场景下的应用实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/308417

相关文章

Java 的ArrayList集合底层实现与最佳实践

《Java的ArrayList集合底层实现与最佳实践》本文主要介绍了Java的ArrayList集合类的核心概念、底层实现、关键成员变量、初始化机制、容量演变、扩容机制、性能分析、核心方法源码解析、... 目录1. 核心概念与底层实现1.1 ArrayList 的本质1.1.1 底层数据结构JDK 1.7

JDK21对虚拟线程的几种用法实践指南

《JDK21对虚拟线程的几种用法实践指南》虚拟线程是Java中的一种轻量级线程,由JVM管理,特别适合于I/O密集型任务,:本文主要介绍JDK21对虚拟线程的几种用法,文中通过代码介绍的非常详细,... 目录一、参考官方文档二、什么是虚拟线程三、几种用法1、Thread.ofVirtual().start(

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

springboot依靠security实现digest认证的实践

《springboot依靠security实现digest认证的实践》HTTP摘要认证通过加密参数(如nonce、response)验证身份,避免明文传输,但存在密码存储风险,相比基本认证更安全,却因... 目录概述参数Demopom.XML依赖Digest1Application.JavaMyPasswo

Java 线程池+分布式实现代码

《Java线程池+分布式实现代码》在Java开发中,池通过预先创建并管理一定数量的资源,避免频繁创建和销毁资源带来的性能开销,从而提高系统效率,:本文主要介绍Java线程池+分布式实现代码,需要... 目录1. 线程池1.1 自定义线程池实现1.1.1 线程池核心1.1.2 代码示例1.2 总结流程2. J

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

vue监听属性watch的用法及使用场景详解

《vue监听属性watch的用法及使用场景详解》watch是vue中常用的监听器,它主要用于侦听数据的变化,在数据发生变化的时候执行一些操作,:本文主要介绍vue监听属性watch的用法及使用场景... 目录1. 监听属性 watch2. 常规用法3. 监听对象和route变化4. 使用场景附Watch 的

分析 Java Stream 的 peek使用实践与副作用处理方案

《分析JavaStream的peek使用实践与副作用处理方案》StreamAPI的peek操作是中间操作,用于观察元素但不终止流,其副作用风险包括线程安全、顺序混乱及性能问题,合理使用场景有限... 目录一、peek 操作的本质:有状态的中间操作二、副作用的定义与风险场景1. 并行流下的线程安全问题2. 顺

Java 结构化并发Structured Concurrency实践举例

《Java结构化并发StructuredConcurrency实践举例》Java21结构化并发通过作用域和任务句柄统一管理并发生命周期,解决线程泄漏与任务追踪问题,提升代码安全性和可观测性,其核心... 目录一、结构化并发的核心概念与设计目标二、结构化并发的核心组件(一)作用域(Scopes)(二)任务句柄