gpt4 book ai didi

azure - Azure SQL 数据库是否支持内存优化表?

转载 作者:行者123 更新时间:2023-12-04 15:33:02 25 4
gpt4 key购买 nike

我正在尝试查看 SQL Server 2014 和内存优化表及其与 Power BI 的集成。我正在考虑将现有数据库(包含多个内存优化表)迁移到 Azure 的最佳方法是什么? Azure SQL 数据库是否支持内存优化表?

谢谢。

最佳答案

截至 2020 年第 4 季度,Azure SQL 仅在几个定价层中支持内存中 OLTP(又名 MEMORY_OPTIMIZED)。 This is half-documented in this (hard to find) Azure SQL documentation page ,另一半是我从古老的博客文章和 Azure 门户中的反复试验中获取的。

(再次注意,这仅适用于“Azure SQL”,不适用于在虚拟机或托管实例服务中运行全功能 SQL Server)。

这是我制作的流程图:

  • 您使用的是 DTU 还是 vCore?
    • DTU:
      • 您使用的是基本层(5 个 DTU)吗?如果是这样,则不,不支持内存中。
      • 您使用的是标准级别(10-3000 DTU)吗?如果是这样,则不,不支持内存中。
      • 您使用的是高级级别(125-4000 DTU)吗?如果是这样,则是的,支持内存中
    • vCore:
      • 您使用的是通用层吗?如果是这样,则不,不支持内存中。
      • 您使用的是超大规模级别吗?如果是这样,则不,不支持内存中。
      • 您使用的是关键业务级别吗?如果是这样,则是的,支持内存中

您可以通过打开 SSMS、连接到您的数据库(您的实际数据库,而不是主数据库)来了解数据库中是否启用了MEMORY_OPTIMIZED功能>) 并运行:

SELECT DatabasePropertyEx( DB_NAME(), 'IsXTPSupported' ) AS IsXTPSupported;

如果您得到0,则您的数据库不支持内存中 OLTP。如果您得到1,那么它是受支持的。

如果您尝试执行CREATE TYPE dbo.Foo AS TABLE ( ... ) WITH ( MEMORY_OPTIMIZED = ON ); ,您将收到此错误:

Msg 40536, Level 16, State 2, Line 2
'MEMORY_OPTIMIZED tables' is not supported in this service tier of the database. See Books Online for more details on feature support in different service tiers of Windows Azure SQL Database.

<小时/>

老实说,我很失望的是,尽管 Microsoft 一直在大力宣传内存中 OLTP,但大多数 Azure SQL 客户仍无法使用它。更令人惊讶的是,In-Memory 旨在减少 IO 负担,这应该意味着 In-Memory OLTP 将降低微软自己的 Azure 运营成本。我猜他们正在等着看客户如何使用它。考虑到使用它所需的额外技术细节和对系统的透彻理解,客户最终可能会误用它 - 必须保护用户免受自身伤害,你知道。

关于azure - Azure SQL 数据库是否支持内存优化表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31941449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com