184 похожих чатов

Коллеги, доброго времени. Пытаюсь подложить разной соломки... Есть исходная таблица в которую

сваливаются сырые данные в основном с типом String.
Есть необходимость из этого формировать MV и там хотелось бы уже типизировать данные.
Для ряда типов есть достаточно удобные функции вроде to<T>orZero, что вроде как позволяет достаточно безопасно загружать данные и мониторить VM на предмет неожиданных нулей (чтоб вовремя отреагировать и оперативно поправить проблему).
Но среди прочих хотелось бы еще применить тип UUID, а для него подобной функции нет.
В связи с этим возникает два вопроса:
1. Какое будет поведение CH если в блоке данных попадется запись с плохими данными (не может привести тип). Будет ли остановлено формирование MV? Отбросится ли весь блок или только эта строка?
Этот вопрос понятно как проверить на практике (и чуть позже дойду до этого).
2. Может есть какая-то практика решения подобных задачь?
Типа через case проверить, сможет ли данные быть приведены к нужному типу, и если нет, то положить их в другое поле типа String.

1 ответов

12 просмотров

1. Это сложный вопрос. Зависит партиционирования и кол-ва строк в insert и еще кучи факторов. Типа у вас таблица + 3 MV (с именами A,B,C) и вы вставляете 5 млн. и на втором млн. случится ошибка на MV B, то в таблице и MV A будет 2млн., а во вьюхах B и С будет 1 млн. 2. Нету решения, на клиенте валидировать. Или вставлять сначала в таблицу ENGINE=LOG, пытаться все конвертировать, если неудачно, откладывать в сторону целиком, если удачно, перекладывать в таблицу

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта