Reputation: 18797
I'm designing a reporting solution which uses SQL Server 2008 R2 as its backend database. The database schema is fairly simple. One table named Calls
with CallId
PK and one table named Events
which has a foreign key association to calls with fk_CallId
.
Each call has at least 6-7 events and there are 3000+ calls per day logged in db.
I'm a bit worried about how much effect this relation has on the queries' performance. If using inner join
on a table with more than a couple of million rows (Events
) is going to degrade performance very much, I could add a CallerId
field to Events
table a do not use joins (Although I will lose some other information on related Calls
table).
In general, Is there any other step I can do to make sure the performance is ok?
Upvotes: 3
Views: 554
Reputation: 21756
It depends on - how wide your tables are.
Actually - 3000 calls per day is not such a big data, at least for first ten years 8-)
but
if you always want to query all your data - something is wrong by design of application and improving performance in one particular place will not cure all the cons of wrong design.
The steps are:
Upvotes: 3