Size: a a a

Сообщество Python Программистов

2020 June 27

R3

Rud 356 in Сообщество Python Программистов
<Юрий> 👨‍🔬 Чебышев
я черепаху юзаю, но там нет миграций и ещё много чего.
кто-то юзает gino но это только для postgres и тоже в основном недовольны
другие юзают databases + sqlalchemy core + асинхронный коннектор, но там похоже много боли из-за использования sqlalchemy core
Собствнно вот и у меня херня с тем, что я выбрать не могу, а вариантов мало
источник

<Юрий> 👨‍🔬 Чеб... in Сообщество Python Программистов
Rud 356
Собствнно вот и у меня херня с тем, что я выбрать не могу, а вариантов мало
встречаю иногда мысль что пока дб на том же сервере можно забить и юзать синхронно
источник

R3

Rud 356 in Сообщество Python Программистов
Ну я вот в сторону раста гляжу, читаю пока вступительный гайд и смотрю вроде как там прикольная орм есть какая-то, но чет ничего не ясно в плане того, как оно там по качеству работы
источник

R3

Rud 356 in Сообщество Python Программистов
И вообще как там все можно будет связать в единый механизм
источник

l

l|v|l in Сообщество Python Программистов
Есть бд(sqlite3) на 15к уникальных пользователей. Допустим, мне нужно добавить нового пользователя в бд, но мне нужно удостовериться, что его нет в этой бд перед добавлением. На данный момент алгоритм работает следующим образом: берутся все уникальные id каждого пользователя в бд, засовываются в один массив, а далее:

if new_user not in user_list:
   add_user()

Гениально и просто, но данный алгоритм, описанный выше хорошо работает с бд из 10 пользователей, 100, мб даже 1000. А что делать с 15к? Нормально ли сравнивать один новый элемент с массивом, в котором 15к других элементов? Если это ненормально, то как такой объем данных обработать корректно?
источник

R3

Rud 356 in Сообщество Python Программистов
l|v|l
Есть бд(sqlite3) на 15к уникальных пользователей. Допустим, мне нужно добавить нового пользователя в бд, но мне нужно удостовериться, что его нет в этой бд перед добавлением. На данный момент алгоритм работает следующим образом: берутся все уникальные id каждого пользователя в бд, засовываются в один массив, а далее:

if new_user not in user_list:
   add_user()

Гениально и просто, но данный алгоритм, описанный выше хорошо работает с бд из 10 пользователей, 100, мб даже 1000. А что делать с 15к? Нормально ли сравнивать один новый элемент с массивом, в котором 15к других элементов? Если это ненормально, то как такой объем данных обработать корректно?
ЕбАнУтЬсЯ
источник

EA

Eugene Artesius Pask... in Сообщество Python Программистов
l|v|l
Есть бд(sqlite3) на 15к уникальных пользователей. Допустим, мне нужно добавить нового пользователя в бд, но мне нужно удостовериться, что его нет в этой бд перед добавлением. На данный момент алгоритм работает следующим образом: берутся все уникальные id каждого пользователя в бд, засовываются в один массив, а далее:

if new_user not in user_list:
   add_user()

Гениально и просто, но данный алгоритм, описанный выше хорошо работает с бд из 10 пользователей, 100, мб даже 1000. А что делать с 15к? Нормально ли сравнивать один новый элемент с массивом, в котором 15к других элементов? Если это ненормально, то как такой объем данных обработать корректно?
Я бы не брал все значения из бд, а делал бы SELECT WHERE
источник

R3

Rud 356 in Сообщество Python Программистов
Хуйня такая, что я маму рот её ебал
источник

R3

Rud 356 in Сообщество Python Программистов
У тебя будет 50к пользователей и у тебя вылетит в трубу вся оперативка, дак еще и всю бд ебать ради этого одного
источник

R3

Rud 356 in Сообщество Python Программистов
К тому же: сделать поле unique, не?
источник

l

l|v|l in Сообщество Python Программистов
Eugene Artesius Pasko
Я бы не брал все значения из бд, а делал бы SELECT WHERE
Я так и делаю. Беру все значения одного столбца id (уникальный идентификатор)
источник

l

l|v|l in Сообщество Python Программистов
Но их ведь все равно будет 15к
источник

R3

Rud 356 in Сообщество Python Программистов
Ты не понял его идею
источник

R3

Rud 356 in Сообщество Python Программистов
Выбирать конкретно этот айди
источник

R3

Rud 356 in Сообщество Python Программистов
Вернулось тип что-то - значит есть
источник

R3

Rud 356 in Сообщество Python Программистов
Но все еще хуйня
источник

R3

Rud 356 in Сообщество Python Программистов
Зачем делать два запроса, когда можно сделать один?
источник

l

l|v|l in Сообщество Python Программистов
Rud 356
Но все еще хуйня
А шо делать то тогда?
источник

R3

Rud 356 in Сообщество Python Программистов
Я тебе сказал: сделать поле unique, а если уж это айди, то оно должно быть primary key и автоматом unique
источник

R3

Rud 356 in Сообщество Python Программистов
Иначе это нихуя не primary key
источник