【问题标题】:RavenDb Different Database Instance IncludeRavenDb 不同的数据库实例包括
【发布时间】:2021-11-10 10:56:16
【问题描述】:

有没有办法将来自其他 RavenDb 数据库实例的文档包含在我们当前的存储会话中?

问题是基于无法分类 RavenDb 工作室中的收藏,所以滚动并找到一个很烦人 想要的收藏!

换句话说,在同一个文档存储中具有限界上下文是 不好看,所以最好的解决办法是分店做 它也更高效和可读。

我知道将不同的有界上下文存储在同一个数据库实例中并不是最佳实践,但如果我需要它怎么办!

更新

RavenDb 中似乎没有跨数据库功能。

【问题讨论】:

    标签: data-modeling ravendb


    【解决方案1】:

    如果您需要在 2 个不同的 RavenDB 数据库之间传递信息/文档,那么您始终可以使用 External Replication TaskRavenDB ETL task

    RavenDB ETL 任务:
    https://ravendb.net/docs/article-page/5.2/csharp/studio/database/tasks/ongoing-tasks/ravendb-etl-task

    外部复制任务:
    https://ravendb.net/docs/article-page/5.2/csharp/studio/database/tasks/ongoing-tasks/external-replication-task

    通过ETL 任务选项,您可以使用脚本来定义和/或过滤发送到其他 RavenDB 数据库的内容。一旦文档到达目标数据库,您就可以像往常一样使用/加载/包含。

    【讨论】:

    • 这是真的,但它会在第一个数据库中弄乱第二个数据库的许多集合。这不值得。使用 ETL,是微服务架构中推荐的技术,这不是我要问的。 RavenDb Studio 中的集合造成的污染是一个问题。如果有一种方法可以创建文件夹并将集合附加到这些文件夹中,它可能会解决污染问题,也可以解决问题。因此,不再需要创建另一个数据库。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多