MSSQL zvládne tolik řádků v pohodě. Doba dotazu je zcela závislá na mnohem více faktorech než jen na jednoduchém počtu řádků.
Například to bude záviset na:
- kolik spojení provede tyto dotazy
- jak dobře jsou vaše indexy nastaveny
- kolik paměti je ve stroji
- rychlost a počet procesorů
- typ a rychlost vřetena pevných disků
- velikost řádku/množství dat vrácených v dotazu
- Rychlost/latence síťového rozhraní
Je velmi snadné mít malou (méně než 10 000 řádků) tabulku, jejíž provedení dotazu by trvalo několik minut. Například pomocí mnoha spojení, funkcí v klauzuli where a nulových indexů na procesoru Atom s 512 MB celkové paměti RAM.;)
Dá to trochu víc práce, abyste se ujistili, že všechny vaše indexy a vztahy s cizími klíči jsou dobré, že vaše dotazy jsou optimalizovány tak, aby eliminovaly zbytečná volání funkcí a vrátily pouze data, která skutečně potřebujete. Také budete potřebovat rychlý hardware.
Vše závisí na tom, kolik peněz chcete utratit, na kvalitě vývojářského týmu a na velikosti datových řádků, se kterými máte co do činění.
AKTUALIZACE Aktualizace kvůli změnám v otázce.
Množství informací zde stále nestačí na to, abychom dali reálnou odpověď. Budete to muset jen otestovat a podle potřeby upravit návrh databáze a hardware.
Například bych mohl velmi snadno mít 1 miliardu řádků v tabulce na počítači s těmito specifikacemi a spustit dotaz „select top(1) id from tableA (nolock)“ a získat odpověď v milisekundách. Stejným způsobem můžete provést dotaz „vybrat * z tabulky“ a chvíli to trvá, protože ačkoli byl dotaz proveden rychle, přenos všech těchto dat po drátě chvíli trvá.
Jde o to, že musíte testovat. Což znamená, nastavit server, vytvořit některé z vašich tabulek a naplnit je. Pak musíte projít laděním výkonu, aby byly vaše dotazy a indexy správné. V rámci ladění výkonu odhalíte nejen to, jak je potřeba restrukturalizovat dotazy, ale také přesně to, jaké části stroje by mohly být potřeba vyměnit (tj.:disk, více RAM, cpu atd.) na základě zámku. a typy čekání.
Vřele bych vám doporučil najmout (nebo uzavřít smlouvu) jednoho nebo dva DBA, aby to udělali za vás.