mixa
вообще что захочешь
mixa
для 100 сс можно исользовать любые однобайтовые символы от 0-9a-zA-Z и знаки @#$%*&-+()!":';/?
Anonymous
Что значит "можно"? Стандарта нет никакого?
вообще это ж просто словарь
mixa
не обязательно ограничиваться только видимыми символами у нас 256 вариантов
mixa
не нужен стандарт, нужна схема или готовая библиотечка для перевода из одной сс в другую
Anonymous
mixa
понятное дело, но работать оно будет аццки медленно
mixa
просто с матчастью плохо, не знаю как оптимизировать многочисленные pow
mixa
возведения в степень для больших чисел
mixa
просто я бы хотел еще сохранять картинки в каталоге с датой загрузки
mixa
но можно наоборот имя картинки - дата, а путь sha хэш
Anonymous
Имя картинки - дата -- плохая идея из-за возможных повторов.
mixa
так даже в бд отпадает нужда, зачем хранить атрибуты их можно так получить
mixa
mixa
однозначно, так можно еще теги прикрутить
mixa
кстати да, какую лучше бд юзать для поиска по тегам, датам, размеру
mixa
думал сначала elastic search
mixa
но еще были планы связать с реферам(страниц где эти картинки используются)
mixa
referal
mixa
но пути к постам планируется менять
а pgsql слишком огромный
и я слышал что nosql бд справляются с этим быстрее
mixa
ну вот и все вроде, выговорился )
mixa
а кстати, нет ли у вас чатов на холивары?
mixa
pgsql vs mysql
mixa
спасибо за идею с путями в sha1
mixa
но у меня еще чувство что это будет аццки тормозить прибольшом количестве картинок
mixa
как большие репозитории в git'e
mixa
даже если разбивать пути на на большее количество составляющих, например
sha[0:2]/sha[2:4]/sha[4:6]/....
Anonymous
mixa
всеравно в одном подкаталоге получится очень много вариантов
Anonymous
Ну не знаю... В одной папке всё хранить - наверно ещё хуже. А раз умные люди юзают такой способ с разбивкой на папки - возможно это оптимальный вариант.
mixa
на счет этого однозначно согласен,
все что собираюсь делать уже было реализовано,
и ни в коем случае не считаю что линус глупее меня
просто думаю как лучше разбить в моем случае, и так что бы файловая система не пострадала и скорость была норм
ведь можно
sha1 по 2 символа разбить - это будет макс. по 1024 подкаталога
а можно по 1 символу - это 32 подкаталога, - явно мало(наверно)
и нужно ли делать 100500 подкаталогов на весь sha, ведь это хеш
и есть вероятность что первые символы будут часто повторяться и тогда будут проблемы
и возможно это уже рассуждения о сферическом коне в вакууме..
Aleksandr
mixa
может кто то что то подобное делал? как вы это реализовывали?
mixa
или может есть схожие проекты, где можно что то подобное подглядеть
Aleksandr
стандартный подход - бить по трем первым символам хэша, т.е. будет три уровня вложенности.
mixa
тоесть
sha[0:3]/sha[3:6]/sha[6:9]/sha[9:]
получается в одном подкаталоге может быть макс 32к подкаталога
mixa
не много ли?
Aleksandr
sha[0]/sha[1]/sha[2]/sha
Aleksandr
все
mixa
спс, попробую пока так
mixa
или нет, попробую по 2символа, а потом хз что делать
Aleksandr
делай по одному
Yura
mixa
но это всеравно много для одного подкаталога, не?
какое оптимальное количество подкаталогов для одной папки?(в среднем для ехт3-4)
Roman
mixa
потому что есть еще старые vds
Roman
Roman
mixa
логично, что бы потом к этому не возвращаться, поставил и забыл, а там если будет много файлов они на производительность не повлияют
Roman
mixa
операция поиска каталога по имени в каталоге где много других каталогов
mixa
я так думаю, может я совсем не прав
mixa
может все в корне поменялось, но кучи кэширующих функций и библиотек(на пхп с которыми в том году столкнулся) создают каталоги и подкаталоги для хранения кэширования каких то данных не спроста
mixa
а не хранят все в одном каталоге
mixa
возможно они тоже не правы, но не могут миллионы людей ошибаться (с) мавроди )
mixa
)))
Roman
mixa
тогда зачем это все городят?
Anonymous
https://m.habrahabr.ru/post/152193/
Anonymous
Правда тут вопрос идёт только про удаление. Возможно, остальной функционал (создание/доступ и т.п.) работает нормально... Но кто знает!
Anonymous
Или виндузятники?
Yura
Кстати, для пользователя виндоуз в принципе не плох. А вижуал студия - вменяемая иде.
Anonymous
Тут гоферы, для них вЫзуал студио кодЭ
Anonymous
Roman