169 похожих чатов

Еще возник вопрос, зачем генерить ключ именно h[0:2] + h[2:4]

+ h[4:6], почему не полный хеш?

13 ответов

13 просмотров

возможно это пригодится, потому что в доках пишут Specifically, hardware using slower drives or network infrastructures tend to exhibit poor performance in buckets or prefixes with a flat hierarchy of objects Что плоская иерархия медленее работает, а такие пути тебе дадут более разветленную иерархи/

Чтобы ls ab* не ставил раком твою систему

Alexander
Чтобы ls ab* не ставил раком твою систему

так там же блочное хранилище ls ab*. Почему листинг объектов должен ложить систему?

Dmitry Sergeev 🇺🇦
так там же блочное хранилище ls ab*. Почему листин...

он систему и не кладёт. он кладёт тулинг, который ожидает что со списком объектов можно работать в памяти.

Sergei Puzyrev
он систему и не кладёт. он кладёт тулинг, который ...

допустим. Но когда я делаю SELECT id FROM table в postgres на 2М таблицу, ФС же не ложится, почему в объектном должно?

Sergei Puzyrev
а оно и не ложится. ложится клиент.

погодите, а как в minio тогда реализуется версионирование файлов? Допустим там всё реализовано примитивно file1.v1 file1.v2 ... file2.v1 ... но в чем собствннно проблема? Клиент выполняет запрос, ему в ответ отдается листинг. Или есть инфа, что сервер minio ложится если там листинг большой?

Sergei Puzyrev
а оно и не ложится. ложится клиент.

да, но клиенту то, по задаче не нужен листинг с s3. Вот есть юзер, у него есть какое-то количество аватарок. Бэкенд в курсе под какими ключами он сохранил аватарки юзера в s3 и скорее всего даже держит эту инфу в базе. То есть задача листинга аватарок для юзера, вообще не сводится к запросу листинга в s3, а сводится к запросу к базе бэкенда - "вывести картинки юзера" Тем более ему предлагали хранить аватарки по схеме hash'а - h[0:2]/h[2:4]/h[4:6]/h в таком кейсе листинг вообще бесполезен, ведь нет смысла запрашивать h[0:2]/h[2:4]/h[4:6]/ - оно вернет просто список хешей, без какой-либо семантики То есть, я в треде совсем не догнал, причём вообще ls ab* и нафига делать листинги в ФС. Я допускаю что minio как-то не очень файлы там хранит, но вряд-ли же оно там делает ls ab* для листинга, допустим если листинг вдруг понадобился, но я полагаю что там реализация листинга явно лучше реализована, чем банальный ls по папке

Dmitry Sergeev 🇺🇦
да, но клиенту то, по задаче не нужен листинг с s3...

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

Sergei Puzyrev
тут палка о двух концах. хранение стейта минио в ...

а вы об эксплуатации. Всё понял. Но тут дело оперейшенов, надо minio изучать Но ваще странно что программист будет так задумываться так сильно в нюансы хранения в minio, мне кажется тут абстракции протекли чутка =)

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
еще вопрос, допустим мы создадим char массив из 10 элементов и присвоим ему через сканф 10 символов. и выведем все символы. Хотел спросить последний элемент /0 будет включать...
Anthem
11
открыть папку в проводнике: 1 - ShellExecute 2 - ExecuteProcess 3 - OpenDocument что лучше выбрать?
Alexey Kulakov
12
Изменение типа с SomeException на String и правда удобней @cheese_hs . А вот такой вариант насколько некрасив еще? loadConfigDB :: IO (Either String ConfigDataBase) loadConfi...
Camara
7
Где в Астане можно купить мясо для шашлыков?
Dancing Іңұқәһүғө
21
Карта сайта