Поддержка Проблемы и решения Собственные таблицы в БД

  • У меня не проблема, а вопрос к опытным программистам. Как известно есть два вида таблиц в БД вордпресса: основные и дополнительные (мета). Т.е. например wp_posts и wp_postmeta и т.д. В мануалах пишут, что в основные таблицы не нужно записывать данные кастомных типов данных. Это понятно. А стоит ли для своего типа данных создавать отдельную таблицу? Меня этот вопрос интересует с точки зрения производительности в основном. Работают ли мета-таблицы так же, как и пользовательские таблицы?

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Модератор Yuri

    (@yube)

    В мануалах пишут, что в основные таблицы не нужно записывать данные кастомных типов данных.

    В каких? И что Вы называете «данные кастомных типов данных»?

    В таблицу posts пишутся все типы записей («записи» — это термин, в отличие от «данных»), включая кастомные (custom post type).

    В postmeta пишутся неосновные атрибуты записей. Структура таблицы такова, что позволяет с легкостью, без изменения структуры таблицы, добавлять новые ключи и удалять ненужные.

    Работают ли мета-таблицы так же, как и пользовательские таблицы?

    Вопрос лишенный смысла. С одной точки зрения, все таблицы в mysql работают одинаково, с другой — работа зависит от engine, с третьей — в mysql все таблицы пользовательские, кроме таблиц в базе по имени mysql. Впрочем, в каком-то смысле они тоже пользовательские.

    И что Вы называете «данные кастомных типов данных»?

    Я и имел ввиду не основные данные, не правильно выразился, те, которые записываются с помощью плагинов вроде Advanced Custom Fields. То что кастомные типы данных записываются в posts я знаю. Просто хотел узнать, насколько часто на практике программисты создают собственные таблицы в альтернативу мета-таблицам?

    Модератор Yuri

    (@yube)

    насколько часто на практике программисты создают собственные таблицы в альтернативу мета-таблицам?

    Трудно сказать. Снаружи этого не видно, а для публичности не хватает универсальности таких решений. Но не думаю, что часто. Уж слишком заморочисто получается, а пипл нынче ленивый пошел, клаве предпочитает мышь 🙂

    Хотя на высоконагруженных сайтах «горизонтальное» хранение атрибутов (я думаю, Вы его имеете в виду) дает очень заметный выигрыш. А еще больший выигрыш дает отказ от WP в пользу кастомного движка, заточенного под одну конкретную задачу.

    Все зависит от задачи
    Могут быть данные которые не относятся к постам и правильней хранить их в отдельной таблице
    По сути тот же принцип плагинов, они создают таблицы для своих данные, после деактивации таблицы удаляются.

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Собственные таблицы в БД» закрыта для новых ответов.