Там есть ключ user_id и поле profit UInt64. Ну и event_time там есть еще.
1. Я вставляю user_id: 20 и profit: 100.
2. SELECT sum(profit) FROM table; // все отлично, выводится 100
3. Я еще раз вставляю user_id: 20 и profit: 100.
4. SELECT sum(profit) FROM table; // все равно выводится 100
5. Я вставляю user_id: 20 и profit: 101.
5. SELECT sum(profit) FROM table; // Выводится 201
Короче говоря, повторный инсерт с теми же данными в SummingMergeTree игнорируется. Меня то ли поплавило окончательно под ночь, то ли он в какой-то момент считает profit ключем (?!), то ли я внезапно перестал понимать, как работает SummingMergeTree
> Короче говоря, повторный инсерт с теми же данными в SummingMergeTree игнорируется. Добро пожаловать дедубликация инсертов при вставке
Обсуждают сегодня