Data extraction is a process that involves retrieval of all format and types of data out of unstructured of badly structured data sources. These data will be further used for processing or data migration. Raw data is usually imported into an intermediate extracting system before being processed for data transformation. Data extraction is a complex process but there are various software applications that have been developed to handle this process.