Perform standard data operations (sort, filter, reduce) on a dataset and analyze the Big O complexity of your approach.
Implement process_dataset(records, minimum_score), where each record is a dictionary containing name and integer score. Return a dictionary with records whose scores meet the threshold, sorted by descending score, and the sum of their scores. For example, [{'name': 'A', 'score': 8}, {'name': 'B', 'score': 3}] with 5 returns {'records': [{'name': 'A', 'score': 8}], 'total_score': 8}. An empty result returns an empty list and total 0.
def process_dataset(records, minimum_score):