
Vladislav
07.05.2018
10:33:04
я бы сделал первую заливку до ренейма, а то вдруг кто читать захочет таблицу, так хоть часть данных будет
потом сделал бы подмену через ренейм, поток переключается на новую таблицу, и надо сверить старую с новой, что все новые записи, пока переливали, дошли, если нет, долить
ну а что делать со старой таблицей, там уже сами разберетесь

Evgeniy
07.05.2018
10:34:22

Google

Vladislav
07.05.2018
10:34:26
при этом в новой таблице вы можете сразу разобраться с партициями

Evgeniy
07.05.2018
10:35:26
это сейчас выглядит более интересным вариантом.... удаление неделю или две наверное бы шло

Artur
07.05.2018
15:29:47
какая бд сейчас лидирует в скорости по insert?

Ilia
07.05.2018
15:32:04
Текстовый файл

Старый
07.05.2018
15:35:22
инсерт тоже может быть разным, одно дело инсертить 1 гуид в 1 таблицу, другое дело инсерт на лист А4

Artur
07.05.2018
15:35:56
скорее на а4, но связей нет

Старый
07.05.2018
15:36:58

Artur
07.05.2018
15:37:38
читать нужно, но там скорость совсем не роляет, поэтому не критично

Старый
07.05.2018
15:37:51
ну тогда вот 2 бд я назвал
clickhouse ещё можно глянуть

Sheldhur
07.05.2018
17:24:23

Google

Sheldhur
07.05.2018
17:24:36
монго

lost
07.05.2018
17:24:49

Sheldhur
07.05.2018
17:25:14
мускуль

Михаил
07.05.2018
17:25:39
Ребят, привет. Кто нибудь из вас знает про шаблон Model View? Это упрощенный MVC и содержит контроллер во view.
Нужно просто инфы про него побольше а в инете худо как-то....

Sheldhur
07.05.2018
17:26:20
MVVM

Ilia
07.05.2018
17:31:19

Sheldhur
07.05.2018
17:31:34
model
имеет ли смысл существование первого индекса? isDefault 0 или 1, на одного userId не больше 15 строк будет
{ fields: ['userId', 'isDefault'], order: 'ASC' },
{ fields: ['userId'], order: 'ASC' },

Ilia
07.05.2018
17:35:47
что значит первого?
а, допёрло...

Sheldhur
07.05.2018
17:36:12
из представленных
userId с isDefault = 1 естественно один

Ilia
07.05.2018
17:38:28
Ну очень сложно сказать. С одной стороны, да, покрывающий индекс может быть (селективности такое поле в индексе добавит мало).
С другой стороны, вероятность использовать этот индекс как покрывающий, достаточно мала.
Если ты имеешь в БД запросы под такой индекс, ну сделай его, хуже он не будет.
Я лично НЕ ВЕРЮ в покрывающие индексы, потому что запросов много обычно , и покрываются только , ну, скажем, 5ая часть в лучшем случае.
Поле лишнее добавил — бац, уже не покрывается индексом.

Sheldhur
07.05.2018
17:40:11
селекты будут только при удалении userId с isDefault = 0

Ilia
07.05.2018
17:40:51
Также выгода от использования покрывающего индекса относительно мала.
Поэтому я лично "не верю" в них, не учитываю их наличие при проектировании БД.
С другой стороны, у тебя могут быть запросы какие-то специфические, где эта малая толика, дающая покрытие, будет важна.

Sheldhur
07.05.2018
17:42:03
что значит покрывающий? в двух словах

Ilia
07.05.2018
17:42:15

Google

Ilia
07.05.2018
17:43:18
что значит покрывающий? в двух словах
Покрывающий запрос индекс даёт возможность запросу не обращаться к записям таблицы, а обрабатывать данные только на основе данных в индексных записях этого индекса.
Таким образом немного экономится IO
(очень немного обычно, но это зависит от плана запроса)

Sheldhur
07.05.2018
17:44:00
ну значит мне не пригодится, мне всё равно остальные поля доставать

Ilia
07.05.2018
17:44:12
да

ко?TEXHIK
07.05.2018
17:44:36
То есть по сути это такой индекс, который есть на все поля where?

Ilia
07.05.2018
17:45:07
Нет, все поля, нужные данному запросу из данной таблицы
Они могут быть в любой части запроса , в любой фразе

