Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
Приходит много данных. В большинстве случаев это insert или update. Транзакции, ссылочная целостность не нужны, поэтому можно использовать NoSql решения. Что-то гугл мне не помогает найти какую-то полезную информацию по этому поводу.
При прочем равном выбор падёт на SQL решение.
9 июл 19, 17:22    [21923630]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
Нужно ли трекать эти insert/update или важно только последнее значение?
Какие типы запросов планируются?
Что даст NoSQL тут по-твоему? В чем затык с реляционной базой? Масштабирование? Репликация? Партиционирование?
Какой объем данных ожидается?

Предварительно можно посомтреть на Cassandra имхо
9 июл 19, 17:51    [21923666]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Можно отсюда посмотреть. https://db-engines.com/en/ranking

По сути эта линка - универсальный ответ. Дальше - нужны какие-то детали.
Хотя-бы стоимость лицензии. Будете платить? Или хочется бесплатного?
9 июл 19, 17:52    [21923668]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 552
redwhite90,
Что за хранилище где не нужна целостность и т.д.?))))
Файл возьми. Писать очень быстро.
9 июл 19, 17:52    [21923669]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
PetroNotC Sharp,
Тоже про файл подумал)
9 июл 19, 17:53    [21923670]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
PetroNotC Sharp
redwhite90,
Что за хранилище где не нужна целостность и т.д.?))))
Файл возьми. Писать очень быстро.


Практически любой временной ряд - просто запись температуры с датчика, там к примеру даже апдейт не нужен.
9 июл 19, 17:55    [21923677]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 552
Sergunka,
Ну стрим с кинофильмами тоже в файл пишут.
9 июл 19, 17:57    [21923678]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Это либо TimeSeries (экзотика) либо EventStore. Последнее работает успешно в банках. Написано кажется
на ДотНете и скорость пишуших транзакций у него отличная.

Насчет updates я не уверен. Надо смотреть архитектурно можно ли update рассматривать как еще один
корректирующий insert. Если архитектурно можно - то взлетит.
9 июл 19, 17:59    [21923683]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
redwhite90
Приходит много данных. В большинстве случаев это insert или update. Транзакции, ссылочная целостность не нужны, поэтому можно использовать NoSql решения. Что-то гугл мне не помогает найти какую-то полезную информацию по этому поводу.
При прочем равном выбор падёт на SQL решение.


Вроде как Кассандра официальный чемпион по этому делу. Скажите объемы записей в секунду тогда боле-менее будет понятно куда двигатся.
9 июл 19, 17:59    [21923685]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
PetroNotC Sharp
Sergunka,
Ну стрим с кинофильмами тоже в файл пишут.


Технически в фильме нет временных тегов и особой нужды выбирать по тегу. Во временном ряду это довольно рядовая операция практически любой МЛ алгоритм Anomaly detection на этом построен.
9 июл 19, 18:02    [21923688]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Ну. Кассандра она имеет лимиты по оперативке. И она больше для UPDATES чеме для INSERTS.
9 июл 19, 18:04    [21923691]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Sergunka
Member

Откуда:
Сообщений: 1843
mayton
Насчет updates я не уверен. Надо смотреть архитектурно можно ли update рассматривать как еще один
корректирующий insert. Если архитектурно можно - то взлетит.


Это в Кассандре реализованно как новая версия для записи. И если мой склероз не изменяет можно вытащить все версии для записи.
9 июл 19, 18:05    [21923694]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
Задача - что-то типа краулинга .SEMRUSH как я понял делает нечто похожее.

Вот тут некто пишет:

https://eax.me/avoid-nosql/
Наконец, Cassandra использует LSM-tree. Этот способ хранения данных подходит далеко не под все нагрузки. Если вы пишите и удаляете много данных (например, решили использовать Cassandra для хранения очередей), это будет работать очень и очень плохо.


Но у нас по идее удалений мало будет
9 июл 19, 18:28    [21923704]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
Sergunka
redwhite90
Приходит много данных. В большинстве случаев это insert или update. Транзакции, ссылочная целостность не нужны, поэтому можно использовать NoSql решения. Что-то гугл мне не помогает найти какую-то полезную информацию по этому поводу.
При прочем равном выбор падёт на SQL решение.


Вроде как Кассандра официальный чемпион по этому делу. Скажите объемы записей в секунду тогда боле-менее будет понятно куда двигатся.


А можно какой-то прув?
9 июл 19, 18:30    [21923705]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 552
redwhite90
много данных.
цифры то будут?
9 июл 19, 18:43    [21923713]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
забыл ник
Нужно ли трекать эти insert/update или важно только последнее значение?
Какие типы запросов планируются?
Что даст NoSQL тут по-твоему? В чем затык с реляционной базой? Масштабирование? Репликация? Партиционирование?
Какой объем данных ожидается?

Предварительно можно посомтреть на Cassandra имхо


