Hi Berthold, for full disclosure, I'm in the Cisco Services org (formerly Advanced Services), my team consults with customers on designs, implementation and optimization of CiscoWorks NCM (and our other NM products).
NCM can run as a standalone system. If you have a smaller deployment (<4000 devices) you can use the embedded MySQL database. This would be a one server deployment.
If you're running a larger deployment OR if you want High Availability (redudant databases that do replication), then you would go up to Oracle or MS SQL Server. In that scenario you'd have 2 app servers and 2 database servers. We've done engagements scaling up to 30k and we can do more.
There's another feature called 'Horizontal Scalability' that allows for multiple app servers to talk to single database servers. This feature allows even more scalability, but it requires a thoughtful design process, especially if you're combining HA and HS.
I'm not sure of the maximum limit of devices, but I know of a customer up to 60k managed devices.
My platform preference is Linux, Solaris, then Windows. However, it is equally supported on all.
It can also be run on VMware ESX if you want/need to virtualize Linux or Windows.