Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
Пишем приложение с БД. Разработчики придумали раз в сутки дропать таблицу и соответственно потом ее-же пере создавать уже пустой, для последующего импорта в нее очень большого объема данных(порядка 10 млн. строк) из некоего xml-файлика. Каждый день файлик новый. Простая очистка таблицы разработчику не нравится. Говорит уж очень медленно. Хочет использовать для этого хранимую процедуру, давать учетной записи приложения права на удаление и создание объектов в БД мне очень не хочется. Опять же удаление и пхание больших объемов одновременно, наверное приведет к диким тормозам. MS SQL server 2016. Хочу узнать мнение сообщества. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 10:53 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
FatumX Простая очистка таблицы разработчику не нравится. Говорит уж очень медленно. TRUNCATE медленно?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 10:56 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
можешь пояснить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 10:58 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
FatumX, Ну из всех видов очисток таблицы truncate, пожалуй, самый быстрый. Нужно понимать, как данные в этих 10млн строк ежедневно меняются. Если нужно вычистить 9999999 записей и оставить только одну, то пожалуй быстрее действительно сделать truncate и просто загружать данные заново. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 11:00 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
посмотрел тут.Вариант интерестный. попробую. https://www.techonthenet.com/sql_server/truncate.php Мне бы еще аргументов, для это способа для разраба. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 11:02 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
Беда в том, что никто не знает сколько строк меняется и как. Я вижу только Одно условие. полная очистка данных перед импортом и как можно быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 11:05 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
FatumX, это мышление прикладника... Удаление и создание объектов может привести к ряду нежелательных последствий, в том числе неоднозначность развертывания, управления правами, фрагментация данных из-за "дыр" от таблиц и т.д. Компромиссом может быть truncate таблицы, но эта команда требуется ALTER разрешений на объект, что не всегда приемлемо. По-хорошему же, CRM строится на Integration Services решении. Кроме того, убедитесь, что база данных разрабатывается в проекте Visual Studio, это сэкономит в дальнейшем много времени на использовании версионирования, выпуске релизов, развертывании и так далее. Но, судя, по вопросу, уровень разработчика близок к кустарному. Уж извините за прямоту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 11:39 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
FatumXБеда в том, что никто не знает сколько строк меняется и как. Я вижу только Одно условие. полная очистка данных перед импортом и как можно быстрее. А зачем вообще такая таблица нужна? Для чего эти 10 млн строк? Обычный рецепт: две таблицы. Одна таблица основная постоянная - с индексами, с ограничениями и другими "плюшками". Вторая: промежуточная постоянная, но перед выгрузкой новых данных транкейтиться, и любые индексы дропаются. После загрузки данных индексы создаются заново. Основная таблица обновляется MERGE. Из достоинств: можно отслеживать изменения любым способом, блокировка основной таблицы по времени минимальна. Если разницы между данными много, то MERGE будет дольше работать, чем TRUNCATE + BULK INSERT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 12:00 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
FatumX, можно дать разрешение на выполнение хранимой процедуры. а табличка нужна в течении всего дня? может из неё удалять данные не перед вставкой, а раньше? а что у вас за данные, что 10 млн строк это много? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 12:19 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
Создайте эту свою таблицу как in memory table с опцией sсhema stability, и ничего переделывать в логике приложения - будет не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 12:31 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
DURABILITY = SCHEMA_ONLY, конечно. И импорт, заодно, будет раз эдак в дцать быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 12:34 |
|
||
|
хранимая процедура для пересоздания ограмной таблици. Может так не надо?
|
|||
|---|---|---|---|
|
#18+
uaggsterDURABILITY = SCHEMA_ONLY, конечно. И импорт, заодно, будет раз эдак в дцать быстрее. ну тут смотря что дальше с ней делают, inmemory по прежнему в сторону только oltp. Больше всего нравиться NoParallelForDmlOnMemoryOptimizedTable что убивает абсолютно все радости от inmemory ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2019, 12:37 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=87&tid=1687195]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
21ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 312ms |

| 0 / 0 |
