Итоговая реализация такая:
1. В описании кластера, для replica или node, можно указать необязательный элемент <default_database>.
Смысл такой: если для Distributed таблицы не указана база данных, то использовать default_database.
2. При создании Distributed-таблицы, можно указать пустую строку вместо базы данных, что означает, что база данных не указана.
Пример: ENGINE = Distributed(different_databases, '', test)
Смысл такой: использовать default_database из описания кластера.
Таким образом, можно будет создавать Distributed таблицы, у которых разные реплики смотрят на таблицы в разных базах данных.