Thanks for reaching out.
It is possible to use the datagroup to schedule, however datagroups do their trigger check every 5 minutes by default. Therefore you're MAX(id) will work, but it may not be the best use for scheduling as it may send many many schedules a day.
It will however work very well as a
sql_trigger_value for rebuilding a PDT as it will ensure fresh results on every query.
I would suggest creating a schedule on Wednesday mornings, and use a
sql_trigger_value: SELECT MAX(id);; to rebuild any PDT's you may have.
If you have any other questions, please feel free to email firstname.lastname@example.org.