В базе данных есть концепция «представления», которая делает именно то, что вам нужно - она позволяет предоставлять большой набор данных и дает вам свободу изменений схемы БД, если вы позаботитесь о том, чтобы подвергать одни и те же данные пользователь.
Я согласен с вами в отношении веб-служб - это не только объем данных, но и тот факт, что заставить веб-службы работать с Excel (2007 и более поздние версии) далеко не тривиально. Также вы заблокируете свою схему БД так же, как и в представлении.
Для действительно очень большого количества записей вы можете рассматривать хранилище данных - отдельную базу данных, где вы предоставляете доступ только для чтения для целей отчетности и подачи данных из базы данных для чтения / записи. Подача может быть легко и быстро осуществлена через SSIS.
НТН