如何通过 Python/Boto3 添加 DynamoDB 全局二级索引

2023-12-22

是否可以在创建现有 DynamoDB 表后添加全局二级索引?我将 Python 3.x 与 Boto3 一起使用,但无法找到在创建表后将它们添加到表中的任何示例。


一般来说,是的,可以添加全局二级索引(GSI) 创建表后。

然而,更改可能需要很长时间才能生效,因为构建GSI需要进行表扫描。

如果是boto3, 看一下的文档update_table http://boto3.readthedocs.io/en/latest/reference/services/dynamodb.html#DynamoDB.Client.update_table

例如,你尝试这样的事情:

response = client.update_table(
    TableName = 'YourTableName',
    # ...snip...
    GlobalSecondaryIndexUpdates=[
        {
            'Create': {
                'IndexName': 'YourGSIName',
                'KeySchema': [
                    {
                        'AttributeName': 'YourGSIFieldName',
                        'KeyType': 'HASH'
                    }
                ],
                'Projection': {
                    'ProjectionType': 'ALL'
                },
                'ProvisionedThroughput': {
                    'ReadCapacityUnits': 1,
                    'WriteCapacityUnits': 1
                }
            }
        }
    ],
    # ...snip...
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过 Python/Boto3 添加 DynamoDB 全局二级索引 的相关文章

随机推荐

  • 具有优先级的信号量

    我知道关于Semaphore类中的System Threading命名空间 但我不知道它是否允许等待线程具有不同的优先级 如果两个线程正在等待一个空位 有没有办法让优先级较高的线程拥有第一个空位 来自MSDN 文档 http msdn mi
  • 想用cmake制作独立程序

    我的程序使用giblib和Imlib2库 它是用cmake构建的 它在我的计算机上运行良好 但在其他计算机上则不然 我想原因是我安装了我的程序需要的每个库 但其他库没有 我的目标是制作独立程序 不需要额外安装任何其他库 我应该在cmake文
  • 民意调查结果栏的好技术是什么?

    我正在创建一些民意调查软件 目前正在研究制作民意调查结果图表栏的技术 没什么复杂的 只是一些简单的结果吧 我想知道是否有任何经过验证的 真正的最佳方法 我想到的最好的办法是为每个栏设置一个 div 容器 然后是一个图像或其他一些元素 您可以
  • 搜索并替换整个项目 (Netbeans)

    有没有办法在 netbeans 中进行项目范围的搜索和替换 好像应该有 但我找不到任何相关信息 Thanks 在下面Edit菜单你应该找到一个菜单项Replace in Projects
  • 从表单应用程序打开 WPF 设置窗口 [重复]

    这个问题在这里已经有答案了 可能的重复 WPF UI 关闭时的通知 https stackoverflow com questions 12696649 notification when wpf ui closes 我之前问过一个非常类似
  • 分区的目的是什么

    例如 如果我打算对某些元素进行分区 我可以这样做 Stream of I Love Stack Overflow collect Collectors partitioningBy s gt s length gt 3 forEach k
  • 如果源脚本在函数中运行,为什么 bash 变量不是全局变量?

    通常从另一个脚本获取文件 我可以访问它的变量 如果我从函数内部获取脚本 它的变量aren tglobal 这似乎与联机帮助页相矛盾 FUNCTION函数的局部变量可以使用 local 内置命令来声明 通常 变量及其值在函数及其调用者之间共享
  • 在 Pre 标记中转义 HTML 字符

    我已经安装了语法荧光笔 但为了使其工作 标签必须写为 lt and gt 我需要做的是将所有 lt 和 gt 的 gt 但仅限于 PRE 标签内 所以 简而言之 我想转义 pre 标记内的所有 HTML 字符 提前致谢 tl dr 您需要解
  • 如何使用 Turbo C++ 编译器在 Notepad++ 中编译和调试 C++

    我已经在notepad 中安装了NppExecute插件 我无法弄清楚在 Notepad 中编译和调试 C C 程序的下一步 系统详细信息 a Turbo C 目录 C TC b 操作系统 Windows 7 请提供有关如何设置环境变量和编
  • 用于发现窗口和按钮等对象的 HWND 的程序

    我记得几年前 我使用了一个程序 它能够显示任何 Windows 程序中的任何对象 例如窗口和按钮 的属性和 HWND 我记得 您只需将鼠标悬停在感兴趣的对象上 程序就会显示信息 有谁知道我指的是哪个程序以及在哪里可以找到它 您很可能正在使用
  • Android:在drawable xml、layer-list中,为什么item的宽度在API 19或更低版本中不起作用?

  • 将一个 css 类定位到另一个 css 类中

    您好 我在 joomla 中的一些 css 类方面遇到问题 我在一个模块中有两个 div 一个是包装类 wrapper 另一个是内容类 content 内容在包装内 我想做的是将 css 样式定位到内容类上 通常我只是将 content m
  • WCF basicHttpBinding:回复客户端失败时回滚

    我通过以下方式公开 WCF 服务basicHttpBinding对数据库执行多个操作 我想保证 如果客户端没有收到回复 数据库操作将回滚 没有任何通过 WCF 的事务流 例如 客户端调用在服务器上执行的 DoX 方法 但在完成之前客户端崩溃
  • 如何合并这 3 个 SPF txt 记录

    我有 3 条 SPF 记录 v spf1 include spf protection outlook com all v spf1 a ptr include authsmtp com all v spf1 a mx include sp
  • 插件架构中的 DI (Autofac):每个插件一个单独的 DI 容器可以吗?

    我正在尝试介绍 DI 与Autofac http code google com p autofac 到现有的 Windows 窗体应用程序中 该应用程序具有基本的插件架构 其中每个插件都显示自己的表单 启动时 应用程序会扫描已注册的程序集
  • 子ViewController调整containerView的大小

    My app hierarchy looks something like this 主视图控制器 我们称之为控制器 1 包含一个滚动视图 一个图像和一个指向另一个视图控制器并将数据传递到表视图的容器视图 控制器 1 滚动视图设置为在约束下
  • PHP中的@是什么意思? [复制]

    这个问题在这里已经有答案了 可能的重复 php中 符号有什么用 https stackoverflow com questions 1032161 what is the use of symbol in php 我想知道php代码中 的用
  • Phonegap应用程序错误处理,提交日志到服务器

    我正在开发一个 Phonegap 应用程序 所以我想有没有一种好方法可以以某种方式将应用程序崩溃报告 主要是 javascript 的 console logs 提交到服务器 或者我是否必须手动执行此操作并将其记录到文本文件并提交 您可以使
  • 为什么 Gather() 不使用键变量名?

    虽然很丢脸 但我还是无法完全集中注意力tidyr 具体来说gather 我觉得我错过了一些基本的东西 如果我运行这段小代码 library tidyr x lt data frame var1 letters 1 3 var2 LETTER
  • 如何通过 Python/Boto3 添加 DynamoDB 全局二级索引

    是否可以在创建现有 DynamoDB 表后添加全局二级索引 我将 Python 3 x 与 Boto3 一起使用 但无法找到在创建表后将它们添加到表中的任何示例 一般来说 是的 可以添加全局二级索引 GSI 创建表后 然而 更改可能需要很长