Dmitry Belyavsky (beldmit) wrote,
Dmitry Belyavsky
beldmit

SQL Antipatterns

Дочитал книгу "SQL Antipatterns". Книга понравилась.

Непрограммисты могут сходить по ссылке полюбоваться обложкой. Программисты - под кат.



С автором я согласен почти во всем. Собственно, единственное место, где не согласен - это идея хранить файлы в базе. Да, есть ситуации, когда это упрощает жизнь, но для известных мне случаев это неверно.

Набор антипаттернов показался до боли знакомым. За 10 лет я по ним прошелся полностью. И некоторое количество шишек набил, и подпорки ставил. Кое-где не ходил, потому что глупость подхода очевидна. Рассмотрено хранение деревьев, хранение однородных атрибутов, хранение файлов, хранение "расширенных" атрибутов, простейший ORM, рассказано про оптимизацию запросов.

Автор ограничивается стандартом SQL. Поэтому, например, типы данных для массива и hstore - плоский хеш для PostgreSQL, которые позволяют решать часть проблем, но в стандарте отсутствуют, им в качестве решений не упоминаются. А зря - хранить несколько однородных атрибутов, например телефонов, в массиве удобнее, чем в классической "правильной" реляционной схеме, а хеш гарантирует уникальность строкового атрибута и позволяет вешать внешний ключ - что тоже избавляет от недостатков хранения всех атрибутов в одной таблице.
Tags: книги, работа
Subscribe

  • «Цирцея» Мадлен Миллер

    Прочитал «Песнь Ахилла» и «Цирцею» Мадлен Миллер. Сюжет и тематика понятны более-менее всем, кто знаком с греческими мифами. «Песнь» мне не зашла.…

  • Менеджмент во время «Битвы за Британию»

    Где-то по сети ходил текст про то, как реорганизовали в первые дни Битвы за Британию менеджмент выпуска истребителей и всё вокруг, потому что пришёл…

  • Вопрос к маководам

    Я правильно понимаю, что на современных системах, если мне требуется сторонний ядерный модуль, то я должен через recovery mode сначала добавить…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 32 comments

  • «Цирцея» Мадлен Миллер

    Прочитал «Песнь Ахилла» и «Цирцею» Мадлен Миллер. Сюжет и тематика понятны более-менее всем, кто знаком с греческими мифами. «Песнь» мне не зашла.…

  • Менеджмент во время «Битвы за Британию»

    Где-то по сети ходил текст про то, как реорганизовали в первые дни Битвы за Британию менеджмент выпуска истребителей и всё вокруг, потому что пришёл…

  • Вопрос к маководам

    Я правильно понимаю, что на современных системах, если мне требуется сторонний ядерный модуль, то я должен через recovery mode сначала добавить…