was allles wie gelesen und wo warum gesprungen wird ist unbekannt, ob dir selber bekannt auch erst noch die Frage
InputStreams haben zumindest die skip-Methode, dürften in hintere Teile der Datei kommen können,
wie performant alles, vor allem das normale Lesen, RandomAccesFile oder InputStream verwenden, ist das auch Thema?
na, solltest du ja im Grunde gut testen können wenn du dabei bist
java - Best way to get an InputStream for the second half of a file? - Stack Overflow
allgemein aber einmal mehr an das sequentielle Lesen, welches du schon selber im ersten Posting erwähnst, erinnert,
falls keine engen Speichergrenzen (einer von vielen Usern gleichzeitig aktiv), dann dürfte es, egal um welche Verarbeitung es geht, kaum Sprünge/ Parallelität geben,
lies doch einfach wenigstens immer 1 bis 100 MB-Blöcke, egal von wo in der Datei
→ die 10 GB-Datei sind 100 oder 10.000 Lese-Vorgänge, könnte in eigener Methode stehen, ganz egal mit welcher IO-Klasse und welchen sonsten Stand der Verarbeitung des Programm
immer komplett neu Lesen beginnen, mit skip oder RandomAccess dahin, 1 bis 100 MB Speicher reservieren und befüllen usw.,
das kann man auch performanter machen, wenn 80% der Datei mit einer Schleife zu durchlaufen dann sicher empfehlenswert,
aber bedeutend langsamer sollten die einzelnen großen Lesevorgänge nicht sein, wenige Minuten für 10 GB?
ich rechne seit Jahren immer mit Fausregel ‚ein Programm kann 50-100 MB in einer Sekunde einlesen‘, freilich selten wirklich konkret in Java bestätigt 
welchen Art Zeitprobleme bestehen? geht es um jede Sekunde, dann natürlich immer noch was zu verbessern,
aber die Daten werden doch wohl nicht GB-weise pro Minute neu erscheinen?
was jedenfalls nicht relevant sein sollte, ist das erwähnte „Hin- und Herspringen“ beim Lesen aus Datei,
tausendfach einzelne Zeilen von verschiedenen Stellen wären in der Tat ein Problem, und dann die Idee von parallelen Lesen in welcher Form auch immer,
aber das sollte nicht vorkommen, lieber große Blöcke einlesen und nur im Arbeitsspeicher die Kleinarbeit
die Datei muss nicht komplett in den Speicher passen, sofern nur an 2-3 Stellen je ein aktueller MB-Block und ein zweitere im Übergang reichen,
idealerweise sowieso mindestens ein Hauptbereich mit Schleife zu lesen und nur wenige dazu komplizierter gecacht
schlecht wäre freilich, falls über die gesamte Datei hinweg überall etwas zu lesen, so dass selbst tausend 1MB-Ausschnitte nicht zur Abdeckung reichen,
aber das ist ja kaum vorstellbar ungünstig angeordnet, und selbst dann kann man noch auf 100KB usw. runter gehen
problematisch sind Lesevorgänge/ Sprünge auf Ebene von einzelnen Zeilen für große Datenmengen,
ab KB oder wenigstens 10 KB (~Buffergröße BufferedReader) erscheint üblich großes wieder überschaubar,
10 GB werden zu ‚nur‘ 1 Mio. Lese-Vorgänge,