parquet format: advise on log content
Your second solution sounds great, and to use it in the most effective way, look for broadcast variables in Spark. 

Then, you're using the features available in spark to optimize it.

Reference: https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-broadcast.html