NS stands for NameServer also called domain name servers (DNS). Domain names like www or mycompany.com each have a numeric address called an Internet Protocol (IP) address. They look like 192.168.0.144 and are very user unfriendly. In order to make them friendly for users, we assign names to the numeric IP address and the Name Server converts (resolves) the name to it's IP address. For example, when you type in www.mycompany.com in your browser, a name server converts the www to the numeric address transparently to the user.
Every domain must have at least one and preferably two name servers (for fault tolerance). The hostname is the name you can assign to the computer. It could be something like computer1.mycompany.com or www.mycompany.com or mail.mycompany.com. You probably should use WWW since I'm guessing your trying to host a website.
Your name servers question is simply what name would you like your name servers (DNS) to be called?
ns1.mycompany.com or domainserver.mycompany.com.
NS1 and NS2 are pretty standard names for name servers that people readily recognize, so I'd just leave the names as NS1 and NS2.
Just to clarify, the prefix is simply the first part before the first period from the left. I.e., if the domain server full name is ns1.mycompany.com, the prefix is ns1.