@dba_ru

Страница 371 из 718
Asai
06.01.2018
21:55:26
у меня теперь один столбец одной таблицы выступает обозначен в качестве внешнего ключа

однако в основной таблице есть пометка об автоинкрементированни

а в дополнительной таблице нет

так и должно быть?

Google
Simon
06.01.2018
21:57:25
Что то типа "индекса нет иду все по порядку
Ну так-то без индекса СУБД по-любому в фул скан упадет.

Asai
06.01.2018
21:58:00
У тебя диаграмма есть?
нет. я в командной строке делаю

Al
06.01.2018
21:58:08
Ну так-то без индекса СУБД по-любому в фул скан упадет.
Дык без разницы колоночная или нет. Одинаково будет

Asai
06.01.2018
21:58:28
кстати, а как визуализировать таблицу можно?

Simon
06.01.2018
21:59:32
Нет
В каких случаях нет?

Vladislav
06.01.2018
21:59:58
В разных

Simon
06.01.2018
22:00:14
В разных
Любой, самый простой пример.

Абсолютно лысая таблица, в ней 1,5 КК записей. Ни одного индекса. Почему и в какой СУБД не будет фул скана?

Vladislav
06.01.2018
22:01:37
Например, в вертике недавно столкнулся, есть запрос с пачкой джойнов, вывод в 200к записей дает фуллсканы и коста почти в лярд попугаев, тогда как агрегация этих же данных уменьшает попугаев максимум до десятка лямов попугаев и без фуллскана

Simon
06.01.2018
22:03:33
так и должно быть?
тут посмотри https://toster.ru/q/268457

Google
Vladislav
06.01.2018
22:05:19
Какой док? Любую агрегацию, ибо движок сразу работает по другому и агрегирует данные до джойнов

А если надо вытаскивать весь фарш, то да, получай фуллскан

Simon
06.01.2018
22:06:20
Какой док? Любую агрегацию, ибо движок сразу работает по другому и агрегирует данные до джойнов
Угу при выполнении функции агрегирования СУБД не просматривает весь набор?

Vladislav
06.01.2018
22:06:47
И в вертике нет индексов, но есть проекции у таблиц, в них указаны последовательности столбцов и их сортировка. От этого можно получить прирост, но проекция - это физическое хранение данных

aster
06.01.2018
22:06:58
Vladislav
06.01.2018
22:07:30
Угу при выполнении функции агрегирования СУБД не просматривает весь набор?
Нет, если у тебя иннер джойны, то тебе явно не надо смотреть всю таблицу, если есть избыточные данные

Asai
06.01.2018
22:07:39
В workbench ?
спасибо

а как через командную строку посмотреть какие внешние ключи существуют в таблице

Simon
06.01.2018
22:08:17
Vladislav
06.01.2018
22:08:20
Это скорее физическое хранение таблицы

В нужной последовательности и сортировке

Al
06.01.2018
22:09:18
Ну то есть сравнение- это не просто 100+к селектов? Но тут же и апдейт в случае несовпадения?
Там сложно обьяснить что происходит. Нужно картинки показывать. Любое совпадение выделяется в новое множество

Vladislav
06.01.2018
22:09:35
Именно поэтому у многих компаний с этой вертикой начинаются проблемы, когда пытаются накрутить кривые вьюхи на кубы

aster
06.01.2018
22:11:48
Блин, в чем отличие от индексов тогда?

Google
Vladislav
06.01.2018
22:12:12
Но если у тебя в одной таблице данных на 1гб например, то фактически данных может заниматься 1*n, где n - количество проекций

Это очень грубо, ибо есть много НО, начиная от количества столбцов, заканчивая сжатием

Vladislav
06.01.2018
22:14:10
Нет, у тебя кластерный индекс строится по PK и пофиг на остальные столбцы, тогда как супер проекция - это вся таблица

Индекс строится по сортировке и страницам и деревьям, проекция так не работает

