Да, использование первичного ключа в таблице данных является хорошей практикой, так как это позволяет уникально идентифицировать каждую запись в таблице.
Чтобы организовать мультиязычную поддержку веб-приложения на Django с двумя таблицами для переводов, можно использовать стандартный подход Django для мультиязычности, а именно использовать модель переводов (django-modeltranslation) или модуль gettext для управления переводами. Это позволит удобно добавлять переводы для каждого языка без создания отдельных таблиц.
Для реализации системы очереди для регистрации абитуриентов в университеты с разделением сотрудников по предметам для приема можно создать модели "Абитуриент", "Университет", "Предмет приема" и "Сотрудник". Затем можно связать эти модели между собой с помощью внешних ключей и использовать функционал Django для работы с очередями (например, django-rq или Celery) для управления процессом регистрации абитуриентов и распределением их на прием к сотрудникам по предметам.