Ну по масштабированию однозначно NOSQL должна побеждать.


Это было что-то типа преинтервью в проект, поэтому я не знаю всех деталей. Но меня удивила сама постановка вопроса, что упор на то, что много записей и обновлений. Нужно выбрать хранилище заточенное на такие операции. Про запросы на выборку ничего не известно
9 июл 19, 18:49    [21923720]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7699
Когда в свое время заморачивался скоростью, меня SQL Lite вполне устроил.

По скорости на простых точечных (одна запись) select/insert'ах раз в 7-8 быстрее PostgreSQL, Основное ускорение (на моей задаче) - отсутсвия протокола TCP/IP между прикладным кодом и БД.

Т.ч. не уверен, что даже Non-SQL memory базы работающие через TCP/IP будут быстрее. TCP/IP (даже loopback) привносит слишком большие издержки.

IMHO & AFAIK
9 июл 19, 18:51    [21923723]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
забыл ник
Member

Откуда:
Сообщений: 2811
redwhite90
Это было что-то типа преинтервью в проект, поэтому я не знаю всех деталей. Но меня удивила сама постановка вопроса, что упор на то, что много записей и обновлений. Нужно выбрать хранилище заточенное на такие операции. Про запросы на выборку ничего не известно

Ну может от вас и требовалось пораасуждать, поздавать наводящие вопросы хз. Ибо формулировка - будет много инсертов и апдейтов лишь вычеркивает все заточенное под OLAP, но не сильно упрощает понимание. Тут надо крутиться от других требований
9 июл 19, 19:20    [21923745]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 552
redwhite90
поэтому я не знаю всех деталей.
как узнаешь, приходи.
Сейчас твой вопрос равносилен: "нужно перевезти много груза. Что посоветуете"?
9 июл 19, 19:23    [21923748]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 7699
забыл ник
...будет много инсертов и апдейтов лишь вычеркивает...

ну для меня скорее это вычеркивает PostgreSQL с его vacuum или, по крайне мере, заставляет задуматься и проверить пригодность PostgreSQL на тестах.
9 июл 19, 19:51    [21923767]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
Я тоже заметил что PostgreSQL не игрок клуба TPC* тестов где тусят обычно IBM, Oracle, MS.

Наверное стыдится. Хотя JSONB это они здорово придумали.
9 июл 19, 20:27    [21923779]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
mayton
Member

Откуда: loopback
Сообщений: 40989
redwhite90
Sergunka
пропущено...


Вроде как Кассандра официальный чемпион по этому делу. Скажите объемы записей в секунду тогда боле-менее будет понятно куда двигатся.


А можно какой-то прув?

Никакой она не чемпион. Потому-что конкурса никакого не было. Это ... знаете-ли как чемпионство
среди Стебельков и ФВМясов. Кроме специфичного бенчмарка который написал сам автор никаких других
сравнений не было. Всё нишевое. Специфичное. Вы даже WHERE свободно не можете в кассандре написать.
Предикат не летает для всех полей by default. Просто такова архитектура. Ну а если реально нужно в одной
нише сравнивать. Возьмите сравнение Apache Ignite vs Apache Cassandra. Если таковое сущесствует канешна.

Ну и правила судейства. Что хотим. Скорость транзакций? Это одно. Реакция на падение ноды. И способность
кластера безболезненно ее пережить - это совсем-совсем другое. Вот и попробуйсте просто поставить грамотно
задачу тестирования.
9 июл 19, 20:30    [21923782]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
забыл ник
redwhite90
Это было что-то типа преинтервью в проект, поэтому я не знаю всех деталей. Но меня удивила сама постановка вопроса, что упор на то, что много записей и обновлений. Нужно выбрать хранилище заточенное на такие операции. Про запросы на выборку ничего не известно

Ну может от вас и требовалось пораасуждать, поздавать наводящие вопросы хз. Ибо формулировка - будет много инсертов и апдейтов лишь вычеркивает все заточенное под OLAP, но не сильно упрощает понимание. Тут надо крутиться от других требований


Я думаю, что так и есть. Вопрос собственно в том, чтобы эти ветки выделить и расписать когда что лучше.
9 июл 19, 21:24    [21923800]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
redwhite90
Member

Откуда:
Сообщений: 1901
PetroNotC Sharp
redwhite90
много данных.
цифры то будут?


Как обычно в реальном мире клиент надеется, что бизнес будет расти, поэтому хочет заложить наиболее подходящий продукт под требования известные на данном этапе. Пока это должно быть что-то стандартное(не самописное).
9 июл 19, 21:33    [21923803]     Ответить | Цитировать Сообщить модератору
 Re: Какое хранилище выбрать если будет много insert/update  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 552
redwhite90
Как обычно в реальном мире клиент надеется, что бизнес будет расти
Ну дак напишите за него ТЗ и определите сколько миллиардов инсертов нужно.
9 июл 19, 21:56    [21923811]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Java Ответить