
Ilia
07.05.2018
18:15:14

Sergey
07.05.2018
18:15:25

Sheldhur
07.05.2018
18:15:58
не делаю

Ilia
07.05.2018
18:16:22
В базу,

Google

Sheldhur
07.05.2018
18:18:59
ну хотя бы потому что придется костылять хранилище для файлов, т.к. запрос файла из дирректории где их over9000 будет по моему дольше, чем из базы по id
особенно если файлов много и они мелкие

Sergey
07.05.2018
18:20:39
Разбивай файлы на поддериктории и храни путь до них

Sheldhur
07.05.2018
18:21:27
ну хз, это мне в базу лезть за путем, потом ещё сам файл тыркать
а так по идее сразу

Ilia
07.05.2018
18:21:56
Тоже не сразу

Sergey
07.05.2018
18:22:01
Зато файл будет отдавать nginx, а не MySQL

Sheldhur
07.05.2018
18:22:24
не, мне его не просто отдать надо, а ещё подправить
если бы всё так просто было :)
файлов 500к +

Al
07.05.2018
18:36:45
Блоб ему база сразу отдаст. Да еще подправит налету. А между делом заварит чаю и наделает бутеров и все в один такт проца видимо ?

Sheldhur
07.05.2018
18:38:38
ну на сколько мне известно торрент трекеры, например, хранят файлы в базе

Google

Sheldhur
07.05.2018
18:38:44
а не в фс

Al
07.05.2018
18:39:21
И феи с эльфами и птички из леса с песнями. Кто пересмотрел мультиков Диснея?

Sheldhur
07.05.2018
18:41:14
сами торрент файлы
а не раздачи
в среднем файл 100 Кб

Виктор
07.05.2018
18:43:48
СУБД не очень хорошо ворочают блобы. в большистве случаев сходить в фс быстрее.

Sheldhur
07.05.2018
18:45:02
учитывая количество раздач на более менее популярном трекере я чёт плохо себе представляю какую вложенность каталогов надо организовать, чтобы в директории было файлов столько сколько фс вывезет

Sergey
07.05.2018
18:49:18

Sheldhur
07.05.2018
18:51:00

Виктор
07.05.2018
18:51:09
пффф...

Sheldhur
07.05.2018
18:51:16
это выходит 60к файлов на директорию
это уже медленно для фс

Виктор
07.05.2018
18:51:58
100 директорий на каждый уровень 10к файлов в директорию. Уже получаем 10 млн. файлов

Sergey
07.05.2018
18:52:06

Sheldhur
07.05.2018
18:52:42
хм, видимо криво посчитал

Vadim
07.05.2018
18:53:06
Берём PK, создаём структуру каталогов, кладём туда файл. Например, PK-13579, путь к файлу /1/3/5/7/9/13579

Sheldhur
07.05.2018
18:53:16
меньше 10к на директорию ещё приемлимо

Sergey
07.05.2018
18:54:01

Vadim
07.05.2018
18:54:15
Можно играться разрядностю, например, /01/35/79/13579

Google

Vadim
07.05.2018
18:54:58
Или /135/759/13579

Al
07.05.2018
20:04:28

Sergey
08.05.2018
05:04:02

Al
08.05.2018
05:04:28

Vladislav
08.05.2018
06:33:15

Denis
08.05.2018
07:18:57
Привет, Mysql query error: (1117) Too many columns (400) вот такую ошибку получаю, какое ограничение у MySQL есть на количество свойств в таблице?
в данной таблице в каждой строке заполнено максимум 8-10 столбцов, остольное NULL

Vladislav
08.05.2018
07:26:02
Но колонка же есть, причем 400 штук, я так понимаю ?

Ilia
08.05.2018
07:50:55

Denis
08.05.2018
07:51:17
да чего вы взяли что их там 400? :))
их там уже под 1000

Vladislav
08.05.2018
07:51:32
значит 1117

Denis
08.05.2018
07:51:32
и это ограничение InnoDB
да не уверен конечно

Vladislav
08.05.2018
07:51:59
а ты в курсе, как хранятся данные?

Denis
08.05.2018
07:52:01
думаю это совсем не гуд при такой заполняемости
такую таблицу генерит самописный компонент для Битрикса

Vladislav
08.05.2018
07:53:02
это не ответ

Denis
08.05.2018
07:53:27
в смысле как хранятся данные?

Vladislav
08.05.2018
07:54:54
в прямом

Google

Vladislav
08.05.2018
07:55:21
вы понимаете, что у вас чтение и запись оверхеад на пустом месте

Виктор
08.05.2018
07:56:46
их там уже под 1000
Даже для аналитических бд (колоночных), в которых данные расладываются в ширину колонок дохрена.

Denis
08.05.2018
07:58:09
с оверхедом понятно, поэтому буду выпиливать эту радость

Vladislav
08.05.2018
07:59:29

Denis
08.05.2018
08:00:45
а такое получилось потому что в интернет магазие более 1 млн товаров, каждый товар имеет по 8-10 свойств, каждое свойство это один столбец, свойства конечно одинаковые для групп, но и групп то нагенерели уже мама не горюй

Vladislav
08.05.2018
08:01:07
такое получилось, потому что разработчик долбаеб

Admin
ERROR: S client not available

Denis
08.05.2018
08:01:08
я гдето читал что есть БД которые быстры как зар за счет стобцовой организации данных
я так понимаю это не к mysql

Vladislav
08.05.2018
08:01:33
буквально недавно обсуждали с одним, как такие вещи делают
https://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model

Ilia
08.05.2018
08:02:34

Denis
08.05.2018
08:06:18
да пошел выпиливать, как всегда чтобы выпилить надо сначала придумать чем заменить ?

Ilia
08.05.2018
08:06:32

Al
08.05.2018
08:21:06

Виктор
08.05.2018
08:21:09
Колоночные нужны когда нужно "дергать" часть колонок с диска, ну или если на то пошло обеспечить распределенную обработку. Показатель с количеством в миллиард записей ни о чем не говорит.
Применимость зависит от данных и специфику их выбора.

Al
08.05.2018
08:27:03

Google

Denis
08.05.2018
08:28:55

Al
08.05.2018
08:29:49

Vladislav
08.05.2018
08:31:53

Al
08.05.2018
08:32:19
А колоночные бд рулят. Просто мало кто понимает как их пользовать. Нагородят 100500 колонок а потом говорят что у них данные которые не могут быть нормализованы.

Vladislav
08.05.2018
08:41:36
я понимаю, но даже в рамках колоночных бд, один вендор от другого может сильно разница
сравнивать их нет смысла, как и объединять

Vitaliy
08.05.2018
08:43:06
всем привет!!! нужна помощь

Vladislav
08.05.2018
08:43:33
Каждая база заточена под свои конкретные задачи и, хоть и пытаются расширить этот круг задач, пока все не так радужно. Поэтому, если хочется много всего и сразу, то приходится содержать весь этот зоопарк

Vitaliy
08.05.2018
08:43:40
задачка из сбербанка, какой же запрос послать в базу данных чтоб получить ответ

Vladislav
08.05.2018
08:44:10
ох эти собеседования

Ilia
08.05.2018
09:10:51
Плохая задача, идиотская постановка, ничего не проверяет.

Vladislav
08.05.2018
09:12:47

Ilia
08.05.2018
09:12:56
Нет, это не сарказм.