Da stimmt Dein Ansatz nicht.
Du holst über die SP alle Datensätze und führst dann auf dem Ergebnis der SP ein Select durch.
Für das Ergebnis einer SP hast Du aber keinen Index.
Hol Dir über die SP nur die wirklich benötigten Datensätze aus der externen
DB und gib das dann aus.