如何删除谷歌数据存储中的所有条目?

2023-12-23

我创建了一个页面来删除数据存储中的所有条目。我在用self.key.delete()为此,但它已停止工作(它曾经工作过,但不再工作)。

My python删除条目的代码:

class DeletePage(Handler):
    def get(self):
        self.key.delete()
        self.render('deletepage.html')

假如说:

  • 你正在使用ndb library
  • 你有一个models.py包含实体模型的文件

然后你可以尝试这样的事情,连接到应用程序的处理程序之一:

from google.appengine.ext import ndb
import inspect
import models

for kind, model in inspect.getmembers(models):
    if not isinstance(model, ndb.model.MetaModel):
        continue
    cursor = None
    while True:
        keys, next_cursor, more = \
            model.query().fetch_page(500, keys_only=True, start_cursor=cursor)
        if keys:
            ndb.delete_multi_async(keys)
        if more and next_cursor:
            cursor = next_cursor
        else:
            break

如果你有很多实体,上面的实体可能会在一段时间后被杀死DeadlineExceededError(在它应该删除一堆实体之后)。要么你重复这个请求,直到他们全部消失。

或者甚至可以尝试将工作分配给延迟的任务,及时交错,以免有太多同时发生的请求,从而导致实例爆炸。像这样的事情:

from google.appengine.ext import deferred
from google.appengine.ext import ndb
import inspect
import models

def delete_keys(keys):
    ndb.delete_multi(keys)

delay = 0
for kind, model in inspect.getmembers(models):
    if not isinstance(model, ndb.model.MetaModel):            
        continue
    cursor = None
    while True:
        keys, next_cursor, more = \
            model.query().fetch_page(500, keys_only=True, start_cursor=cursor)
        if keys:
            deferred.defer(delete_keys, keys, _countdown=delay)
            delay += 5
        if more and next_cursor:
            cursor = next_cursor
        else:
            break
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何删除谷歌数据存储中的所有条目? 的相关文章

随机推荐

  • 使用 Google Apps 脚本更新 Google 文档中的嵌入图表

    太长了 如何使用文档中的脚本编辑器更新文档中嵌入的表格图表 我知道有一个脚本可以为 Google 幻灯片执行此操作 但我正在尝试在 Google 文档中执行此操作 但找不到任何相关文档 https developers google com
  • 尝试连接到 localhost:5000 Firebase 时出现“无法获取/”

    我正在尝试让 Firebase 上的本地主机服务器正常工作 但我继续在浏览器中收到以下消息 无法获取 我看了一下控制台 它只说 http 本地主机 5000 http localhost 5000 404 未找到 我尝试使用 firebas
  • 外部 swf 卸载后声音继续播放

    我有一个 Flash 应用程序 某种加载外部 SWF 视频播放器的播放列表 我没有对该外部文件的代码访问权限 因此用户可以观看视频或跳到另一个视频 当用户切换到另一个视频时 将加载新的 SWF 文件 问题 如果用户没有看完视频并跳到下一个
  • onClick 里面有两个参数

    我试图在 ReactJs 中的 onClick 上传递两个事件操作 基本上我想要类似的东西 div prop2 value2 this continue project gt 我尝试了 1000 种不同的语法编写方式 div prop2 v
  • 如何将 Python 3 和 Django 与 Apache 结合使用?

    我的目标是使用 Apache 设置 Python 3 我最大的问题实际上是获取 mod python so 在我的一生中 我只找到一个可以下载它的网站 http www modpython org 而我得到的是一堆构建和安装文件 我找不到解
  • Django:在 queryset.update 上发出信号

    如果您使用的是 Django 会发送 pre post delete 信号queryset delete 方法 但不应该也发送 pre post save onqueryset update 也许应该如此 但事实并非如此 update 不调
  • 您在 Netbeans 中创建了哪些有用的宏? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Typescript i18next 不满足约束 'string |模板字符串数组 NextJS

    我正在尝试输入要使用 i18next 进行翻译的对象数组 但变量 navItems 中出现以下消息 我在其中声明 i18next 然后迭代该数组Type NavItemProps does not satisfy the constrain
  • 版权信息的正确语义标签 - html5

    在网站页脚中包含版权声明的最佳且最语义化的标签 方法是什么 将其放入您的
  • 让“$watch”功能远离控制器的最佳实践

    我试图找到一些搬家最佳实践的好例子 watch例如 从控制器到工厂的功能 我发现实际上对于什么是最好的做法并没有一致的意见 我见过注入的例子 rootScope进入工厂并 watch那里的价值变化 另一个建议是尽可能避免它们 并使用ngCh
  • 使用 struct.pack 和 struct.unpack_from 写入数据结构无法正确读取

    我在获取二进制文件中的数据时遇到这个问题 Write data f open path wb start date 2014 1 1 0 0 0 0 end date 2014 2 1 0 0 0 0 for x in range 10 f
  • 检查 HttpWebResponse 是否为空

    我正在向 REST 服务发出 HTTP post 请求 当我收到 HttpWebResponse 返回时 我正在执行以下检查 当我执行 webresponse null 时 我是否还应该检查 responseStream null Http
  • 如何在android服务中处理保持活动连接

    我正在将 asmack 用于 Android IM 应用程序 其中我使用带有 AIDL 接口的远程服务 代替onStartCommand我的服务方法我编写的代码如下 我创建连接 然后使用它登录 当有人在里面运行我的应用程序时onCreate
  • 读取文件附件(例如;.txt 文件)-Discord.JS

    第二次在 StackOverflow 上发帖 对于任何错误我深表歉意 请多多包涵 与标题相同 您如何阅读不和谐附件的内容比方说 txt文件并打印内容 我尝试过fs但不幸的是失败了 我也搜索了文档但也失败了 Ideas 你不能使用fs模块 因
  • 用于从网站提取域的 Google Sheets 公式?

    REGEXEXTRACT A1 A m http s 尝试从网站中提取域名 如果链接是这样的 上面的公式对我有用 https walmart com careers https walmart com careers 但是 如果它已经是一个
  • TYPO3 Extbase:如何在没有原始 sql 查询的情况下获取禁用的相关对象?

    设想 I have following model ContactPerson 与 FrontendUser 有关系 并且是该关系的拥有方 现在我有以下问题 我正在根据活动的联系人激活 停用任务中的 FrontendUsers 当 Fron
  • 尝试下载 MNIST 数据时出现 HTTP 错误

    我正在使用 Google Colab 使用 Python3 和 PyTorch 1 8 在 MNIST 上训练 LeNet 300 100 全连接神经网络 要应用转换并下载 MNIST 数据集 请使用以下代码 MNIST dataset s
  • 通过 git svn 克隆单个 SVN 分支时出现问题

    我在 SVN 存储库上尝试了以下命令 通过 git 仅克隆一个分支 git svn clone http svn supose org supose branches B 0 7 1 但收到以下错误消息 Initialized empty
  • Katalon Studio 与 Selenium [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我一直在使用Selenium https www seleniumhq org 长时间测试软件 我最近安装尝试过卡塔隆工作室 https www
  • 如何删除谷歌数据存储中的所有条目?

    我创建了一个页面来删除数据存储中的所有条目 我在用self key delete 为此 但它已停止工作 它曾经工作过 但不再工作 My python删除条目的代码 class DeletePage Handler def get self