When should I move beyond k nearest neighbour
kNN is useful for large data samples

However it's disadvantages are:


Biased by value of k. 
Computation Complexity
Memory Limitation
Being a supervised learning lazy algorithm
Easily fooled by irrelevant attributes. 
Prediction accuracy can quickly degrade when number of attributes increase.


It's usually only effective if the training data is large, and training is very fast.