def delta(graph, cursor, mongoDB):
    extractor = TableDataExtractor()
    for table in graph:
        sqlKeys = extractor.getPrimaryKeyValues(cursor, table)
        #print "SQL Keys: " + str(sqlKeys)
        mongoKeys = [str(entry[table.primaryKey[0]]) for entry in mongoDB[table.tableName].find()]
        #print "Mongo Keys: " + str(mongoKeys)
        
        sqlSet = set(sqlKeys)
        mongoSet = set(mongoKeys)
        newKeys = sqlSet.difference(mongoSet)
        insertNewKeys(mongoDB, cursor, extractor, newKeys, table, table.primaryKey[0])
        deletedKeys = mongoSet.difference(sqlSet)
        deleteRemovedKeys(mongoDB, deletedKeys, table.tableName, table.primaryKey[0])