aster
06.01.2018
22:15:24
Кластерный да. Но он всего один, и как правило по самому "дешевому" для инсертов полю. А все остальные - некластерные

А блин. Колоночные не для инсертов же

Vladislav
06.01.2018
22:16:21
Но поиск же в индексе работает не так

aster
06.01.2018
22:16:42
Vladislav
06.01.2018
22:17:01
Не для апдейтов, а сейчас скорее для них, просто скорость будет как у строчных бд

А инсерты там как раз быстрые

Vladislav
06.01.2018
22:17:47
Я пока не видел ни одну БД, которая смогла бы инсертить 500к записей в секунду

В один слабенький сервер

aster
06.01.2018
22:19:50
Но поиск же в индексе работает не так
Как не так? Ты про проекции написал, что там хранится

И в вертике нет индексов, но есть проекции у таблиц, в них указаны последовательности столбцов и их сортировка. От этого можно получить прирост, но проекция - это физическое хранение данных

В индексе (составном, некластерном) - все то же самое

Vladislav
06.01.2018
22:21:28
Но проекция читается либо вся, либо только по условию, тогда как индекс читается либо весь, а это фулл скан, либо по условию, но тогда это идет выборка страниц, а в странице может быть избыточно данных, не говоря уже про составной ключ

Google
aster
06.01.2018
22:21:58
Спасиб

Vladislav
06.01.2018
22:22:01
В индексе (составном, некластерном) - все то же самое
Сделай составной индекс по всем полям таблицы и проверь, как это будет работать ?

Admin
ERROR: S client not available

Vladislav
06.01.2018
22:23:01
Я завалил и слушаю. Но кроме вертики ещё кликхаус глянь.
В кх точно не уверен, как там, но там вроде немного другой механизм, у них там множество движков, у каждого свои плюсы и минусы

Vladislav
06.01.2018
22:23:13
Эластик не копал

Al
06.01.2018
22:23:40
Эластик не копал
Он строит индексы для касандры

Vladislav
06.01.2018
22:24:16
У нас логи в эластике собирают и я только и слышу от ребят про боль индексов...

Сам не копал, поэтому на сколько там "боль" не в курсе

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

В вертике можно применять в лоб реляционку, но можно потерять производительность колоночных БД.

У нас вот как табло присобачили в лоб на вертику, по аналогии как на оракл, получили прирост, но как только начинают тягать еще более тяжелое для колоночных БД, то по сути запрос может работать так же, как и на оракле

aster
06.01.2018
22:33:54
Но проекция читается либо вся, либо только по условию, тогда как индекс читается либо весь, а это фулл скан, либо по условию, но тогда это идет выборка страниц, а в странице может быть избыточно данных, не говоря уже про составной ключ
Посмотрел. В мс сиквеле в индексе лежит только значение индекса + указатель на строку данных. Соответственно, если селект только по полю, содержащемкся в индексе - то и данные потянутся только из индекса. Хранится отдельно

aster
07.01.2018
07:14:16
Ты же спать ушел
Я одним глазком ? Уснуть не смог

Che
07.01.2018
07:25:40
Ща кликхаус соберём, попробуем

Ghhhyh
07.01.2018
10:06:58
Подскажите как в python + sqlite3 внести изменение в одно из значений нужной строки. Что надо написать в ('INSERT INTO ... VALUES ...') или надо другой коммандой пользоваться, что бы добавилось/изменилось значение в уже имеющейся строке, а не создавалась новая.

Google
Ghhhyh
07.01.2018
10:19:52
Большое спасибо, получилось

Asai
07.01.2018
11:08:15
подскажите, пожалуйста, как скопировать базу данных с сервера на компьютер

mysql

Alexander
07.01.2018
11:16:25
mysql
mysqldump

Asai
07.01.2018
11:23:39
mysqldump
это файл?

сейчас погуглю, спасибо

Котяй Негодяй
07.01.2018
18:07:57
Жива ли RethinkDB? Спасёт ли её передача в руки сообщества? Есть ли альтернативы?

Страница 371 из 718