refactor: turn Dialect into a per-driver interface
#9149
Merged
Dialect into a per-driver interface
#9149