@ru_python

Страница 2237 из 9768
Nikolay
16.02.2017
15:35:04
в каком месте?)
ну почитай хоть про релизы, начиная с 9.4, и не задавай таких вопросов

Stanislav
16.02.2017
15:35:14
а как там обстоят дела с поиском, ты знаешь?
как обстоят дела в поисках в документах. просвяти. чтобы рекурсия, схемалесс, вот это вот всё

Nikolay
16.02.2017
15:35:18
hashstore?
JSON/JSONB

Роман
16.02.2017
15:35:41
для key-value hashstore не лучше будет?

Google
Nikolay
16.02.2017
15:35:51
Роман
16.02.2017
15:36:01
а, ну так-то да

Nikolay
16.02.2017
15:36:39
короче, если надо крутой поиск - бери Elasticsearch, он хороший. Если надо более четкие индексы и фильтрацию хитрую по JSON-полям документов - то postgresql

Евгений
16.02.2017
15:37:14
хоть голый sql делай

запарился

Nikolay
16.02.2017
15:37:25
в остальных случаях уже тонкости, иногда и какая-нибудь cassandra заходит отлично

Stanislav
16.02.2017
15:37:37
на самом деле я понял что я не так ненвижу монгу как ненавижу именно нереляционки. стоит один раз запихнуть в любую бд жсон и сразу возникают миллиарды проблем. трекинг изменений, миграции, прикручивание схемы. случаи где один раз засунул какашку и надо лезть чинить

Stanislav
16.02.2017
15:38:28
это потому что нет назначения

оно тупо трудоёмко и всё

Google
Eugene
16.02.2017
15:39:02
это просто не решает твои задачи, вот и все

Nikolay
16.02.2017
15:39:06
оно тупо трудоёмко и всё
опять же, зависит от задачи

Маришка
16.02.2017
15:39:24
@Enchantner Что то да и изменила но, я думаю это не сработает... https://github.com/Marina-chan/telegram_poster_bot/blob/master/bot/main.py

Nikolay
16.02.2017
15:39:30
задача key-value - охренительно скейлиться, чего не умеют реляционки

но это переносит всю говнологику на уровень приложения

Eugene
16.02.2017
15:40:35
@yui_meow а ботов с вебхуками писать уже не модно?

Stanislav
16.02.2017
15:40:38
опять же, зависит от задачи
не зависит оно от задачи. алхимию нельзя научить детектить что жсон поле изменили, от использования схемалесс в разы возрастает логика обработки на аппликации

Stanislav
16.02.2017
15:41:08
это просто данность с которой нужно мириться если у тебя прямо очень подходит задача

Маришка
16.02.2017
15:41:09
Eldar
16.02.2017
15:41:18
Stanislav
16.02.2017
15:41:25
Eugene
16.02.2017
15:41:26
Маришка
16.02.2017
15:41:42
а мы на 1 курсе писал бота для связывания разных диалогов вк)
а я просто пишу ботов что бы заработать на покушать

Nikolay
16.02.2017
15:41:44
так ничего не умеет
детектировать изменения в json? да, почти ничего

но это - редкий кейс

если ты в него упираешься - то ты неправильно юзаешь базу

Eldar
16.02.2017
15:42:22
Nikolay
16.02.2017
15:43:25
ящетаю, key-value база должна решать две вещи

Google
Nikolay
16.02.2017
15:43:49
быструю вставку-чтение и правильную работу со schemaless без выпадения в трейсбеки

Stanislav
16.02.2017
15:44:14
если ты в него упираешься - то ты неправильно юзаешь базу
я в него не упираюсь я просто вынужден каждый раз при редактировании жсона делать flag_modified

Nikolay
16.02.2017
15:44:32
Stanislav
16.02.2017
15:44:33
к тому же сейчас не упираюсь не упираюсь а потом хуяк уперся

Nikolay
16.02.2017
15:44:36
у тебя не реляционка

Stanislav
16.02.2017
15:44:57
у меня моделька в реляционке у которой есть жсонное поле с аттрибутами

Nikolay
16.02.2017
15:45:14
постгря?

Stanislav
16.02.2017
15:45:33
да

вобщем там на самом деле много боли

зеку пришлось хорошо поебаться чтобы всунуть жсон

Nikolay
16.02.2017
15:46:25
ну, ты просто в одной табличке смешал две концепции и паришься теперь

Stanislav
16.02.2017
15:46:27
и у постгри смешные поведения на сложных запросах

