Как наиболее эффективно прочитать и работать с большим csv в Python?
Можно csv в базу данных импортнуть. В том же DBeaver можно просто открыть cvs как базу данных и написать нужный select
Не очень ясно, какие столбцы идентифицируют объект недвижимости в файле. GUID, похоже, относится к факту купли-продажи. Так что поясни, на что смотреть.

Я бы прочитал файл построчно, выбирая Postcode и подсчитывая количество тех или иных значений. Будет объёмно, но уж точно не 20 гигов. Затем посмотрел бы на гистограмму - много ли уникальных Postcode (т.е. тех, которые встречают один раз). Если много, то тогда достаточно посмотреть только на те Postcode, которые встречаются неоднократно. Это позволит уменьшить размер файла. В дальнейшем его можно фильтровать дальше по той же схеме, но с другими полями.