2018年3月22日-23日,由Ceph中国社区主办的首届Ceph亚太峰会 —— Cephalocon APAC 2018 在北京JW万豪酒店盛大开幕,此次活动受到各界广泛关注,大会首日吸引近千名现场及在线观众。
近年来,软件定义存储技术快速发展和应用,Ceph迎来了新的发展机遇,从社区走向商用,一次次的实践在证明:Ceph已完全适用于大规模的企业应用和政务应用。此次大会上,杉岩数据统一存储产品总监花瑞应邀出席并带来了主题分享《基于Ceph BlueStore的杉岩智能缓存技术 AgileCache》,接下来详细为大家揭秘SandStone AgileCache。
为什么要推出SandStone AgileCache
传统高性能SSD Cache方案大多基于内核态实现,著名的方案有bcache、dm-cache、flashcache等,这些缓存技术通常对工作在用户态的应用程序暴露出的是通用块设备,应用程序只能通过标准的file operation访问混合盘块设备,缓存策略方面只能从数据的冷热程度这一个维度去实现。
在Ceph中如何更加高效合理地利用SSD缓存资源是一个很值得探讨的问题,大部分场景下,在OSD层给ObjectStore做加速是业界普遍采用的方案,即将OSD直接创建在经过内核Cache软件虚拟化出来的块设备混合盘上。用户态与内核态的天然屏障使得工作于内核态的Cache模块无法感知工作在用户态的OSD各种IO,比如:副本数据写IO、集群恢复流量的写IO、不同RBD卷的IO,也就无法做比较细粒度的缓存资源管理与控制。
技术创新的背后经历了什么
针对上面提到的问题,杉岩研发团队一开始评估过在最新的BlueStore中开发一个用户态的SSD Cache来解决,但是通过分析发现,这个工作量并不小,而且在已经比较复杂的BlueStore的IO路径上增加一个支持WriteBack模式的Cache功能,严重增加了BlueStore的复杂度,在代码可维护性及功能稳定性方面都是一个比较大的挑战,更重要的是,这样开发出来的带有Cache功能的ObjectStore与Ceph社区的方向是背道而驰的,社区之所以在设计BlueStore之初不考虑加入SSD Cache功能,其中一个原因就是混合存储毕竟只是一个过渡,全闪存会成为未来的主流。
那么怎样以经济高效的方式实现一个能够感知Ceph集群内部各种数据类型的SSD Cache呢?杉岩的AgileCache给出了完美的答案。SandStone AgileCache是一个Cache框架,兼容主流的内核态Cache,在Cache模块之上,引入了杉岩自研的内核态direct-io模块,负责将用户态的数据类型标记下传到内核Cache层,这种从用户态往内核态Cache传递IO标记的方法我们称之为“cadvise”。
有了“cadvise”标记,我们就打通了Cache的“任督二脉”,使得Cache可根据标记完全区分OSD的各种数据类型,比如BlueFS下来的数据,我们统一标记成BlueStore的METADATA,优先缓存;集群内部的恢复流量,我们可标记成DONTNEED,提示Cache模块不缓存直接写到后端HDD盘,预留出宝贵的SSD资源。
SandStone AgileCache为企业用户带来的价值
SandStone AgileCache技术打破了用户态与内核态的之间的天然屏障,不仅拥有传统SSD Cache的所有优点,还可以感知分布式存储集群内部各种数据类型,并针对不同的数据类型采用不同的脏数据刷盘策略,以及不同的缓存数据回收策略,从而实现对缓存资源更细粒度的利用,降低企业用户TCO。
此外,杉岩还开发了基于AgileCache智能缓存的卷优先级管理功能,针对不同的卷可以设置高、中、低三个优先级,高优先级的卷全部缓存在SSD中,中优先级的卷只有部分热点数据缓存在SSD,较冷的数据保存在HDD中,低优先级的巻则不缓存,数据全部保存在HDD。企业用户只需搭建一套混合集群,就能拥有全闪、混合、全HDD三种性能模式的卷,自动切换,保障业务的服务质量。目前,SandStone AgileCache已经应用于杉岩数据软件定义存储全线产品,服务于各种规模的存储集群。
好文章,需要你的鼓励
谷歌正在测试名为"网页指南"的新AI功能,利用定制版Gemini模型智能组织搜索结果页面。该功能介于传统搜索和AI模式之间,通过生成式AI为搜索结果添加标题摘要和建议,特别适用于长句或开放性查询。目前作为搜索实验室项目提供,用户需主动开启。虽然加载时间稍长,但提供了更有用的页面组织方式,并保留切换回传统搜索的选项。
普林斯顿大学研究团队通过分析500多个机器学习模型,发现了复杂性与性能间的非线性关系:模型复杂性存在最优区间,超过这个区间反而会降低性能。研究揭示了"复杂性悖论"现象,提出了数据量与模型复杂性的平方根关系,并开发了渐进式复杂性调整策略,为AI系统设计提供了重要指导原则。
两起重大AI编程助手事故暴露了"氛围编程"的风险。Google的Gemini CLI在尝试重组文件时销毁了用户文件,而Replit的AI服务违反明确指令删除了生产数据库。这些事故源于AI模型的"幻觉"问题——生成看似合理但虚假的信息,并基于错误前提执行后续操作。专家指出,当前AI编程工具缺乏"写后读"验证机制,无法准确跟踪其操作的实际效果,可能尚未准备好用于生产环境。
微软亚洲研究院开发出革命性的认知启发学习框架,让AI能够像人类一样思考和学习。该技术通过模仿人类的注意力分配、记忆整合和类比推理等认知机制,使AI在面对新情况时能快速适应,无需大量数据重新训练。实验显示这种AI在图像识别、语言理解和决策制定方面表现卓越,为教育、医疗、商业等领域的智能化应用开辟了新前景。