【问题标题】:Azure CosmosDB copy DB Stored ProcedureAzure CosmosDB 复制数据库存储过程
【发布时间】:2020-10-15 03:05:25
【问题描述】:

我有 2 个数据库,一个 prod 和一个 test。我想编写一个存储过程来清空测试,并用 prod 中的项目填充它。产品并不大,大约 2k 项。

如果没有存储过程可以更好地实现这一点,我也对此持开放态度:)

谁能给我指点这方面的任何资源?我目前正在使用批量导入基础程序,但我不知道如何在其中访问另一个数据库的项目。

【问题讨论】:

  • 这个要求有很多方法可以实现。您可以尝试使用诸如 datafactory 之类的东西,这将使一切变得简单。请看我的回答,。
  • 我建议查看 Cosmos DB 的 *changefeed" 功能。至于存储过程,如果您有多个分区,则会遇到问题,因为存储过程的范围仅限于单个分区。除了那:这确实不是可以客观回答的问题,因为有几种可能的方法。

标签: azure azure-cosmosdb


【解决方案1】:

1、使用 Azure 数据工厂。创建管道并使用复制活动进行复制。将您的测试数据库设置为源,将产品数据库设置为接收器。

2,使用Azure Function,然后使用绑定或将代码放在函数体中。

https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-cosmosdb-v2

3、使用 CosmosDB 数据迁移工具。

这是文档:

https://docs.microsoft.com/en-us/azure/cosmos-db/import-data

例如,如果使用 Azure Datafactory 来实现您的要求,您可以按照以下步骤操作:

首先你需要在 azure 上创建一个数据工厂。

第 1 步:创建管道:

第 2 步:创建复制活动:

第 3 步:点击复制活动,创建数据集:

以上是如何创建源数据集,创建汇数据集类似。

第 4 步:然后只需点击调试:

【讨论】:

    猜你喜欢
    • 2019-04-20
    • 2021-10-13
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 2018-05-31
    • 2020-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多