多模型数据库的基准测试评估单一数据库中不同数据模型(如文档、图或键值存储)的性能,同时测试这些模型如何交互。与专注于一种数据类型的单模型基准测试不同,多模型基准测试模拟混合工作负载,以反映应用程序同时使用多种数据模型的真实场景。例如,基准测试可能会测试数据库并行处理 JSON 文档写入、图遍历和键值查找的能力。诸如 YCSB (Yahoo! Cloud Serving Benchmark) 和 LDBC (Linked Data Benchmark Council) 之类的工具通常会进行调整或扩展,以覆盖这些混合用例,从而测量不同负载下的吞吐量、延迟和一致性。
一个关键的关注点是测试跨模型操作,例如查询存储在一个模型(例如,文档)中的数据,并将其与来自另一个模型(例如,图)的数据组合。基准测试可能会模拟一个电子商务应用程序,该应用程序将产品详细信息存储为文档,将用户关系存储为图,并将库存计数存储为键值对。像“根据用户的社交网络推荐产品”这样的查询将需要遍历图并将结果与文档数据连接起来。基准测试评估数据库处理这些操作的效率,包括索引策略、缓存和事务管理。他们还测量资源使用情况(CPU、内存),以识别模型竞争共享基础设施时的瓶颈。
挑战包括平衡公平性和相关性。例如,如果基准测试没有适当地权衡场景,则图繁重的工作负载可能会掩盖文档操作。一些基准测试使用模块化设计,允许用户自定义工作负载的组合(例如,70% 的文档读取,30% 的图更新)。像 ArangoDB 的“Multi-Bench”这样的真实基准测试测试其文档、图和搜索引擎的混合查询。这些测试帮助开发人员了解权衡,例如原生多模型支持是否优于将单模型数据库拼接在一起。最终,目标是提供可操作的见解,了解数据库在多大规模上处理多样化、互连的数据的效果。