Ответы пользователя по тегу Базы данных
  • В чем можно хранить около триллиона значений key=>value?

    Что пробовали: файловая система (хранение в подпапках вида /a/b/c.../a1.txt, скорость вставки получилась медленная

    Тут много времени уходит на создание папок.

    Есть такой вариант:
    1) Генерируете в памяти по N штук (в завис от размера ram).
    dataBundle (словарь/массив/hashSet или т.п.):
       key = pass[0..M] //первые M символов (играем с этим значением)
       value = [[pass, hash], [pass2, hash2], [pass3, hash3]]
    
    2) Скидываем в файл большим массивом (т.е. построчно будет каждый раз открывать)
    foreach(var bundle in dataBundle)
    {
         // ! не текстовой файл - бинарный
         AppendBytesToFile(d.key, d.value);
        // можем запоминать открытые файлы, чтобы не открывать их потом опять.
    }


    Результат:
    0000.txt
    0001.txt
    ...
    asdf.txt:
       asdf0001 hash1
       asdf0002 hash2
       ...
       asdfZZZZ hash
    Ответ написан
    Комментировать
  • Что нужно знать, чтобы стать специалистом в сфере баз данных?

    Откройте вакансии на hh. Там всё описано.
    Не уверен, что много вакансий где только работа с бд.
    Если джун - требуется бэкендер со знаниями работы с бд. А когда уже появляется опыт работы с бд, тогда и можно идти более узкоспециализировано. ИМХО.
    Ответ написан