通过一系列性能测试,验证优化措施的有效性(改进后效果)
小红书是一个以社区属性为主的产品,覆盖多个领域,鼓励用户通过图文、短视频、直播等形式记录和分享生活点滴。在社交领域中,我们存在多种实体,如用户、笔记、商品等,它们之间构成了复杂的关系网络。为高效处理这些实体间的一跳查询,小红书自研了图存储系统 REDtao,满足极致性能的需求。
电商场景:构建商品与商品、商品与品牌之间的关联模型,优化商品分类和推荐,从而提升用户的购物体验。
Meta 服务:负责管理图数据库的元信息,包括数据模式(Schema)、用户账号和权限、存储分片的位置信息、作业与后台任务等;
Graph 服务:负责处理用户的查询请求,并做相应的处理,涵盖查询的解析、校验、优化、调度、执行等环节。其本身是无状态的,便于弹性扩缩容;
Storgae 服务:负责数据的物理存储,其架构分为三层。最上层是图语义 API,将 API 请求转换为对 Graph 的键值(KV)操作;中间层采用 Raft 协议实现共识机制,确保数据副本的强一致性和高可用性;最底层是单机存储引擎,使用 rocksdb 来执行数据的增删查等操作。
串行执行的效率天然低于并行执行。只有在数据量太少或者计算逻辑太简单的情况下,上下文切换的开销会超过并行的收益。在正常负载的图查询场景中,数据量和计算逻辑都挺可观;
再兴
敬德
刘备
基础架构 - 存储岗位
工作职责:
打造优秀的分布式 KV 存储系统、分布式缓存、图数据库、表格存储,为公司海量数据和大规模业务系统提供可靠的基础设施;
解决线上系统的疑难问题, 能从业务问题中抽象出通用的解决方案, 并落地实现;
团队密切配合, 共同研究和使用业内各方向最新技术,共同推动公司技术演进。
任职资格:
有 C/C++ 开发经验,精通多线程编程,有高并发场景下的产品设计和实现;
掌握分布式系统基本原理,了解 Paxos 、Raft 等一致性协议原理及应用,熟悉 RocksDB 等单机存储引擎的使用及优化;
熟悉算法和数据结构,解决问题思路清晰,对问题有深入钻研的兴趣;
对系统设计有完美追求, 对编码保持热情。
加分项:
有 rocksdb 、redis 、tidb 、nebula 、Lindom 等 KV / 图 / 表格数据库使用和开发、优化经验优先;
对开源项目有深入学习或参与的优先。
欢迎感兴趣的朋友发送简历至: REDtech@xiaohongshu.com;
并抄送至: liubei@xiaohongshu.com、 ft_storage_team@xiaohongshu.com
往期精彩内容指路
添加小助手,了解更多内容
微信号 / REDtech01
👇点击阅读原文,回看完整录播视频。