Не основні таблиці баз даних є обов'язковим, якщо ваші дані складніші за пост-модель WordPress, вона буде величезною, і в ній багато метаданих, які будуть шукати.
Формат EAV, який WordPress використовує для своєї постмета, не піддається багатокритеріальному пошуку.
Якщо ви поділите свою мета на багато записів, ви матимете численні записи на одну посаду в мета-таблиці публікації, і пошук будь-якої публікації через мета буде набагато повільніше.
Якщо ви зберігаєте всі метаси, серіалізовані в масиві, і матимуть їх лише як один запис у пост-мета, цього разу ви змушені будете робити лише пошук тексту всередині цього мета, і ви не зможете використовувати оператори порівняння безпосередньо у вашому запиті sql.
Не велика проблема, якщо у вашому плагіні не буде тисячі записів і пов'язаних мета.
Але головна проблема, якщо ваш плагін буде робити щось велике.
Ваша ситуація, ім'я файлу як незалежна запис та 3 записи метаданих, що додаються до цього запису, не здаються такими великими. Ви можете використовувати для цього Wordpress post table та мета-таблицю.
Але, якщо люди будуть багато шукати ці 3 мета, ОСОБЛИВО спільно, то я б рекомендував вам створити окремі таблиці.
При такому форматі лише одна таблиця з одним записом, яка також містить всі метаси, буде добре, і запит буде блискавично.
Між іншим, якщо ви використовуєте таблиці WordPress, а також використовуєте кешування запитів, користувач здійснює пошук ваших даних, з часом кешується і несе менше навантаження. Але це не буде настільки розважливим, як робити окремі столи.