Many scientic applications are I/O intensive and generate or access large data sets, spanning hundreds or thousands of 'files'. Management, storage, efficient access, and analysis of this data present an extremely challenging task. We have developed a software system, called Scientic Data Manager (SDM), that uses a combination of parallel file I/O and database support for high-performance scientic data management. SDM provides a high-level API to the user and, internally, uses a parallel file system to store real data and a database to store application-related metadata. In this paper, we describe how we designed and implemented SDM to support irregular applications. SDM can eciently handle the reading and writing of data in an irregular mesh as well as the distribution of index values. We describe the SDM user interface and how we implemented it to achieve high performance. SDM makes extensive use of MPI-IO's noncontiguous collective I/O functions. SDM also uses the concept of a 'history file' to optimize the cost of the index distribution using the metadata stored in the database. We present performance results with two irregular applications, a CFD code called FUN3D and a Rayleigh-Taylor instability code, on the SGI Origin2000 at Argonne National Laboratory.