据我所知,yugabyte将数据存储在称为DocDB的东西中,它在此之上提供YSQL API和YCQL API。

因此,如果我没记错,YSQL和YCQL是否彼此兼容?

例如:我可以使用YSQL创建一个表并使用YCQL对其进行查询吗?

如果不是,那么YSQL和YCQL之间会有性能差异吗?我的意思是,我们应该在项目中选择YSQL还是YCQL吗?

最佳答案

感谢您提出的问题-何塞提到的是正确的(截至目前):



随着时间的推移,我们应该能够允许使用外部数据包装器(FDW)从YSQL(与PostgreSQL完全兼容)从YSQL“访问” YCQL表作为外部表。请注意,尚未完成此工作,但是在当前体系结构中完全可以完成。

性能差异

是的,正如Jose指出的那样,性能存在差异,但这也是目前的状况。由于各种原因,YCQL在使用YSQL时表现较高,并且我们正在迅速缩小差距。随着时间的推移,这是我们打算写的更多内容。

在短期内,我将建议以下内容:

  • 如果您的应用程序需要关系功能(例如外键)或查询灵活性(例如联接),则可以使用YSQL。同样,对于大多数用例,我们希望在接下来的3-6个月内使其接近YCQL。
  • 如果您不需要上面的内容,但是谈论的是大量数据(例如,超过10TB的数据),请注意非常低的延迟(不到毫秒),并且需要使用TTL功能的自动数据过期等功能-您应该使用YCQL。

  • 如果您有用例,我们很乐意帮助您做出更详细的分析。另请考虑加入社区闲散 channel 以获取实时支持。

    关于yugabyte-db - YSQL和YCQL是否彼此兼容?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59248193/

    10-12 15:16