Complex data come from different application contexts. In order of handling and manage them, it is important to define suitable representation models which underly the main data features. Another challenge regards analysis systems and data exploration techniques, which support the whole Knowledge Discovery in Databases (KDD) process. Investigating and solving representation problems for complex data and defining proper algorithms and techniques to extract models, patterns and new information from such data in an effective and efficient way are the main challenges which this thesis aims to face. In particular, two main aspects have been investigated, that are the way in which complex data can be modeled (i.e., data modeling), and the way in which homogeneous groups within complex data can be identified (i.e., data clustering). The application contexts that have been objective of such studies are time series data, uncertain data, text data, and biomedical data.