How to train a model when there is too much training data?
The question is asked in general terms, so the following is also in general terms.  I hope this contributes something to helping you with your specific problem.
One approach would be a variant of cross validation.  You randomly select some portion of the data, and evaluate the result on a second portion of the data. Repeat the entire process until you satisfy your convergence criteria or exhaust your count.  The convergence criteria might be something like getting the same or similar network at some rate.  You can do this in either of two modes, allowing or not allowing reuse of the data.
A second point to keep in mind is that your execution time depends on the length of your "feature vectors" or whatever serves that function in your application.  Selecting the important components of your feature vectors, both reduces the processing time and also can help the training be more successful. Scikit learn has a function SelectKBest() that may be helpful for this.
I have an RNN and way too much training data. Iterating through the data in its entirety will take years. Right now I have two options for training:
1. Do one pass over as much data as possible
2. Find a select portion of the data and train for multiple epochs on it
Which one is better and why?