ну смотрите. на второй странице делаете button. если юзер что-то поменял то в $_POST приедут уже другие данные чем были при первой загрузке страницы. к тому же если юзер нажмет в браузере кнопку Назад или Backspace на клаве, то браузер все равно спросит переотправить ли данные.
если не хотите возиться с формами, то можно вообще отправку на ajax сделать. в этому случае можно принудительно отправлять данные без каких либо запросов.
и насколько это оптимальнее, а если вернуться на шаг назад, чтоб подправить данные?
это не оптимально, это правильно.
если юзверь на странице 2 никаких данных не изменял то просто возвращаем его на первую страницу. а если изменял, делаем UPDATE и возвращаем.
неправильный подход. у вас скорость выборки должна рассчитываться не из кол-ва хранимых данных, а из её структуры.
1. индексация
2. для больших массивов данных поля типа blob
в вашем случае при правильно составленном запросе столько, сколько позволяет поле типа integer. 11 нулей после запятой если память не изменяет. и не понятно что такое ~10 ?
10 юзверей что ли? или 10 миллионов? если второе то простой оптимизацией не обойтись.