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

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

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

1 ответов

6 просмотров

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

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

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

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
27
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
11
А чем вам питонисты не угодили?😂
.
79
Хтось використовував Vapor на Windows?
Jaroshevskii
15
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
Тут кста кто-нибудь NeoVim использует?
Simple Sorcerer
13
Какое виндузовое сообщение приходит TTabSheet, что риэлайняться контролы на нем, даже у которых парент другой? Ситуация: открываю форму - кнопок нет, перелистываю на другой т...
Катерина Свиридова
5
Карта сайта