非结构化超大文件存诸远端通过网络传输一定是相对慢,大家实际生产环境对应以场昌的技术架构如何实践,一处上传,读场景多级缓存?
超大文件的一处上传多处更新问题,不妨考虑借鉴下CDN技术。最早视频网站像PPTV爱奇艺啥的早期用得多,解决的就是节目上新,各地IDC都能低延迟提供视频点播服务。有的技术能力强点,基本上是考虑P2P技术基础上自己写模块,有的就直接找专业CDN厂商了,省力多了。
这种问题的解决方案和数据特征相关,例如数据总量,文件重复率,可压缩程度等。非结构化数据量一般都不小,通常情况大都是视频图片,压缩图片可能还有点效果,视频一般都压缩过了,没啥大作用。在存储系统内部机制去解决其实不是个好思路,太复杂,效果也不一定好,还容易引入新问题,还是在文件层和应用层解决比较好。
如果自身技术能力强,可以考虑在上层搭建一套数据同步应用软件,可以判断文件重复度,如果用备份软件的远程同步功能改造,还能提供增量数据处理机制,减少传输量。
如果数据量实在太大,同城数据中心或者不是太远的两地三中心,网络带宽又真的不给力,不妨考虑参考下AWS的Snowball思路:移动硬盘发快递!! 毕竟能真正解决问题就是好方案:)
收起在处理非结构化超大文件存储和传输的场景中,可以采用以下技术架构来实践一次上传、多级缓存的读取场景:
分级缓存:在多级缓存中使用不同层次的存储设备来提供快速的读取访问。可以采用以下缓存层次结构:
需要根据具体场景和需求来选择适当的技术架构,并考虑数据的安全性和隐私保护。同时,对于大规模文件存储和传输,还应该进行性能测试和优化,以确保系统能够满足预期的性能要求。
收起针对非结构化超大文件存储和传输的问题,银行行业可以采用以下技术架构实践:
总之,银行行业可以采用分布式文件系统、分块传输、断点续传、多级缓存和CDN等技术,来解决非结构化超大文件存储和传输的问题,提高数据的可靠性、可扩展性和访问效率。