3

鉴于 YugaByte 为 Redis 和 Postgres 提供客户端驱动程序,我想知道如果以类似的方式使用两者之间的性能差异。

例如,假设 Postgres 表有 2 列,1 个 VARCHAR 作为主键,1 个 TEXT 列作为数据。对该表执行的唯一查询是INSERT INTO, UPDATE, SELECT val, SELECT EXISTS(...),DELETE FROM都带有WHERE primary_key_constraint = val条件。

用法类似于 Redis 操作SET, GET, EXISTS, DEL

与 Redis 驱动程序相比,Postgres 驱动程序是否会增加这些操作的开销?

4

1 回答 1

3

这些应该是相似的——但更准确地说,通过 YCQL/YEDIS API 的性能预计会比 YSQL API 更快,主要是因为 YCQL/YEDIS 的客户端驱动程序是集群/分区感知的,并且可以路由直接查询集群中拥有密钥的正确节点。相比之下,传统的 Postgres 客户端驱动程序在历史上被设计为与单实例数据库通信,不知道表是如何跨多个节点分片的——因此可能会产生额外的节点跃点来处理请求。

此外,对于 YSQL,YugaByte DB 目前不支持仅与单分片/单行相关的特殊情况操作,但这是近期路线图。所以这个差距应该很快就会被弥补。

于 2019-02-23T02:06:47.713 回答