From this SO post i learned that in order to deal with large datasets you should set dataSource.paginator before dataSource.data in ngAfterViewInit.
However when doing this I am not able to set an initial pageIndex using this.paginator.pageIndex.
https://stackblitz.com/edit/angular-mat-table-v2
When I load my data in ngOnInit and the paginator after this in ngAfterViewInit, I am able to set the initial pageIndex: