如何在 Azure SQL 的内存中维护表的副本?

问题描述

我是 Azure 的新手,需要帮助。

我们在磁盘上的 Azure sql 中有一个表 USERS。该表由管理团队填充,我们使用表数据。此表用于实现行级安全性 (RLS)。我们现在想要创建一个新的内存优化表并在该表上实现 RLS。为了在内存优化上实现 RLS,表 USERS 也应该进行内存优化。 但是我们不能将 USERS 表移动到内存中,因为它会破坏其他表中的 RLS。 管理团队不会为我们创建另一个内存优化的 USERS 表。

解决此问题的最佳方法是什么?

解决方法

首先要找出管理团队不想创建另一个 USER 表的原因。我怀疑他们担心每张表的内容不同。

您需要在磁盘和内存中都有一个 USER 表。

执行此操作的一种方法是从磁盘上的表同步到内存中的表,请参阅:https://docs.microsoft.com/en-us/sql/relational-databases/replication/replication-to-memory-optimized-table-subscribers?view=sql-server-ver15

您将永远不会直接更新内存中的表,并且表的内容将保持同步。