The course is structured in such a way as to present important concepts of data mining and how these concepts are implemented and used in real-world applications. The key idea behind this course is to integrate the theory and practice of data mining with many references to real-world problems and cases to illustrate the concepts and the implementation issues as we go through the lectures. The first chapter is devoted to a brief introduction to some background information needed to understand the material. This is followed by data warehouse topic and how different is from database concept. The notion of data mining process is explained and how it relates to the complete KDD process, as it is very important to understand that data mining is not an isolated subject. We will then overview a survey of some techniques used to implement data mining algorithms. We will follow by studying some core topics of data mining; classification ,clustering, and association rules. Other concepts, such as prediction, regression , and pattern matching, will also be covered, but viewed as special cases of the three core topics. In each concept we will only concentrate on the most popular techniques and algorithms.