70MB csv file becomes 32GB index

My guess is the indexing of the geo field is costing you the disk space here.

See Huge difference in index size when bulk indexing geoshapes across ES versions for some detail on indexing options and their costs.

Putting spatial indexing settings aside - if you have very many weather records for the same place it may not be terribly efficient for each of them to describe the exact coordinates of that area with each observation of a day's rainfall. Denormalization may be costing you dearly here.
It may prove better to make your application first geo-query a places index with the shape information indexed in order to then retrieve a list of names/ids that you can then use to query the weather index where place names not coordinates are indexed.

1 Like