Nikolay
16.02.2017
15:47:05
я просто к чему веду - не должно быть в архитектуре миграции структуры json в идеале

потому что это другой тип хранилища вообще

Stanislav
16.02.2017
15:47:55
в тебе говорит монго адепт )

миграции есть всегда это базис вообще

Nikolay
16.02.2017
15:48:40
слушай, при всей моей нелюбви к монге, мапредьюс джоба с дата-локалити - это правильный способ делать массовые изменения в key-value хранилище

миграции есть всегда это базис вообще
да, если разговор идет о реляционках

Stanislav
16.02.2017
15:48:56
на фронтенде чуть табличку подверстали и вместо инта шлется строка, всё пиздец нужна миграция

Nikolay
16.02.2017
15:49:05
key-value работает не так

Google
Nikolay
16.02.2017
15:49:36
это тоже миграция
миграция может быть частным случаем

но редким

Stanislav
16.02.2017
15:50:09
ничего не знаю. схема меняется, старые данные под новую схему обновляются => миграция

Nikolay
16.02.2017
15:50:31
нету схемы в key-value хранилищах в общем случае

что бы там ни обновилось - это проблемы твоего уровня приложения

если прям совсем критичное изменение и надо срочно заапдейтить все записи - тогда да, мапредьюс

но это редкий случай

key-value должен быть максимально простым, в этом его суть

миграциям в этой архитектуре места нет по сути

Admin
ERROR: S client not available

Stanislav
16.02.2017
15:52:03
что бы там ни обновилось - это проблемы твоего уровня приложения
ну при каком то наивном взгляде все проблемы в голове. а при конкретизации уже появляются новые понятия

Stanislav
16.02.2017
15:52:44
еще раз - ты ожидаешь от базы данных. твои юзеры ожидают от базы данные

Nikolay
16.02.2017
15:53:03
каким боком тут вдруг схема появилась?

Stanislav
16.02.2017
15:53:20
и данные в базе должны соответствовать хоть немножко этим ожиданиям

ожидания = схема

Nikolay
16.02.2017
15:53:28
данные в key-value - это блоб по сути, все

Google
Nikolay
16.02.2017
15:53:46
иногда его можно немножко кверить, но в целом это блоб

Stanislav
16.02.2017
15:53:49
т.е. читаем рандом и пытаемся интерпретировать его как мы хотим ?

Nikolay
16.02.2017
15:54:11
и правильный способ в нем что-то поменять (хотя этого делать особо не надо) - это писать мапредьюс

Stanislav
16.02.2017
15:54:14
это блоб на уровне хранения а на уровне аппликации мы ожидаем его распарсить

Nikolay
16.02.2017
15:54:23
и мы о нем даже там знаем только то, что это json и что в нем есть пара таких и таких полей. но тут и смысл schemaless - тебе не надо об этом думать вообще

не надо миграции писать

Nikolay
16.02.2017
15:55:49
ну ты отрицаешь что поменять это "миграция" ?
я более общим термином оперирую

Stanislav
16.02.2017
15:55:59
а не надо более общим

Nikolay
16.02.2017
15:56:01
миграция - это что-то из мира реляционок

Stanislav
16.02.2017
15:56:11
у более общего нет смысла

Nikolay
16.02.2017
15:56:26
отнюдь

Stanislav
16.02.2017
15:57:08
миграция - это что-то из мира реляционок
миграция это раньше ты хранил int но с како го то времени хочешь хранить {'value': int, 'type':int}

/thread

Nikolay
16.02.2017
15:57:14
когда ты говоришь о большом распределенном key-value хранилище - там нет и не может быть никаких миграций

Aragaer
16.02.2017
15:57:32
есть миграция, когда schemaless хранило данные в одном формате, а теперь хранит в новом, а мы не хотим в коде иметь преобразование из старого в новый или наоборот

Nikolay
16.02.2017
15:57:37
миграция это раньше ты хранил int но с како го то времени хочешь хранить {'value': int, 'type':int}
вот и делай это в реляционках, schemaless key-value к этому отношения не имеет

Aragaer
16.02.2017
15:57:45
в key-value может поменяться принцип именования ключей

Nikolay
16.02.2017
15:58:06
Stanislav
16.02.2017
15:58:07
>а мы не хотим в коде иметь преобразование из старого в новый или наоборо но мы всёравно вынуждены это делать алё

Nikolay
16.02.2017
15:58:14
короче говоря, мапредьюс и все такое

Страница 2237 из 9768