[改进后的中文总结内容]

会议纪要

会议主题: Ceph 分布式存储系统中的应用演示与技术讨论

会议时间: 2024-11-20

参会人员: - Jin:会议主持人,Ceph 研发人员 - Igor:Ceph 研发人员,负责版本控制系统的改进 - 其他参会人员:包括 Ceph 团队成员及外部专家


会议内容总结

1. Jin 的应用演示

  • 背景: 演示了如何将 Ceph 对象存储与向量数据库结合,用于对象和图像的向量化处理。
  • 技术细节:
    • 使用 Ceph 的 RGW (RADOS Gateway) 服务,结合 MiniKube 集群进行配置。
    • 创建了两个应用程序,一个用于处理文本,另一个用于处理图像。
    • 通过 Kubernetes 配置了 Knative 和 Kafka 通道,用于接收对象创建和删除的通知。
    • 展示了如何将对象上传到 Ceph 的 RGW,并自动生成向量,存储在 Milvus 向量数据库中。
    • 通过 Python 程序进行相似性搜索,搜索结果基于向量化的文本或图像。
  • 讨论点:
    • 是否将搜索功能直接集成到 RGW 中,还是保持独立。
    • 计划在未来的会议上展示该功能,收集更多来自数据科学和 AI 领域的反馈。

2. Igor 的版本控制改进讨论

  • 背景: Ceph 的 RGW 当前的版本控制系统依赖于对象键和版本对象的 Epoch(64位整数值),在多站点部署中可能会导致对象历史记录不一致。
  • 问题描述:
    • 在多站点环境中,由于并发写入,可能会导致对象的历史记录在不同站点之间不一致。
    • 当前的解决方案是通过随机生成的版本 ID 进行字典序比较,随机选择一个版本作为当前版本,这可能导致灾难恢复时用户看到不同的历史记录。
  • 解决方案:
    • 使用时间戳代替 Epoch,以确保在多站点环境中,对象的历史记录可以按时间顺序排列。
    • 在时间戳相同的情况下,仍然需要一个机制来解决冲突,可能通过配置指定主站点优先或其他策略。
  • 讨论点:
    • 时间戳的精度。
    • 升级兼容性。
    • 冲突解决机制。
  • 结论:
    • 初步决定使用时间戳代替 Epoch,并继续使用字典序比较作为冲突解决的默认方式。未来可以进一步讨论是否需要引入更复杂的冲突解决机制。

决定事项

  1. Jin:继续完善向量数据库与 Ceph 的集成,计划在未来的会议上展示该功能,收集更多用户反馈。
  2. Igor:开始实现基于时间戳的版本控制改进,确保高分辨率时间戳的使用,并处理升级时的兼容性问题。

后续行动计划

  1. Jin:准备在未来的会议上展示向量数据库与 Ceph 的集成功能,收集用户反馈。
  2. Igor:开始实现基于时间戳的版本控制系统改进,确保高分辨率时间戳的使用,并处理升级时的兼容性问题。

会议结束时间: 未知