Публикации по теме 'database-design'


Не забудьте установить блокировки базы данных на ваших объектах Orm
Огромным преимуществом реляционных баз данных являются транзакции и блокировки. Не тратьте его впустую, не используя его В чем еще проблема? Как видите, у нас есть два отдельных запроса, которые изменяют одно и то же поле базы данных. Но поскольку второй процесс прочитал объект до того, как первый процесс записал свое изменение, они оба имеют одинаковую начальную информацию. Это означает, что мы теряем данные, и нет даже намека на то, что это произошло. Итак, как это можно..

Согласованное хеширование с реализацией Java
Цель этой статьи — представить последовательное хеширование вместе с базовой реализацией кода Java. Ссылка на Github также вставлена ​​в конце для справки. Наивный метод хеширования для хеширования ключей в наборе данных пары ключ-значение на наборе серверов заключался в использовании модуля количества серверов. Пример ниже. Но этот метод хеширования может быть очень неэффективным, если добавляется новый сервер или удаляется существующий сервер, поскольку в таких случаях это..

Проектирование приложений, интенсивно использующих данные: транзакции со слабой изоляцией
Одна из лучших книг, которые мне недавно довелось прочитать, — «Проектирование приложений с интенсивным использованием данных» Мартина Клеппманна. Эта книга стала известна своим всеобъемлющим обзором распределенных систем и исследованием различных компромиссов, связанных с выбором дизайна. На полное прохождение у меня ушло 3 месяца, и много времени на то, чтобы впитать то, чему меня учили. В следующей серии постов я хотел бы обобщить некоторые ключевые идеи, которые я извлек из каждой..

Разработайте интерфейс оболочки базы данных.
Часть 2 книги «Заставьте интерфейсы Go работать на вас» На мой взгляд, две общие черты разработчика 10x — это хорошее понимание своего любимого языка и знание того, когда и как можно использовать абстракции для экономии времени. Меньше значит больше; это примерно 10-кратный результат/воздействие, а не 10-кратный код. В этом посте я разработаю оболочку базы данных, которая может поддерживать все функции, ожидаемые от приложения CRUD, которое я хочу создать. *CRUD — создать,..

Нормализация таблиц и проектирование базы данных
Нормализация таблиц — это модный термин, который помогает сделать базы данных управляемыми. В основном они относятся к рекомендациям, сводящим к минимуму избыточность и зависимость внутри и между таблицами. Звучит здорово, если только вы не уверены в том, что означает избыточность или зависимость. Во-первых, представьте себе самую корявую таблицу, которую вы когда-либо видели. Несвязанные данные застревают в столбцах с неправильными названиями, расширяясь по мере прокрутки страницы. Это..

Как модель данных EAV помогла нам
В домене электронной коммерции обычно продукты должны иметь несколько атрибутов, например, имя, описание, цену, артикул, изображение, метаданные и так далее. И это количество свойств может увеличиваться/уменьшаться с течением времени в зависимости от его требований и использования. Что в конечном итоге может привести к изменению таблицы для добавления и удаления столбцов. И это также может привести к пустым столбцам, если этот атрибут больше не используется. Потом мы наткнулись на..

Понимание соединений MySQL
Это третий пост из серии, посвященной производительности MySQL. Эта статья изначально опубликована на https://www.learncsdesign.com Запрос SQL входит в панель и видит две таблицы. Он подходит к ним и спрашивает: «Можно к вам присоединиться?» — Источник: неизвестен Операция объединения преобразует данные из нормализованной модели в денормализованную форму, подходящую для конкретной цели. Поскольку при объединении разрозненных фрагментов данных соединение особенно..