【问题标题】:Read And Modify on same transaction - Bigtable在同一事务上读取和修改 - Bigtable
【发布时间】:2019-09-12 21:26:53
【问题描述】:

我建立了一个优惠券系统并使用了 bigtable。

我的架构有两列 - 客户 ID、优惠券代码

我想查询该表以检查客户是否已经存在,如果为 true 则返回代码,如果不存在,则使用 id 修改客户 ID 单元格并返回代码。

我看到有一个选项可以在 Bigtable ReadModifyWriteRow 运算符或 CheckAndMutateRow 中执行此操作,但我没有找到任何参考。

【问题讨论】:

    标签: python google-cloud-platform bigtable google-cloud-bigtable


    【解决方案1】:

    Google 提供了用于 Bigtable 和 Python 的 API 文档here。这向您展示了所有可用的方法和它们引用的源代码,因此您可以轻松、更有效地使用和理解用法。

    ReadModifyWriteRow 以字节形式追加或增加行中现有单元格中的数据。

    CheckAndMutateRow 检查过滤器是否匹配,然后应用 2 组突变。这些是“真突变”和“假突变”。

    您可以使用if 语句来实现您希望的用法。

    你可以阅读CheckAndMutateRow conditional requests,也有code samples可用。

    【讨论】:

    • 谢谢,也许你的代码示例我应该如何实现它?
    • 您可以查看ReadModifyWriteRow here 的实现和CheckAndMutateRow here 的实现。这将提供有关如何在自己的实现中实现这些方法的见解。希望这会有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-26
    • 2019-04-26
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    • 2021-07-25
    相关资源
    最近更新 更多