Daniel
собственно, ровно на ту же тему я читал осенью в ростове на дону
Daniel
https://www.slideshare.net/DanielPodolsky/tk-conf-danielpodolskysqlvsnosql
engelbart
Anonymous
Всем привет, тут можно задавать нубские вопросы? На локалхост работает, пробую запустить на вдс, голанг в консоли все нормально, но с айпи нельзя зайти, пробовал порты ставить 80 и 7777, хостинг 1gb.ru, порты открыты, по тому же айпи открывается панель хостера на php на порту 1234
Valery
Anonymous
да
Anonymous
с ssh
Mikalai
Anonymous
Действительно, код с интернета, http пример helloworld работает, спасибо большое
engelbart
Помогите с выбором хранилища для данных http://telegra.ph/Est-li-takaya-nosql-02-26 , postgres как вариант понятен, оно и сейчас там, но надоели кучи джойнов, хочется какой то документной базы.
Daniel
Удивительно
Daniel
Надоели джойны - сделай одну таблицу, в ней два столбца
Daniel
Первый - уникальный индекс
Daniel
Во второй свали сериализованным все остальное
Daniel
Да хоть jsonом
engelbart
Так, лады. Свалил.
Daniel
И будет ТОЧНО как в nosql
Anonymous
where по приjoin таблице будет?
Daniel
Конечно! Полным перебором
engelbart
Ну да, а выбирать то как потом, мне потмо запросы нужны пот по той , json части выборки
Anonymous
тогда перфомансу конец
engelbart
Я посути про это и спрашиваю, есть ли такая база который этот json или чего там, может индексировать и эфективно потом выбирать
Daniel
А почему вы решили, что в nosql иначе?
Anonymous
в nosql будет тоже самое
engelbart
Я не решил так, я знаю что во многих так, но вдруг есть которая может
Daniel
Постгрес
Anonymous
я бы делал две таблицы
Daniel
Кассандра
Anonymous
и смотрел откуда фильтровать будет дешевле
Daniel
Аэроспайк
engelbart
я наслышан есть какие то aggregation frameworks и всякие там прочие вторичные индексы
Anonymous
кассандра не поможет
Daniel
С монгой не работал
Daniel
Но
Anonymous
jsonb тоже не панацея
Anonymous
даже с индексами
Daniel
Nosql - это именно таблица из двух столбцов плюс вторичные индексы
Daniel
Наслаждайтесь
Anonymous
ну в mongo можно будет сделать на встроенном aggregate framework map-reduce
Anonymous
только это перебор будет
Daniel
Именно
Anonymous
меня только одно интересует нафига такие схемы данных выбираете чтобы потом боль испытывать?
engelbart
Ладно, это понятно. Я понимаю что key-value это таблица с двумя полями.
Просто то что люди как то это юзают, заставляет меня думать что они как то умеют эти вторичные индексы строить так что б эфективно внутрь лазить.
engelbart
Ведь мой вопрос он про вторичный индекс, сможет ли он индексировать как бы массив внутри этого документа.
Anonymous
postgresql сможет
Anonymous
но до определенных пределов
Anonymous
советую посмотреть в jsonb секцию и индексы
engelbart
Спасибо. Посмотрю.
Anonymous
сделать тестовую таблицы и погонять explain
Мерль
Мерль
И быстрее на запись
Anonymous
mongodb тормоз будет
Anonymous
он только как write-only хорошо работает
engelbart
Мне шардирование пофигу, у меня небольшая база, и вообще всё маленькое.
Получается судя по докладу Даниеля мне вообще в постгрес и там жить.
Anonymous
тогда да
engelbart
Но когда я беру постгрес у меня руки сами джойны делают, без всяких jsonb
🏳️ Phil
Слушайте, а просто колонку индекса добавлять не?
engelbart
А как, там же массив внутри то
Anonymous
если данных мало до 1М то постгресс это очень быстро даже
Мерль
https://www.postgresql.org/docs/9.6/static/datatype-json.html
Daniel
engelbart
Т.е там условно, список статусов , какая колонка то, это ж уже таблица и джойн опять.
Anonymous
если у тебя строк до 1М сделай джоин уже
Anonymous
это будет быстро
Daniel
Это ты как хочешь
engelbart
Парни, смотрите, там джойны есть и они работают уже. Ну т.е. вариант РСУБД работает, и особых претензий к нему нет.
Но все вокруг ходят с вейпами и nosql , и тоже же хочется.
Поэтому я хочу понять как люди то делают в тех полях. Полный перебор чтоль каждый раз, когда выбрать по телу документа.
engelbart
Или так хранят, что все возможные ключи дублированы.
Anonymous
приведу пример с монгой
engelbart
Если не затруднит
Anonymous
есть большой поток данных, нужно с него снять метаданные какие-либо для последующего анализа и записать
Мерль
Anonymous
mongo отлично подходит с шардированием для такого wirte-only процесса
Anonymous
далее реально происходит полный перебор через map-reduce, делаются выводы, данные отправляются как бы в архив в пределах той же монги
Anonymous
делать это на SQL можно, но транзакционность убьет нахрен производительность
Daniel
Сложнее
Daniel
Но - да
Daniel
Примитивная структура позволяет лопатить данные быстрее