Sql server 对数据库的影响是什么:查询两列上有筛选器的表,或查询一列上有两倍记录的表?

Sql server 对数据库的影响是什么:查询两列上有筛选器的表,或查询一列上有两倍记录的表?,sql-server,database,datamodel,sqlperformance,star-schema,Sql Server,Database,Datamodel,Sqlperformance,Star Schema,哪个对数据库性能影响更大 使用两列上的筛选器查询短表(例如2000万条记录) 或 查询一个长表的记录数是一列上有筛选器的短表的两倍 给出一些上下文: 我有一个简单的无方向的连接图,关于人及其与其他朋友/人的关系。终端用户希望搜索一个“人”,然后使用事实表来识别所有相关的人/朋友。 我正在构建一个事实表(星型模式)来保存图形的信息。我的事实表的粒度是一个单度关系(直接关系),由Date和Person维度支持。感兴趣的人可以在节点1\u person或节点2\u person列中 表格定义: REL

哪个对数据库性能影响更大

使用两列上的筛选器查询短表(例如2000万条记录)

查询一个长表的记录数是一列上有筛选器的短表的两倍

给出一些上下文:

我有一个简单的无方向的连接图,关于人及其与其他朋友/人的关系。终端用户希望搜索一个“人”,然后使用事实表来识别所有相关的人/朋友。
我正在构建一个事实表(星型模式)来保存图形的信息。我的事实表的粒度是一个单度关系(直接关系),由Date和Person维度支持。感兴趣的人可以在节点1\u person或节点2\u person列中

表格定义:

RELATIONSHIP FACT TABLE (~40 Million Rows)
 Relationship_ID
 Node_1_person
 Node_2_Person
 Relationship_Strength_Score
 Relationship_Counter
 Relationship_Created_Date


Person_Dimension  (~20 Million Rows)
 Person_Surrogate_Key
 Person_Natural_key
 Person_Name
 Person_Address
 Person_Email
我有两种选择来满足这一要求:

选项#1:我保存关系的倒数,以便最终用户可以搜索一列来查找关系。
选项#2:我避免互惠关系,然后最终用户必须同时查看Node_1_person和Node_2_person列


我不确定,哪个选项对数据库的性能影响更大。

为什么不同时测试两个查询?根据数据库的速度,测试不会花费太长时间。

不幸的是,我无法访问数据库环境。因为我有两个选项#1(互惠)和选项#2(非互惠),我需要知道查询性能的优缺点,以证明模型和我的决定是正确的。但我想你可以接触到这样的人并与他们合作。为什么不准备两个查询并设置一个测试?让我们理智一点,如果你不能测试,你也不能因为性能问题而受到指责。