YSQL 和 YCQL 相互兼容吗?
Are YSQL and YCQL compatible with each other?
据我所知,yugabyte 将数据存储在称为 DocDB 的东西中,它提供 YSQL API 和 YCQL API。
如果我没记错的话,YSQL 和 YCQL 相互兼容吗?
例如:我可以用 YSQL 创建一个 table 并用 YCQL 查询吗?
如果不是,YSQL 和 YCQL 之间是否存在任何性能差异?我的意思是,我们应该关心在项目中选择 YSQL 还是 YCQL?
今天的 YugabyteDB API 是相互隔离和独立的。这意味着由一个 API 插入或管理的数据不能被另一个 API 查询。此外,没有通用的方法来跨 API 访问数据(Presto 等外部框架可以帮助处理简单的情况)。
最终影响是应用程序开发人员必须先 select API,然后再进行详细的数据库 schema/query 设计和实施。
See the docs
我不是 Yugabyte 专家,但根据文档:是的,YSQL 和 YCQL 之间存在性能差异。请参阅 enter link description here
中的幻灯片 18
感谢您的提问 - 何塞提到的是正确的(截至目前):
The YugabyteDB APIs are isolated and independent from one another today. This means that the data inserted or managed by one API cannot be queried by the other API. Additionally, there is no common way to access the data across the APIs (external frameworks such as Presto can help for simple cases).
随着时间的推移,我们应该能够允许 YCQL tables 成为来自 YSQL(完全兼容 PostgreSQL)的 "accessed" 作为外部 table 使用 外部数据包装器 (FDW)。请注意,这方面的工作尚未开始,但在当前架构中完全可以做到。
性能差异
是的,正如 Jose 指出的那样,性能存在差异,但这也是当前的状态。由于各种原因,YCQL 目前比 YSQL 性能更高,我们正在迅速缩小差距。这是我们打算随着时间的推移写更多的东西。
短期内,我会推荐以下内容:
- 如果您的应用程序需要关系特性(例如外键)或查询灵活性(例如连接),YSQL 是最佳选择。同样,对于大多数用例,我们希望在接下来的 3-6 个月内使其接近 YCQL。
- 如果您不需要上述内容但正在谈论大量数据(比如超过 10TB 的数据),请关注非常低的延迟(亚毫秒)并且需要使用自动数据过期等功能TTL 功能 - 你应该使用 YCQL。
如果您有一个用例,我们很乐意通过更详细的分析帮助您做出决定。还请考虑加入社区松弛频道以获得实时支持。
据我所知,yugabyte 将数据存储在称为 DocDB 的东西中,它提供 YSQL API 和 YCQL API。
如果我没记错的话,YSQL 和 YCQL 相互兼容吗?
例如:我可以用 YSQL 创建一个 table 并用 YCQL 查询吗?
如果不是,YSQL 和 YCQL 之间是否存在任何性能差异?我的意思是,我们应该关心在项目中选择 YSQL 还是 YCQL?
今天的 YugabyteDB API 是相互隔离和独立的。这意味着由一个 API 插入或管理的数据不能被另一个 API 查询。此外,没有通用的方法来跨 API 访问数据(Presto 等外部框架可以帮助处理简单的情况)。
最终影响是应用程序开发人员必须先 select API,然后再进行详细的数据库 schema/query 设计和实施。 See the docs
我不是 Yugabyte 专家,但根据文档:是的,YSQL 和 YCQL 之间存在性能差异。请参阅 enter link description here
中的幻灯片 18感谢您的提问 - 何塞提到的是正确的(截至目前):
The YugabyteDB APIs are isolated and independent from one another today. This means that the data inserted or managed by one API cannot be queried by the other API. Additionally, there is no common way to access the data across the APIs (external frameworks such as Presto can help for simple cases).
随着时间的推移,我们应该能够允许 YCQL tables 成为来自 YSQL(完全兼容 PostgreSQL)的 "accessed" 作为外部 table 使用 外部数据包装器 (FDW)。请注意,这方面的工作尚未开始,但在当前架构中完全可以做到。
性能差异
是的,正如 Jose 指出的那样,性能存在差异,但这也是当前的状态。由于各种原因,YCQL 目前比 YSQL 性能更高,我们正在迅速缩小差距。这是我们打算随着时间的推移写更多的东西。
短期内,我会推荐以下内容:
- 如果您的应用程序需要关系特性(例如外键)或查询灵活性(例如连接),YSQL 是最佳选择。同样,对于大多数用例,我们希望在接下来的 3-6 个月内使其接近 YCQL。
- 如果您不需要上述内容但正在谈论大量数据(比如超过 10TB 的数据),请关注非常低的延迟(亚毫秒)并且需要使用自动数据过期等功能TTL 功能 - 你应该使用 YCQL。
如果您有一个用例,我们很乐意通过更详细的分析帮助您做出决定。还请考虑加入社区松弛频道以获得实时支持。