У меня есть сценарий, когда несколько пользователей будут выполнять процессы импорта, но все они будут работать для разных клиентов.
У меня есть одна базовая таблица, которая получает наибольшее количество обращений при запуске процессов импорта.У меня есть 2 варианта:
- Чтобы иметь одну основную таблицу и выполнять последовательный импорт, создав очередь для процессов импорта.
- Чтобы иметь 300 основных таблиц, по одной для каждого клиента, этопозволит пользователям работать над процессами импорта одновременно, не дожидаясь друг друга.
Кто-нибудь может подсказать, какой из них лучше и почему?
Я даю свои требованияболее подробно на этот раз.Можете ли вы еще раз взглянуть и предоставить свои комментарии после прохождения требований.
Запрос касается моделирования данных для основных функций моего приложения.
У меня есть сценарий, когда несколькопользователи будут выполнять процессы импорта, но все они будут работать для разных клиентов.Кроме того, в то же время клиентские данные могут быть показаны пользователю и также могут быть изменены / вставлены, пока идет процесс импорта для одного и того же или другого клиента.
У меня есть две основные таблицы, которые получаютбольшинство обращений всякий раз, когда запускаются процессы импорта.
У меня есть 2 варианта: 1. Чтобы иметь 2 основных таблицы и выполнить последовательный импорт, создав очередь для процессов импорта.
Таблица 1
ID ClientID SourceID Count ДругоеCol1 AnotherCol2 AnotherCol3
Таблица 2
ID ClientID Порядок идентификаторов AnotherCol4 AnotherCol5 AnotherCol6
- Наличие 1000 базовых таблиц, 2 для каждого клиента (У меня может быть максимум 500 клиентов), это позволит пользователям одновременно работать над процессами импорта, не дожидаясь друг друга.
Дополнительная информация о процессе импорта: 1. Эти таблицы не собираютсябыть использованы в любой отчетности.2. Каждый процесс импорта будет вставлять записи по 20–30 тыс. (7 столбцов) в каждую таблицу.И будет около 40-50 таких импортных товаров в день.3. Во время процесса импорта данные могут быть получены из этих таблиц другим пользователем, а также INSERT OR UPATATED.4. Это будет одна из самых полезных таблиц в приложении.5. BULK INSERT будет использоваться для вставки.6. Кластерный индекс находится на первичном ключе, который является столбцом идентификации.7. Мы также рассматриваем разделение таблиц.
Подскажите, пожалуйста, какой вариант лучше и почему?
Кроме того, если вы предложите перейти с вариантом 2, то это не будетснижение производительности, чтобы создать столько таблиц в базе данных?Должны ли мы в этом случае создать отдельную базу данных для этих 1000 таблиц?
В этот раз я изложу свои требования более подробно.Можете ли вы еще раз взглянуть и предоставить свои комментарии после прохождения требований.
Запрос касается моделирования данных для основных функций моего приложения.
У меня есть сценарий, когда несколькопользователи будут выполнять процессы импорта, но все они будут работать для разных клиентов.Кроме того, в то же время клиентские данные могут быть показаны пользователю и могут быть также изменены / вставлены, в то время как процесс импорта для того же или другого клиента находится в процессе.
У меня есть две основные таблицы, которые получаютбольшинство обращений всякий раз, когда запускаются процессы импорта.
У меня есть 2 варианта: 1. Чтобы иметь 2 основных таблицы и выполнить последовательный импорт, создав очередь для процессов импорта.
Таблица 1
ID ClientID SourceID Count ДругоеCol1 AnotherCol2 AnotherCol3
Таблица 2
ID ClientID Порядок ID CountCol4 AnotherCol5 AnotherCol6
- Чтобы иметь 1000 базовых таблиц, 2 для каждого клиента (У меня может быть максимум 500 клиентов), это позволит пользователям одновременно работать над процессами импорта, не дожидаясь друг друга.
Дополнительная информация о процессе импорта:1. Эти таблицы не будут использоваться в любой отчетности.
2. Каждый процесс импорта будет вставлять записи по 20–30 тыс. (7 столбцов) в каждую из этих таблиц. И будет около 40-50 таких импортных товаров в день.
3. Во время процесса импорта данные могут быть получены из этих таблиц другим пользователем, а также INSERT OR UPATATED.
4. Это будет одна из самых полезных таблиц в приложении.
5. BULK INSERT будет использоваться для вставки.
6. Кластерный индекс находится на первичном ключе, который является столбцом идентификации.
7. Мы также рассматриваем разбиение таблиц.
Подскажите, пожалуйста, какой вариант лучше и почему?
Кроме того, если вы предложите перейти к варианту 2, не станет ли снижение производительности созданием такого количества таблиц в базе данных? Должны ли мы создать отдельную базу данных для этих 1000 таблиц в этом случае?