Over the last decade, dynamic distributed systems have attracted a huge interest among the academic and professional communities. By distributing data storage and processing across autonomous nodes in the network, these systems have emerged as a new generation of distributed systems that can scale easily to millions of nodes. As examples of these systems are P2P systems that adopt a completely decentralized approach to data sharing and processing. There are several features that distinguish these systems from traditional distributed systems, and make it necessary to use new solutions for data management over them. In particular, they need new data access techniques that should be decentralized, dynamic and self- adaptive. This book provides novel techniques for data management in dynamic distributed systems, supplement to traditional approaches. Particularly, it focuses on query processing techniques. The book should be especially useful for developers of distributed applications, e.g. over the web, students and all people who intend to deepen their knowledge about data management in the new generation of distributed systems.