在同一事务上读取和修改 - Bigtable

2024-05-06

我正在构建一个优惠券系统,并且正在使用 Bigtable。

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

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

我看到 Bigtable 中有一个选项可以做到这一点ReadModifyWriteRow运算符或与CheckAndMutateRow但我还没有找到任何参考资料。


Google 提供了 Bigtable 和 Python 的 API 文档here https://google-cloud-python.readthedocs.io/en/0.32.0/index.html。这向您展示了所有可用的方法以及它们引用的源代码,以便您可以轻松且更有效地使用和理解其用法。

ReadModifyWriteRow https://google-cloud-python.readthedocs.io/en/0.32.0/bigtable/data-api.html#direct-vs-conditional-vs-append以字节形式追加或增加行中现有单元格中的数据。

CheckAndMutateRow https://google-cloud-python.readthedocs.io/en/0.32.0/bigtable/data-api.html#direct-vs-conditional-vs-append检查过滤器是否匹配,然后应用 2 组突变。这些是“真突变”和“假突变”。

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

您可以阅读有关CheckAndMutateRow 条件请求 https://cloud.google.com/bigtable/docs/writes#conditional,并且还有代码示例 https://cloud.google.com/bigtable/docs/writing-data#conditional可用的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在同一事务上读取和修改 - Bigtable 的相关文章

  • Python:在列表理解本身中引用列表理解?

    这个想法刚刚出现在我的脑海中 假设您出于某种原因想要通过 Python 中的列表理解来获取列表的唯一元素 i if i in created comprehension else 0 for i in 1 2 1 2 3 1 2 0 0 3
  • 无法“安装”plpython3u - postgresql

    我正在尝试在 postgresql 中使用 python 语言 像这样的事情 create or replace function test a integer returns integer as if a 2 0 return even
  • 使用 pythonbrew 编译 Python 3.2 和 2.7 时出现问题

    我正在尝试使用构建多个版本的 python蟒蛇酿造 http pypi python org pypi pythonbrew 0 7 3 但我遇到了一些测试失败 这是在运行的虚拟机上 Ubuntu 8 04 32 位 当我使用时会发生这种情
  • Django:按钮链接

    我是一名 Django 新手用户 尝试创建一个按钮 单击该按钮会链接到我网站中的另一个页面 我尝试了一些不同的例子 但似乎没有一个对我有用 举个例子 为什么这不起作用
  • 使用 matplotlib 绘制时间序列数据并仅在年初显示年份

    rcParams date autoformatter month b n Y 我正在使用 matpltolib 来绘制时间序列 如果我按上述方式设置 rcParams 则生成的图会在每个刻度处标记月份名称和年份 我怎样才能将其设置为仅在每
  • Python - StatsModels、OLS 置信区间

    在 Statsmodels 中 我可以使用以下方法拟合我的模型 import statsmodels api as sm X np array 22000 13400 47600 7400 12000 32000 28000 31000 6
  • Flask 会话变量

    我正在用 Flask 编写一个小型网络应用程序 当两个用户 在同一网络下 尝试使用应用程序时 我遇到会话变量问题 这是代码 import os from flask import Flask request render template
  • 如何使用 Ansible playbook 中的 service_facts 模块检查服务是否存在且未安装在服务器中?

    我用过service facts检查服务是否正在运行并启用 在某些服务器中 未安装特定的软件包 现在 我如何知道这个特定的软件包没有安装在该特定的服务器上service facts module 在 Ansible 剧本中 它显示以下错误
  • 使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

    我有一个 CSV 文件 我正在使用 Python 来解析该文件 我发现文件中的某些行具有不同的列数 001 Snow Jon 19801201 002 Crom Jake 19920103 003 Wise Frank 19880303 l
  • python 相当于 R 中的 get() (= 使用字符串检索符号的值)

    在 R 中 get s 函数检索名称存储在字符变量 向量 中的符号的值s e g X lt 10 r lt XVI s lt substr r 1 1 X get s 10 取罗马数字的第一个符号r并将其转换为其等效整数 尽管花了一些时间翻
  • 使用 Tkinter 显示 numpy 数组中的图像

    我对 Python 缺乏经验 第一次使用 Tkinter 制作一个 UI 显示我的数字分类程序与 mnist 数据集的结果 当图像来自 numpy 数组而不是我的 PC 上的文件路径时 我有一个关于在 Tkinter 中显示图像的问题 我为
  • 如何使用 OpencV 从 Firebase 读取图像?

    有没有使用 OpenCV 从 Firebase 读取图像的想法 或者我必须先下载图片 然后从本地文件夹执行 cv imread 功能 有什么办法我可以使用cv imread link of picture from firebase 您可以
  • 绘制方程

    我正在尝试创建一个函数 它将绘制我告诉它的任何公式 import numpy as np import matplotlib pyplot as plt def graph formula x range x np array x rang
  • 如何在Python中获取葡萄牙语字符?

    我正在研究葡萄牙语 角色看起来很奇怪 我怎样才能解决这个问题 代码 import feedparser import random Vou definir os feeds feeds conf feedurl http pplware s
  • 如何在ipywidget按钮中显示全文?

    我正在创建一个ipywidget带有一些文本的按钮 但按钮中未显示全文 我使用的代码如下 import ipywidgets as widgets from IPython display import display button wid
  • Pygame:有没有简单的方法可以找到按下的任何字母数字的字母/数字?

    我目前正在开发的游戏需要让人们以自己的名义在高分板上计时 我对如何处理按键有点熟悉 但我只处理过寻找特定的按键 有没有一种简单的方法可以按下任意键的字母 而不必执行以下操作 for event in pygame event get if
  • Pandas:merge_asof() 对多行求和/不重复

    我正在处理两个数据集 每个数据集具有不同的关联日期 我想合并它们 但因为日期不完全匹配 我相信merge asof 是最好的方法 然而 有两件事发生merge asof 不理想的 数字重复 数字丢失 以下代码是一个示例 df a pd Da
  • 如何在seaborn displot中使用hist_kws

    我想在同一图中用不同的颜色绘制直方图和 kde 线 我想为直方图设置绿色 为 kde 线设置蓝色 我设法弄清楚使用 line kws 来更改 kde 线条颜色 但 hist kws 不适用于显示 我尝试过使用 histplot 但我无法为
  • 有人用过 Dabo 做过中型项目吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我们正处于一个新的 ERP 风格的客户端 服务器应用程序的开始阶段 该应用程序是作为 Python 富客户端开发的 我们目前正在评估 Dabo
  • 导入错误:没有名为 site 的模块 - mac

    我已经有这个问题几个月了 每次我想获取一个新的 python 包并使用它时 我都会在终端中收到此错误 ImportError No module named site 我不知道为什么会出现这个错误 实际上 我无法使用任何新软件包 因为每次我

随机推荐

  • 如何取消部署 Prediction IO 模型

    我正在使用预测 io 模板进行逻辑回归 我已经使用部署了一个模型pio deploy 它给了我一个测试我的问题的端口 我的问题是如何取消部署模型 是否有任何命令可以取消部署或者我必须使用以下命令找到端口的 PIDnetstat npl gr
  • 最可靠的分裂角色

    Update 如果您被迫在 split 方法中使用单个字符 那么哪个字符最可靠 可靠的定义 不属于被分割的各个子字符串的分割字符 我们目前使用 public const char Separator char 007 如果我没记错的话 我认
  • 如何使用 eslint 修复一条规则

    我想使用 eslint 命令标志 fix只是修复一条规则 我尝试了命令 eslint fix config eslintrcsomerules js 但这不起作用 如何达到目的 My eslintrcsomerules js文件如下 mod
  • 如何异步使用 HttpWebRequest (.NET)?

    如何异步使用 HttpWebRequest NET C Use HttpWebRequest BeginGetResponse http msdn microsoft com en us library system net httpweb
  • 如何使用 powershell Az 模块为 Azure AD 应用程序提供所需权限的访问权限

    我正在尝试重写 powershell 脚本来创建 Azure AD 应用程序并为其分配权限 该脚本使用 AzureAD 模块 我想使用新的 Az 模块 这样我就可以在 Linux MacOS 上运行它 创建新应用程序很容易 New AzAD
  • 如何编写简单的异步方法?

    使用带有 async await 关键字的最新 CTP5 我编写了一些代码 但显然无法编译 class Program public class MyClass async public Task
  • Java - SwingWorker - 我们可以从其他 SwingWorker 调用一个 SwingWorker 而不是 EDT

    我有一个SwingWorker如下 public class MainWorker extends SwingWorker Void MyObject 我调用了上面的Swing Worker来自东部夏令时间 MainWorker mainW
  • while(foo) 与 while(foo != NULL)

    有人可以解释一下如何while foo vs while foo NULL 是等价的 还 while foo vs while foo NULL 我知道 不是 但这就是我所知道的全部 假设foo是指针类型 while foo and whi
  • 获取 Oracle JDBC 连接上的 MySQL 错误堆栈跟踪

    我在使用连接字符串进行 Oracle JDBC 连接时遇到非常奇怪的错误 我将用户名指定为 sys 应该是 sys as sysdba 理想情况下 它应该来自 ojdbc6 jar 但就我而言 它来自 mysql connector jav
  • 无法加载文件或程序集“Microsoft.Office.Interop.Excel”

    我在 WinForm 应用程序中使用 Excel 时遇到问题 当我在多台计算机上尝试它时 它在它们上运行得很好 但是当我在另一台计算机上尝试它时 它会给我 System IO FileLoadException 无法加载文件或程序集 错误
  • 颤动中的弯曲导航栏

    目前 我在 flutter 中有一个库https pub dev packages curved navigation bar https pub dev packages curved navigation bar并已经在我的项目中实现了
  • 如何在只有一个字段的类中进行温度转换?

    温度主要以三种单位测量 摄氏度 华氏度和开尔文 很容易将它们中的任何一个转换为 另外两个 Kelvin to Celsius C K 273 15 Celsius to Kelvin K C 273 15 Kelvin to Fahrenh
  • 安全地记住 bash 脚本中的 ssh 凭据[重复]

    这个问题在这里已经有答案了 假设我有一个 bash 脚本 它通过 ssh 在远程计算机上执行命令 Do something here ssh otheruser host command1 Do something else ssh oth
  • 无法合并 Laravel 中的 Eloquent 集合

    我需要在 Laravel 5 1 中合并集合或数组 可以是其中之一 但在 Builder php 第 2071 行中收到错误 BadMethodCallException 调用未定义的方法 Illuminate Database Query
  • Seaborn:带有背景颜色的图例

    以下问题解释了如何更改图例的背景颜色 matplotlib 图例背景颜色 https stackoverflow com questions 19863368 matplotlib legend background color 但是 如果
  • Kendo 模块和 RequireJS (r.js) 表现不佳。 (加载时出错)

    我在用Kendo UI版本2013 1 514 and RequireJS r js版本2 1 6 我的项目在标准下完美运行RequireJS按需加载 但是 当我尝试使用优化器时 任何 Kendo 都不会加载 包括其中任何一个都会引起著名和
  • idn_to_ascii():INTL_IDNA_VARIANT_2003 已弃用

    我正在为我的网站使用 codeigniter 框架 但在 form validation 中我收到错误 我按照 stackoverflow 中的此链接操作 但它对我不起作用 跟随链接 5 2 17 中的 idn to ascii https
  • Python - 查找图像中对象的中心

    我有一个具有白色背景和非白色对象的图像文件 我想使用 python Pillow 找到对象的中心 我在 C 中发现了类似的问题 但没有可接受的答案 如何找到物体的中心 https stackoverflow com questions 12
  • SoapCore Asp.net core 3.1 标头

    知道如何使用 SoapCore 为我的调用添加标头吗 到目前为止我所拥有的 在startup cs中 app UseSoapEndpoint
  • 在同一事务上读取和修改 - Bigtable

    我正在构建一个优惠券系统 并且正在使用 Bigtable 我的架构有两列 客户 ID 和优惠券代码 我想查询表以检查客户是否已存在 如果为真 则返回代码 如果为假 则使用 ID 修改客户 ID 单元格并返回代码 我看到 Bigtable 中