• В Postgresql схема: зачем нужна и как я её могу использовать в своих проектах?

    Melkij
    @Melkij
    PostgreSQL DBA
    В оракле схем разве нет?..

    schema - дополнительный уровень структуризации объектов. Как namespace в программировании. И, к слову, входит в стандарт SQL.

    Вы можете сделать таблицы:
    user_subscriptions
    user_orders
    user_favorites
    Вы можете сделать
    user.subscriptions
    user.orders
    user.favorites
    И в этом нет никакой разницы для СУБД. Но может быть удобно разработчику оперировать не с сотней таблиц одним списком, десятки из которых с одинаковыми префиксами (т.к. относятся к своим сущностям), а отдельные схемы по сущностях.

    Пилить же одну таблицу на несколько смысла при этом не так много, зато добавляется хлопот.
    Если вы хотите давать прямой доступ пользователю к базе - то зачем? Не надо так делать в разделяемой среде. Любую СУБД можно положить каким-нибудь интересным запросом. А в то что люди временами будут писать интересные и сильно творческие запросы - по опыту DBA вам гарантирую. Иногда такого наворотят... 0,5тб временный файлов одним запросом, например. Или сожрать 30гб RAM и увести базу в аварийный рестарт от OOM.
    Ответ написан
    1 комментарий