ко?TEXHIK
07.05.2018
17:45:36
А разве простая выборка ускоряется из индекса?

Sheldhur
07.05.2018
17:45:52
да

Ilia
07.05.2018
17:45:56
Смотря какая выборка и какой индекс

ко?TEXHIK
07.05.2018
17:46:09
Ну я имею ввиду просто получение данных.

Ilia
07.05.2018
17:46:27
Смотря какой запрос.

Sheldhur
07.05.2018
17:46:38
вначале ищется по полям в индексе, потом в полученных строках по остальным свойствам

ко?TEXHIK
07.05.2018
17:46:47
Индекс же!=кеш

Ilia
07.05.2018
17:46:53
select * from theTable - например, никогда не будет ускоряться никаким индеком

ко?TEXHIK
07.05.2018
17:47:19
А select col1 from t where id = 17

Sheldhur
07.05.2018
17:47:20
ну и если индекс соствавной ['userId', 'isDefault'], а ты ищешь по userId то работать он не будет
вроде

Ilia
07.05.2018
17:47:25

Sheldhur
07.05.2018
17:47:35
разве?

Google

ко?TEXHIK
07.05.2018
17:47:49

Ilia
07.05.2018
17:47:52

ко?TEXHIK
07.05.2018
17:48:42
Ну я вот это имею ввиду простой выборкой. Когда поле не участвует ни в каких операциях, а его просто достать нужно

Ilia
07.05.2018
17:48:52

Admin
ERROR: S client not available

ко?TEXHIK
07.05.2018
17:49:50
А ну вот. В начале просто неверно выразился не поля из where, а поля из любых условий.
и что ?
Ну по такому полю индекс не поможет, верно?

Виктор
07.05.2018
17:51:59
Может стоит пойти почитать за данную тему? Информации пруд пруди, с пояснениями, ситуациями, схемами.

Ilia
07.05.2018
17:52:12
А select col1 from t where id = 17
В контексте обсуждения покрывающих индексов если col1 есть в индексе с id , не важно, на каком месте (кроме ест. первого), то запрос может использовать только индекс,
не выбирая при этом основную запись таблицы. А если добавить в запрос ещё и col2, он уже не сможет использовать только индекс.

Sheldhur
07.05.2018
17:52:59
сам индекс будет больше

Ilia
07.05.2018
17:53:23
Нет, там будут наносекунды разницы

Sheldhur
07.05.2018
17:53:46
я про ситуацию если индекс составной, а ищешь по одному полю из составного индекса

Ilia
07.05.2018
17:54:14
Он больше будет несильно, на 1 байт, и сравнение несильно медленнее.
Так что разницы не будет практически

Sheldhur
07.05.2018
17:54:50
1 байт на запись? :)

Google

Ilia
07.05.2018
17:54:57
да

Sheldhur
07.05.2018
17:54:58
а если их миллион?

Ilia
07.05.2018
17:55:27
и чё? Ну , миллион. А 8 байт на ID тебя конечно не волнуют?

Sheldhur
07.05.2018
17:56:11
чёт сомневаюсь, надо будет почекать

Ilia
07.05.2018
17:56:48
Почекай

Старый
07.05.2018
17:57:20
Почекай
а если там надо доставать файл(например чек) при запросе

Ilia
07.05.2018
17:57:36
Чего?

Sergey
07.05.2018
17:58:13

Ilia
07.05.2018
17:58:33
Чего?
Вы хоть пишите когода, подумать попытайтесь...

Sheldhur
07.05.2018
17:58:54
ы

Ilia
07.05.2018
17:58:55
что написали
В общем ладно, я домой...

Sheldhur
07.05.2018
17:59:30
кстати о файлах и прочих блобах, стоит ли вынести их в отдельную таблицу?

Старый
07.05.2018
18:01:06
я админ а не кодер.
ну вот возьмём ситуацию, есть информация гуиды, всякая инфа о фирме, и чек о продаже сам, есть 6 полей(фирма, дата продажи, ключ, сертификат,место продажи,продавец, и сам собственно чек) всё хранится в бд, и нужно составить запрос, который бы собрал всю инфу об продаже

Ilia
07.05.2018
18:13:01

Sheldhur
07.05.2018
18:13:23
мускуль innodb

Ilia
07.05.2018
18:14:11
Как правило они и так хранятся физически отдельно