Вопросы с тегом «database-design»

11
Супертип / Подтип, выбирающий категорию: полное непересекающееся или неполное перекрытие

Я создаю базу данных инвентаризации, которая хранит ИТ-оборудование, такое как настольные компьютеры, ноутбуки, коммутаторы, маршрутизаторы, мобильные телефоны и т. Д. Я использую шаблон супертипа / подтипа, где все устройства хранятся в одной таблице, и конкретную информацию помещается в таблицы...

11
Возможные преимущества хранения нескольких значений в одном поле одной строки вместо отдельных строк

Во время нашей последней еженедельной встречи человек, не имеющий опыта работы в администрировании баз данных, поднял этот вопрос: "Будет ли сценарий, который оправдывает хранение данных в виде строки (строки) вместо нескольких строк?" Давайте предположим таблицу с именем, countryStatesгде мы хотим...

11
База данных для эффективного диапазона совокупных запросов?

В качестве упрощенного примера, предположим, у меня есть такая таблица: seq | value ----+------ 102 | 11954 211 | 43292 278 | 19222 499 | 3843 Таблица может содержать сотни миллионов записей, и мне нужно часто делать такие запросы: SELECT sum(value) WHERE seq > $a and seq < $b Даже если seqон...

11
Структура базы данных SQL для API RESTful

Я создаю RESTful API. Я изо всех сил пытаюсь выбрать лучший способ для создания моих таблиц базы данных вокруг моих ресурсов. Изначально я думал, что таблица с ресурсом будет хорошим способом, но теперь я беспокоюсь, что это приведет к экспоненциально большим таблицам по мере продвижения по цепочке...

11
Лучшие практики для истории / временных таблиц?

Предположим, у меня есть объект, с определенными полями, которые я хочу отслеживать историю, и определенными полями, которые я не хочу отслеживать историю. С точки зрения нормализации, следующая схема в порядке: CREATE TABLE MyObject AS ( MyObjectId INT IDENTITY NOT NULL PRIMARY KEY, MyObjectField1...

11
Когда использовать несколько таблиц в DynamoDB?

Лучшие практики DyanmoDB дают понять, что: Вы должны поддерживать как можно меньше таблиц в приложении DynamoDB. Наиболее хорошо разработанные приложения требуют только одну таблицу. Я нахожу забавным то, что почти каждый урок, который я видел по работе с DyanmoDB, имеет многостольный дизайн. Но...

11
Как связать две строки в одной таблице

У меня есть таблица, где строки могут быть связаны друг с другом, и логически, отношения между двумя строками (в основном, без направления). (И если вам интересно, да, это действительно должна быть одна таблица. Это две вещи одного и того же логического объекта / типа.) Я могу придумать пару...

11
Временная действительность и отношения первичного / внешнего ключа

Я прочитал несколько уроков оракула, которые показывают временную достоверность и временные характеристики. Однако в примерах, которые я прочитал, в демонстрационных таблицах не используется первичный ключ. http://docs.oracle.com/cd/E16655_01/appdev.121/e17620/adfns_design.htm#ADFNS1005...

11
Должен ли я использовать UUID, а также ID

Я уже некоторое время использую UUID в своих системах по разным причинам - от регистрации до отложенной корреляции. Форматы, которые я использовал, изменились, поскольку я стал менее наивным из: VARCHAR(255) VARCHAR(36) CHAR(36) BINARY(16) Когда я дошел до последнего BINARY(16), я начал сравнивать...

11
Должен ли я добавить транзитивные внешние ключи?

Простой пример: есть таблица клиентов. create table Customers ( id integer, constraint CustomersPK primary key (id) ) Все остальные данные в базе данных должны быть связаны с Customer, например, Ordersтак: create table Orders ( id integer, customer integer, constraint OrdersPK primary key...

11
Добавление обнуляемого столбца в таблицу стоит более 10 минут

У меня проблемы с добавлением нового столбца в таблицу. Я пытался запустить его пару раз, но после более 10 минут работы решил отменить запрос из-за времени блокировки. ALTER TABLE mytable ADD mycolumn VARCHAR(50); Полезная информация: Версия PostgreSQL: 9.1 Количество рядов: ~ 250К Количество...

11
Как смоделировать тип объекта, который может иметь разные наборы атрибутов?

У меня возникли проблемы при воссоздании базы данных с отношением один-ко-многим (1: M) между пользователями и элементами . Это довольно просто, да; тем не менее, каждый элемент относится к определенной категории (например, автомобиль , лодка или самолет ), и каждая категория имеет определенное...

11
Хранение IP-адресов - varchar (45) против varbinary (16)

Я собираюсь создать таблицу с двумя полями - IDкак BIGINTи IPAddressкак либо varchar(45)или varbinary(16). Идея состоит в том, чтобы сохранить все уникальные IP-адреса и использовать ссылку IDвместо фактической IP addressв других таблицах. Как правило, я собираюсь создать хранимую процедуру,...

10
Каковы соображения производительности между использованием широкого PK против отдельного синтетического ключа и UQ?

У меня есть несколько таблиц, в которых записи могут быть однозначно идентифицированы в нескольких широких областях бизнеса. В прошлом я использовал эти поля в качестве PK, имея в виду следующие преимущества: Простота; нет посторонних полей и только один индекс Кластеризация обеспечивает быстрые...

10
Структура базы данных инвентаризации, когда элементы инвентаря имеют различные атрибуты

Я создаю базу данных инвентаризации для хранения информации об оборудовании предприятия. Устройства, которые база данных отслеживает в диапазоне от рабочих станций, ноутбуков, коммутаторов, маршрутизаторов, мобильных телефонов и т. Д. Я использую серийные номера устройств в качестве первичного...

10
Нужен ли отдельный столбец Id для этой таблицы «сопоставления»?

У меня есть таблица Producersи таблица Products, которые имеют вид: Id - int, первичный ключ Name - нварчар Производитель может нести несколько Продуктов, поэтому я собирался создать таблицу под названием ProducerDetails: ProducerId - int, Внешний ключ для Producers.Id ProductId - int, Внешний ключ...

10
Проект хранилища данных для отчетности по данным для многих часовых поясов

Мы пытаемся оптимизировать дизайн хранилища данных, который будет поддерживать отчетность по данным для многих часовых поясов. Например, у нас может быть отчет за месяц активности (миллионы строк), который должен показывать активность, сгруппированную по часу дня. И, конечно, этот час дня должен...

10
Обеспечение соблюдения ограничений «на расстоянии двух столов»

Я столкнулся с некоторыми проблемами при моделировании электрической схемы в SQL. Структура, которую я хотел бы захватить, part ←────────── pin ↑ ↑ part_inst ←───── pin_inst где «inst» - это сокращение от «instance». Например, я мог бы иметь в partкачестве операционного усилителя LM358 с pins 1OUT,...

10
Дизайн базы данных для обработки 1 миллиарда строк и подсчета

Мы получаем данные GPS в режиме реального времени со скоростью около 5000 pr. минута (с 4-х TCP-серверов). Каждый сервер использует одно соединение для вставки данных и буферизует данные между вставками. Приблизительно каждые 15 минут служба извлекает эти данные и обрабатывает их в командировках....

10
Как правильно обеспечить уникальные записи в дизайне временной базы данных?

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