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

Всем привет, у меня такой вопрос, как хранить данные когда

они динамически типизированы?

Например, есть вот такой payload

{
"name" : "intMetric",
"value" : 1,
"type" : "Int32"
}

( это Protobuf )

Данные в value могут быть как Boolean, так и Float, Double.

Есть какие то best practices?

14 ответов

22 просмотра

Не видел такого описанного. Но из общих соображэний — предлагаю выдать люлей человеку, который в колонку с префиксом int пихает double.

Oleksandr-Serdiuk Автор вопроса
Ilya Anfimov
Не видел такого описанного. Но из общих соображэн...

Это не человек, это спецификация Sparkplug, обычно все совпадает по типам, просто не могу придумать ничего кроме как создать несколько колонок с типами, и суффиксами int, bool, etc

Oleksandr Serdiuk
Это не человек, это спецификация Sparkplug, обычно...

ЯННП. Что значит "не человек". А что человек написал?

Oleksandr-Serdiuk Автор вопроса
Ilya Anfimov
ЯННП. Что значит "не человек". А что человек напи...

Ну логично что если будут данные double, то там будет не будет префикса int, я прислал пример конкретно с int данными 😅

Oleksandr Serdiuk
Это не человек, это спецификация Sparkplug, обычно...

Ну, и вообще — если это данные — то извлеките из них тип на этапе проектирования. Если лог какой-то чего-то, где можэт быть что угодно — то это не реляцыонные данные, можно строкой всё хранить, потом в данные преобразовывать.

Oleksandr Serdiuk
Ну логично что если будут данные double, то там бу...

Выяснить, какие данные будут — и создать под них соответствующее поле.

Oleksandr-Serdiuk Автор вопроса
Ilya Anfimov
Выяснить, какие данные будут — и создать под них с...

Или юзать что-то другое, не Postgres, если заранее неизвестно какие данные будут?

Oleksandr Serdiuk
Или юзать что-то другое, не Postgres, если заранее...

Если не упрётесь в производительность, проблемы синхронизацыи и хаос в данных — то и замечательно. Если упрётесь — сдадитесь опытному DBA, он спроектирует приличную схему под постгрес с учётом вашэго практического опыта.

Oleksandr-Serdiuk Автор вопроса
Ilya Anfimov
Как например.

Оке, спасибо за помощь

Oleksandr-Serdiuk Автор вопроса
Ilya Anfimov
Если не упрётесь в производительность, проблемы си...

Да хаоса быть не должно, данные по сути это временной ряд датчиков сенсоров. И они четко структурированы. Просто тип данных может быть одним из 12 или даже 24, согласно спецификации, и это усложняет задачу немного, так как под эти данные нужно будет писать триггер alerting

Oleksandr-Serdiuk Автор вопроса

Timescaledb показался более простым из-за схожести с Postgres

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта