With the rapidly growing number of connected smart devices deployed and diverse services provided in the Internet of Things (IoT), service selection system, which discovers appropriate services for users, is becoming more and more important. However, challenges exist as a result of the highly heterogeneous environments, characteristics of various kinds of users and the expanding number of services offered by many service providers, which have promising applications in IoT. In the meantime, users' contexts (e.g., location, time, and surroundings), wildly utilized in the IoT scenario to better satisfy individuals' demands, raises privacy issues. To address these problems, we propose a privacy-preserving mobile edge computing (MEC) enabled context-aware service selection system over software defined networks (SDN) in IoT to provide suitable services for end users, where the edge nodes (ENs) cache and process information, acting as cooperative learners. Utilizing the users' feedback and the historical records monitored by the SDN-based network, our contextual online learning algorithm achieves high prediction accuracy. Besides, instead of considering them as individual items, we utilize a top-down cover tree structure to handle service data, which supports ever-increasing large-scale datasets and complex situations. We theoretically prove that the accumulative regret of our algorithm has a sublinear bound and our numerical results confirm that our algorithm can handle big data problems while achieving a balance between privacy-preserving level and service selection accuracy.