【发布时间】:2021-03-02 13:26:52
【问题描述】:
我必须以可重新运行的格式保存 cbt 脚本。我们在 bigtable 中是否对此提供支持。
cbt createtable 移动时间序列
我们可以像保存在mysql中那样以这种格式保存脚本吗
cbt createtable IF NOT EXISTS mobile-time-series
【问题讨论】:
标签: google-cloud-bigtable bigtable
我必须以可重新运行的格式保存 cbt 脚本。我们在 bigtable 中是否对此提供支持。
cbt createtable 移动时间序列
我们可以像保存在mysql中那样以这种格式保存脚本吗
cbt createtable IF NOT EXISTS mobile-time-series
【问题讨论】:
标签: google-cloud-bigtable bigtable
如果您对已经存在的表使用createtable 命令,它只会提供一个错误提示该表存在,因此您可以在现有表上调用它而不会产生任何后果:
Creating table: rpc error: code = AlreadyExists desc = Table already exists: projects/PROJECT/instances/INSTANCE/tables/TABLE
如果您希望在每次运行程序时重新创建表,您可以执行以下操作:
if cbt ls mobile-time-series | grep -q "Family Name";
then cbt deletetable mobile-time-series;
fi
cbt createtable mobile-time-series
这可能并不理想,因为表删除/重新创建可能需要一些时间,因此您可能希望将时间戳附加到表名并用于此目的。如果这回答了您的问题,或者您的可重新运行脚本是否存在其他问题,请告诉我。
【讨论】:
ls 表,如果它返回通过grep -q 检查的列族,则它存在。