Creating a P2P network like Block Chain
I am wondering how to create a P2P database (like blockchain?) which can be maintained by some party (miners)?


This is quite a big question to answer in one message. There's "Mastering Bitcoin: Programming the Open Blockchain" book that explains all the internals of Bitcoin in details. Also you can refer to Bitcoin Developer Guide – there're answers to all you questions.


  How do I stop spammers?


This is why Proof-of-Work is needed: adding a block to blockchain takes a lot of time and a lot of computations (that's why people buy fast video cards for mining). Thus, spamming is not possible.


  And, how does a Bitcoin node start finding peers?


There're are DNS seeds hardcoded in Bitcoin clients. When a new node is started it queries the seeds to get the IP address of at least one other node.