Hardware Recommendations to make installations hum
Eric WautersiFacto Business Solutions NV
Development Manager
April 22, 2023
Agenda
• Basics• Native DB Server• SQL Server• Terminal Services• Clients & NAS• Network
Agenda
• Basics– Why pay attention to hardware?– Native vs. SQL Server– Core Components
• Native DB Server• SQL Server• Terminal Services• Clients & NAS (Navision Appl Server)• Network
Basics - Why paying attention to hardware?
• Performance Tuning Areas:– Application: 80-90%– Infrastructure: 10-20%
• You need a solid base• Quick fix
Basics - Differences Native – SQL Server
Microsoft Native DB Microsoft SQL ServerSingle logical db - multiple files (up to 16)
Multiple logical databases - each db multiple filegroups - each filegroup multiple files
DB Size limit 128 Gb (256 or 512 with special agreement)
No real DB size limitSingle processor Multiprocessor32 bit only 32 bit and 64 bit1GB RAM only Large RAM supportNot cluster aware Cluster awareBackup: Client based or HOTCOPY
Various backups strategies
Interfacing through Client, NAS, C/ODBC,C/FRONT
Various interfaces (API, ODBC, etc...)
Feature rich: Reporting Services, Analysis services, Integration Services, Alerts, Jobs, Security, ...
Basics - Differences Native – SQL Server
Different server options need different hardware
Basics - Similarities Native – SQL Server
– Index is an index, Lock is a lock, Block is a block, Deadlock is a deadlock
– Get data fast, Write data fast!
Basics - Core Components
Core Components
Basics - Core Components
• Memory (RAM)• Processors (CPU)• Disk Subsystem (RAID)• Network• Server settings
Basics - Core Components - Storage Types
• RAID 0• RAID 1• RAID 10• RAID 5
Storage Types - RAID0
987654321
98765432
00 1
Logical Layout RAID0 Physical Layout
Storage Types - RAID1
9876543210
Logical Layout RAID1 Physical Layout
9876543210
9’8’7’6’5’4’3’2’1’0’
Storage Types - RAID1
9876543210
Logical Layout RAID10 Physical Layout
98765
43210
9’8’7’6’5’
4’3’2’1’0’
Storage Types - RAID5
987654321
8-9 parity87644-5 parity2-3 parity2
0 0 1
Logical Layout RAID5 Physical Layout
96-7 parity530-1parity
Agenda
• Basics• Native DB Server
–Hardware recommendations–Server Settings
• SQL Server• Terminal Services• Clients & NAS (Navision Appl Server)• Network
Native – Hardware Recommendations
• Limited possibilities due to limited support.– 1Gb RAM– 1CPU core– Single database per server
Native - Hardware Recommendations
• Dedicated Server• CPU
– 1 CPU for NAV (If necessary: second CPU for +40 users)
• RAM– 1,5 Gb (1 for NAV; 0,5 for OS)
• DISKS– OS – dedicated RAID 1– fdb file – dedicated RAID 1– .fdb > 5Gb
• Split over multiple RAID 1• RAID 10
– 15K RPM
Native - Server Settings
A few tips:– All database files: same file size– Dedicated fysical disks per file– Use commitcache
• Make sure you use a UPS- If creating extra database file:
- Backup/delete db/create db/restore!- DB Cache
Agenda
• Basics• Native DB Server• SQL Server
–Hardware recommendations–Server Settings
• Terminal Services• Clients & NAS (Navision Appl Server)• Network
SQL Server – Recommendations - Core Components
• Memory (RAM)• Processors (CPU)• Disk Subsystem• Server Settings
SQL Server – Recommendations - Memory
Importancememory < > disks = ns compared to ms!
CACHE!
SQL Server – Recommendations - Memory
32 bit vs 64 bit- 32 bit directly addresses up to 4Gb of
memory (232 = 4.294.967.296 bytes
= 4Gb)- 64 bit can address an “indefinite”
amount of RAM (264 = 18.446.744.073.709.551.616 bytes
= 18.446.744.073,7 Gb)
SQL Server – Recommendations - Memory
32 bit – how to use more RAM?Boot.ini:
• /3GB: – Default windows install:
» 2 Gb reserved for kernel (OS)» 2 Gb for usermode
– With /3Gb: » 1 Gb reserved for kernel (OS) » 3 Gb for usermode
• /PAE– “Physical Address Extensions”– memory address extension that enables
support of greater than 4 GB of physical memory
SQL Server – Recommendations - Memory
32 bit – how to use more RAM?SQL Server:
• AWE: to acces memory over 4Gb– “Address Windowing Extensions”– Address Memory over 4Gb as nonpaged memory
» dynamically map views of the nonpaged memory to the 32-bit address space
– You must specify /PAE in boot.ini
SQL Server – Recommendations - Memory
32 bit – Server settings– Min/Max SQL Server Memory
Set the same for ‘constant’ behaviour– Memory
– Check the Windows Server and SQL Server editions limitations
/3Gb /PAE AWE
< 2Gb No No No
2 - 4Gb Yes No No
4 – 16Gb Yes Yes Yes
> 16Gb No Yes Yes
SQL Server – Recommendations - Memory
• 32 bit - Warning when using AWE:– Imposes overhead– Adds initialization time– Memory above 4Gb is only for data
caching, not for:• Plan caching• Sort space• Lock memory
SQL Server – Recommendations - Memory
• What about x64?– Support for large RAM - no boot.ini
changes– Not only data caching, also:
• Plan caching• Sort space• Lock memory=> “Always Rowlock”
SQL Server – Recommendations - Memory
• Windows - Maximum Memory– Windows 2003 (32bit)
• Windows 2003 Standard = 4GB• Windows 2003 Enterprise = 64GB• Windows 2003 Datacenter = 128GB
– Windows 2003 (64bit)• Windows 2003 Standard = 64GB• Windows 2003 Enterprise = 1TB
– Windows 2008 (32bit)• Web Edition: 4GB• Standard Edition: 4GB• Enterprise Edition: 64GB• Datacenter: 64GB
– Windows 2008 (64bit)• Web Edition: 32GB• Standard Edition: 32GB• Enterprise Edition: 2TB• Datacenter: 2TB
SQL Server – Recommendations -Memory
• SQL Server Maximum Memory– SQL 2000
• Desktop Engine = 2GB• Standard Edition = 2GB• Enterprise Edition = 64GB
– SQL2005• Express Edition = 1GB• Workgroup Edition = 3GB• Standard Edition = Operating System maximum• Enterprise Edition = Operating System maximum
SQL Server – Recommendations - Memory
IMPORTANT
On x64 SQL Server platforms you must give the SQL Service account the “Lock Pages in Memory” privilege in order for SQL to use the available RAM
KB Article 918483
SQL Server – Recommendations - Memory
CONCLUSIONMemory Recommendations• As big as you can afford• Rough guidelinesCCU <6 6-50 51-150 151-250RAM 2 Gb 4 Gb 8 Gb 16 Gb
SQL Server – Recommendations - CPU
CPU recommendations• Typically NOT a bottleneck• Cores vs Sockets• Disable Hyper Threading• Redundant
CCU <6 6-50 51-150 151-250CPU Cores 2 2 4 8
SQL Server – Recommendations - CPU
• Windows - Maximum CPU Sockets– Windows 2003 (32bit)
• Windows 2003 Standard = 4CPU• Windows 2003 Enterprise = 8CPU• Windows 2003 Datacenter = 64CPU
– Windows 2003 (64bit)• Windows 2003 Standard = 4CPU• Windows 2003 Enterprise = 8CPU• Windows 2003 Datacenter = 64CPU
– Windows 2008 (32bit)• Web Edition = 4CPU• Standard Edition = 4CPU• Enterprise Edition = 8CPU• Datacenter = 32CPU
– Windows 2008 (64bit)• Web Edition = 4CPU• Standard Edition = 4CPU• Enterprise Edition = 8CPU• Datacenter = 32CPU
SQL Server – Recommendations - CPU
• SQL Server Maximum CPU Sockets– SQL 2000
• Desktop Engine = 2CPU• Standard Edition = 4CPU• Enterprise Edition = 32CPU
– SQL2005• Express Edition = 1CPU• Workgroup Edition = 2CPU• Standard Edition = 4CPU• Enterprise Edition = Operating System maximum
SQL Server - RAID Recommendations
• Three Spindles is a must!– WinOS,Page File,SQL Program files,etc.
• Pagefile.sys– Transaction LOG
• 100% write• Writes all the time (“write ahead”)
– Database File(s)• Read: 80-90%, Write 10-20%• Writes at checkpoints
SQL Server - RAID Recommendations
• What about TempDB:– Used for large operations (e.g. Reindex),
mainly out of hours.– In SQL2005: often 5-10% of IOs on
TempDB files.
SQL Server - RAID Recommendations
• OS, SQL Program files, etc = RAID1• LOG File = RAID1• DB Files = RAID10• (TempDB = RAID1)
• Small disks, not for capacity but for IOPS !
• Do NOT use RAID5.
SQL Server - Disks Summary
– Biggest bottleneck– Think “Spindles” not “Capacity”– As fast as possible
• 15kRPM• RAID 1/RAID10
SQL Server – Server Settings
• MDOP• Auto Create Stats• Auto Update Stats• Auto Shrink – Auto Grow
Agenda
• Basics• Native DB Server• SQL Server• Terminal Services• Clients & NAS (Navision Appl Server)• Network
Terminal Services
• Memory– 64 MB per Dynamics NAV user + 1 GB for OS– Example: (100 x 64) + 1000 = 7.4 GB or 8 GB
• CPU– 10 -15 users per CPU core– Based on client activity; Manufacturing and so on
• Disk– 1Gb per user– Based on activity
• Network– 1 Gigabit Ethernet
Agenda
• Basics• Native DB Server• SQL Server• Terminal Services• Client & Navision Application
Server (NAS)• Network
Clients and NAS
• RAM– 256 MB or greater
• CPU– 2.0 GHz or greater
• Disk– IDE (1 GB of drive space)
• Network– 100 Megabit (No hubs)
Agenda
• Basics• Native DB Server• SQL Server• Terminal Services• Client & Navision Application Server (NAS)• Network
Network
• 1 Gigabit Backbone– SQL– Terminal Services– BizTalk– IIS– Application Servers
• 100 Megabit– Clients
• No hubs only switches
Agenda
• Basics• Native DB Server• SQL Server• Terminal Services• Client & Navision Application Server
(NAS)• Network
What about NAV 2009?
• New architecture Middle Tier
• Only SQL Server
Resources
• Microsoft– Partnersource
http://www.microsoft.com/dynamics/partnersource.mspx– Windows & SQL Server editions:
http://www.microsoft.com/
• Storagesearch.comhttp://www.storagesearch.com/xtore-art1.html
• SQLPerform Ltd.http://www.sqlperform.com