【问题标题】:Migrating hstore datatypes from PostgreSQL to CockroachDB将 hstore 数据类型从 PostgreSQL 迁移到 CockroachDB
【发布时间】:2018-10-20 02:52:57
【问题描述】:

我正在考虑将一些 PostgreSQL 数据库迁移到 CockroachDB。我的一个应用程序使用 PostgreSQL hstore 数据类型。

有没有一种等效的方法可以将这些数据存储在 CockroachDB 中?

如果不是,在尽可能少地更改应用程序代码的情况下映射此数据类型的最佳实践是什么?

【问题讨论】:

    标签: database postgresql cockroachdb


    【解决方案1】:

    CockroachDB 有一个与 PostgreSQL 非常相似的 jsonb 类型,因此您可以将您的 hstores 转换为 jsonb 对象(即像 'a=>x, b=>y' 这样的 hstore 将在 jsonb 上变为 {"a":"x", "b":"y"}) .

    hstore 一起使用的最常见(可能)运算符是->,用于基于键访问值。使用jsonb-> 给你一个jsonb 结果,所以你想切换到->>,它给你一个字符串(就像->hstore)。 @> 运算符与 jsonb(CockroachDB 和 PostgreSQL 的)的行为类似,与 hstore 的行为相似,但需要进行一些更改。当然,任何hstore_... 函数都需要替换。

    CockroachDB 的jsonb 与PostgreSQL 的非常相似。此外,hstore 在 PostgreSQL 中有点被弃用,取而代之的是 jsonb。因此,在尝试迁移到 CockroachDB 之前,您可能希望在 PostgreSQL 中将 hstore 替换为 jsonb

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-07
      • 1970-01-01
      • 2017-06-19
      • 2016-10-25
      • 2014-07-05
      • 2012-04-05
      相关资源
      最近更新 更多