问题标签 [azure-sql-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 优化我的 Azure SQL PaaS 表和/或查询以提高性能
我正在设计一个非常专业的使用模式的桌子。该表将以有限的流量连续记录 - 每秒约 25 条记录,然后我每天晚上运行一个大查询以提取大量数据。
我的表创建脚本目前如下所示:
我的表中目前有大约 6000 万条记录,大小不到 50 GB。
提取数据的查询非常耗时。目前需要一个多小时。我不确定是我的表设计还是查询设计是根本原因(尽管可能两者兼而有之)。
我需要为我指定的一组 TripID 中的每个 TripID 提取最新的 X 个项目。大约有 10k 个不同的 ID,我通常想查询其中的一半。X 在它们之间也有所不同,所以我目前最好的查询方法是生成一个看起来有点像这样的脚本:
(上面的查询在第一个列表中返回每个行程的 690 个实例,在第二个列表中返回 855 个实例,在第三个中返回 45 个,依此类推。查询比这大得多 - 这只是它的一个片段。总共我提取 10-15 百万行)
如前所述,我的表现很糟糕。是云的事吗?它是设计的东西吗?我应该使用聚集索引吗?(对 TripID 进行了尝试,但情况更糟)。我可以以某种方式改进我的查询吗?例如,为每个 ID 提取相同数量的实例,然后过滤?
我注意到我有几个额外的索引可能不会在我的查询中使用。我只是尝试添加更多,因为插入性能不是问题。计划是在我的查询中使用 TripIDRecordTimeIndex。
即使将 Azure SQL 中的数据计划扩展到 S7(800 DPU),我也无法快速运行。任何反馈表示赞赏。
编辑:我最近将 TripID 从 int 更改为 varchar(255) - 这会破坏我的表现吗?
Edit3:发现在我查询的 TripID 周围添加引号 ('') 可以极大地提高性能!
Edit4:我添加了 TheGameiswar 提出的索引 - 区别在于白天和黑夜!谢谢!附上新的执行计划。
azure-container-service - 通过 AZ cli 添加 vnet 规则失败并出现 500 个错误
我正在尝试使用 Azure AKS,但在通过 Azure CLI 为我的 SQL 服务器添加 vnet 规则时遇到了问题。它因错误而死:
请求中发生错误。,RetryError: HTTPSConnectionPool(host='management.azure.com', port=443): Max retries exceeded with url:
/subscriptions/...路径省略.../mysql/virtualNetworkRules/my-vnet-rule?api-version=2015-05-01-preview (由 ResponseError('too many 500 errorresponse',) 引起)
这是我到目前为止所做的:
在这一点上,我最终得到了两个 RG,一个名为“myrg”,一个名为“CM_myrg_mycluster_centralus”。我的 SQL 服务器位于“myrg”中,CM_* 中有一个 vnet“aks-vnet-1234567”。vnet 包含一个子网“aks-subnet”。
然后我尝试添加 vnet 规则:
并得到上面的错误。
我还尝试指定包含数字后缀的 vnet(例如 aks-vnet-1234567)但同样的错误。
这可能意味着我没有在某处使用正确的语法。有人可以澄清一下吗?
AZ CLI 2.0.21 Linux (Ubuntu)
azure - 如何备份可以承受删除 azure 服务器的 Azure SQL
Azure SQL 已内置备份。如果从门户中删除 SQL 数据库和服务器,这些备份将丢失。
什么是备份 Azure SQL 的最佳实践,可以承受从门户中删除服务器。
我已手动将数据库导出到存储位置,但 Azure 表示不应将其用作备份。为什么不应该使用它,我应该怎么做?
azure-sql-database - 如何允许 Active Directory - 集成身份验证并同时禁止 Active Directory - 密码身份验证
我想为管理员用户提供一个 MS Access 数据库,其中包括一些到 Azure SQL 数据库的 ODBC 链接表。
是否可以允许Active Directory - 集成身份验证同时禁止Active Directory - 密码身份验证?即,强制用户在加入域的机器上。
如果除了 MS Access 数据库之外,我还提供了一个指定Active Directory - 集成身份验证的 ODBC 数据源,则用户可能会创建一个指定Active Directory - 密码身份验证的 ODBC 数据源并重新链接本地副本上的表数据库。这将允许用户访问任何计算机上的 Azure SQL 数据库,无论它是否是加入域的(公司)计算机。
sql-server - Azure SQL 数据库超时,只有一个登录请求
我刚刚将生产数据库的副本迁移到 Azure SQL。完成迁移后,我将测试实例的连接字符串指向 Azure SQL 数据库,然后尝试运行该应用程序。
因为我更改了 web.config,所以我当然没有退出。因此,我尝试登录,但遇到了数据库超时问题。
我查看了 Azure 门户中的使用情况图表,仅登录任务就将其固定为 100%。因此,我将 DTU 分配从默认的 10 提高到 100(这当然使它变得更加昂贵),然后再次尝试。
结果相同。
严重地?我需要将 DTU 设置多高才能登录?我很想知道你的经历。对于最简单的操作,我应该期望将 DTU 分配设置为什么?
sql - Azure Sql Server (PaaS) 可以拥有的数据库数量是否有限制?和/或 Azure Sql Server 可以容纳多少数据是否有大小限制?
Azure Sql Server (PaaS) 可以拥有的数据库数量是否有限制?
和/或 Azure Sql Server (PaaS) 可以容纳多少数据有大小限制吗?
sql - 自动增加 SQL Azure 配额
是否有关于如何处理 sql azure 配额限制的最佳实践?也许某种自动增加?
azure-sql-database - HAProxy 负载平衡 Azure SQL 登录失败
我正在尝试为 Azure SQL 实例配置 HAProxy 负载均衡器,我的配置文件如下;
当面向 Azure VM 上的 SQL Server 实例时,此配置文件可以正常工作。但是,当以 Azure SQL 为目标时,由于登录失败,连接被拒绝:“无法打开服务器” 。.. “登录请求。登录失败。(.Net SqlClient 数据提供程序)”我 100% 确定用户名/密码正确。他们一定在路上迷路了。
任何想法为什么会这样?
谢谢,杰森