小编JHF*_*HFB的帖子

当不涉及日期时,分区是否有意义?

我们正在讨论根据快速增长的大小对 SQL Server 2008 中的某些应用程序表进行分区。一个是事件表,通常用于 INSERTS(80% 的查询)或 SELECTS 查找表的主键(20% 的查询)。另一个表是一个“映射”表,它是所有查找主键的 SELECTS。

沿着主键的分区在这里会有帮助吗?我读了很多书,所有经典的分区示例似乎都是按日期分区的数据仓库表。似乎分区有时弊大于利。

你觉得这些表怎么样?

sql-server partitioning

3
推荐指数
1
解决办法
592
查看次数

BIDS 的 async_network_io 问题

这与我之前的问题有关BIDS 和 SSRS Web Portal 中的运行时截然不同

我正在努力刷新 BIDS 中的一些报告,因为它们永远运行。我现在注意到,当我在 BIDS 中刷新报告时,查询将遇到 ASYNC_NETWORK_IO 等待。(也是 CXPACKET,但我明白这与其说是原因,不如说是结果)

帖子需要 ASYNC_NETWORK_IO 的帮助似乎表明 SQL Server 正在等待客户端,我假设在这种情况下是我桌面上的 BIDS。

如果可以从这个信息片段中识别出来,那么问题出在哪里?是我的桌面和它缺乏魅力吗?会不会是网络?我的报表是否在报表端做了太多计算?我还应该看哪里?我该如何解决?

我要补充的是,数据通常永远不会完全返回。相反,我收到以下(冗余)错误消息:

本地报告处理期间发生错误。报告处理期间发生错误。抛出了“System.OutOfMemoryException”类型的异常。

sql-server-2008 ssrs wait-types

3
推荐指数
1
解决办法
1850
查看次数

并行重新分区、排序和哈希匹配

我刚刚开始深入研究查询计划,最近了解到“哈希匹配”很糟糕。不过,我知道很少有事情如此绝对,而且我想确定我是否有错误的哈希匹配。

我的查询包含两个表,使用并行性。它在两个表上使用聚集索引查找,然后在这两个查找之后转到具有分区类型散列的并行(重新分区流)步骤。对于一个表,创建一个位图,然后通过哈希匹配将这两个连接(内连接)。

我的理解是,如果要连接的数据是有序的,则将使用合并连接 - 这是更可取的。聚集索引搜索是有序的。

所以...我想我只是在寻找有关这种情况的一些信息。哈希匹配是否总是遵循流的重新分区?重新分区会忽略顺序吗?或者我不应该被这种“邪恶的”哈希匹配所困扰?

谢谢!!

sql-server-2008

2
推荐指数
1
解决办法
1145
查看次数

应该在 INSERT 之前还是之后对表进行分区?

我有一个相当简单的问题,但事实证明它很难搜索。

我需要创建一个将被分区的表,并将(大量)数据加载到其中。

使用分区创建表或在插入数据后添加分区是否更有效?

附加:为了确保我理解完整的图片,如果我要截断这个表然后再次加载(大量)数据,我应该删除分区然后在加载后添加吗?

ADDTION #2:如果我可以按分区的顺序插入数据,我认为这会比不快吗?

oracle-11g-r2

2
推荐指数
1
解决办法
2547
查看次数

无法将 yyyymmdd 转换为 yyyy-mm-dd - 算术溢出错误

我正在尝试做一些非常简单的事情,但我不明白为什么它不起作用。

我有一个列(sysjobschedules.next_run_datefrom msdb),它是一个格式类似于 yyyymmdd 的 varchar。我想将其转换为日期时间。我使用了相当直接的命令,CONVERT(datetime,next_run_date,112)但我不断收到错误算术溢出错误将表达式转换为数据类型日期时间。

此列中的三个不同值是 20120802、20120803 和 20120806。使用上述相同的函数,我能够成功转换所有三个字符串。

我觉得我一定错过了一些明显的东西......?

sql-server-2008

1
推荐指数
1
解决办法
1万
查看次数