@symfony_php

Страница 1370 из 1418
Anton
05.10.2018
19:05:30
каждому свое. мне порой вообще тяжело следить за топиками.

Icewild
05.10.2018
19:14:37
«стрессоустойчивость» - нужно вычеркнуть из резюме

Евгений
05.10.2018
23:33:24
Всем привет Если делать composer-зависимости, их стоит заносить в гитигнор?

Google
Arky
06.10.2018
11:17:21
Как там говорится? "Это интернет, тут и нахуй могут послать")
я плачу за интернет чтобы меня тут посылали?(9

f4rt~
06.10.2018
11:18:44
делать или ставить?)
ну что ты определился с проектом, где без орм никак? как он выглядит?

Sergey
06.10.2018
11:24:24
ну что ты определился с проектом, где без орм никак? как он выглядит?
пока он в моей голове он выглядит прекрасно. Проблемы начнутся когда я захочу его реализовать

Maksim
06.10.2018
11:43:33
ну с точки зрения лени там не всё прекрасно) всё ж доктрина часть головняка ежедневного закрывает)

Sergey
06.10.2018
11:48:30
или создает

опять же - у меня мысль была показать как связи можно убрать)

за счет всяких там jsonb (естественно я про постгрес, с мускулем у тебя нет вариантов)

Maksim
06.10.2018
11:56:34
ну в моём кейсе создаёт и много больше. в целом, для неискушённого пользователя с уловно простым проектом - почему нет

Александр
06.10.2018
12:40:58
Я правильно понимаю что можно взять постгрес с его jsonb и получить где нужно реляционную базу, а где не нужны нормализованные данные использовать jsonb и жить прекрасно? В том плане, что имеет ли сейчас использовать отдельно именно nosql базы типо монги?

Maksim
06.10.2018
12:43:48
в целом, понимаешь верно. что касается второй части, надо смотреть что именно от носкл надо

Александр
06.10.2018
12:48:44
Честно говоря пока не очень понимаю где нужны ненормализованные данные. На ум приходят какие нибудь канбан доски возможно удобно будет хранить, а так не знаю, видимо mysql головного мозга у меня

Google
Александр
06.10.2018
12:52:55
Чтобы джоины не делать?

f4rt~
06.10.2018
12:53:50
Например?
например хайлоад, где не нужна рсубд где отсутствие нф быстрее сказывается на скорость отдачи данных

Александр
06.10.2018
12:54:58
А вот допустим не знаешь, хайлоад или не хайлоад. Как можно понять что вот тут носкл ок зайдет. Я вот таких примеров никак не могу придумать

f4rt~
06.10.2018
12:55:29
нужно обладать максимальной информацией о проекте

векторе его развития и тд

Александр
06.10.2018
12:56:33
Т.е. нету определенного класса задач?

f4rt~
06.10.2018
12:58:55
все меняется и задача разработчика, иметь возможность быстро прибрать пиздец, обычно берут то что лучше всего знают тебе же никто не помешает после mvp раскидать что то по nosql и тд

Александр
06.10.2018
12:59:53
Ну да, в целом понятно. Можно тогда брать постгрес и норм будет)

Спасибо

Sergey
06.10.2018
13:01:24
Я правильно понимаю что можно взять постгрес с его jsonb и получить где нужно реляционную базу, а где не нужны нормализованные данные использовать jsonb и жить прекрасно? В том плане, что имеет ли сейчас использовать отдельно именно nosql базы типо монги?
монга это уже больше не про реляционное vs документное (опять же потому что постгрессы не чисто реляционная база изначально и в целом с их jsonb можно жить припеваючи очень и очень хорошо практически на любом проекте). Монга это больше про ACID vs BASE

Александр
06.10.2018
13:01:59
Как base загуглить?

А, нашел, спасибо. Пойду почитаю

Sergey
06.10.2018
13:03:04
типа basik availability, soft state, eventual consistency. Короч там где данные в одну базу не помещаются

помимо монги есть и другие варианты, и там все сильно упирается с тем что ты будешь с данными делать

но поскольку у 90% проектов база данных прям вся в оперативке поместиться может, то как бы нет особо смысла загоняться и можно взять универсальный вариант который будет хорошо работать. Ну и есть же еще микросервисы (где ты берешь эти самые данные которые в одну базу не помещаются и делаешь просто... много баз данных, правда тогда всеравно eventual consistency скорее всего придется применять ибо полностью независимо сложна)

ну а если ты хипстер достаточно можно попробовать какие-то совсем уж экзотичные штуки типа OrientDB или ArangoDB.

Александр
06.10.2018
13:08:30
Спасибо, будем изучать вопрос

Maksim
06.10.2018
13:35:49
Спасибо, будем изучать вопрос
представь себе документ (например, накладную на отгрузку товара). у него есть стороны (контрагенты). если смотреть с точки зрения россии, то их 3: юр лицо, иностранная компания, ип. Каждый из типов подразумевает свой набор данных. у товаров в накладной тоже зоопарк свойств, нет общего шаблона. а теперь попробуй в мыслях накидать реляционную схему, что бы впихнуть невпихуемое. Безусловно, у тебя получится. Но какой ценой?)

Alexey
07.10.2018
11:35:01
А есть вообще крупные проекты, которые без рсубд работают?

Google
Sergey
07.10.2018
11:40:45
а есть крупные проекты которые на рсубд работают?

Sergey
07.10.2018
11:40:59
А есть вообще крупные проекты, которые без рсубд работают?
у крупных проектов обычно не одна база данных

Alexey
07.10.2018
11:44:49
В том-то и дело, что nosql появляется как результат эволюции проекта. Обратные примеры, когда развитие только на nosql упирается в техническую невозможность роста, встречаются часто

Sergey
07.10.2018
11:46:08
В том-то и дело, что nosql появляется как результат эволюции проекта. Обратные примеры, когда развитие только на nosql упирается в техническую невозможность роста, встречаются часто
да, особенно когда этим занимаются разработчики привыкшие к реляционным базам данных (помню как сам на это напоролся когда впервые делали проект на mongodb))

ну то есть, я бы не сказал что прям "упирается в техническую невозможность" - это больше про реляционные базы скорее. Просто с nosql опять же вопросы консистентности перекладываются целиком на тебя. Ну и в целом для большинства задач это не нужно. Кроме того - тот же posgresql это не чисто реляционная база данных (ORDBMS)

а проекты где ты упираешься в нюансы реализации хранения данных - это все же больше редкость. Хотя конечно знать сильные/слабые стороны своих инструментов стоит. Вот я например до сих пор не знаю почему люди выбирают mysql вместо postgresql (особенно сейчас, когда самый большой минус постгреса - отсутствие логической репликации и партицирования толкового - уже пофикшены). Да, есть куча нюансов (особенно в том как данные хранятся на диске), но в целом для 99.99% проектов это неважно

p.s. если кто-то может мне рассказать хотя бы в контексте 1% проектов почему mysql в чем-то лучше постгри - буду признателен. Аргумент "потому что я знаю мускуль" не принимаю

Sergey
07.10.2018
11:56:53
ну это все понятно, я больше в контексте новых проектов. Ну мол я прекрасно понимаю что мускуль популярен не по объективным причинам а потому что он был популярен

ну то есть может быть 10 лет назад разница была значительной (скажем из бесплатных только мускуль умел достаточно вещей)

Bohdan
07.10.2018
11:57:24
ну скажем так, постгря - это больше про плюшки для умненьких а бизнес - задачу можно и на мускуле сделать короче, мускуль - это пхп в мире субд

Sergey
07.10.2018
12:15:48
1. На больших проектах можно забыть за джоины совсем, т.к они уронят базу в два счета 2. Большие проекты шардированы и тут в консистентность ключей не все базы умеют 3. На больших проектах у тебя будет несколько сервисов, и между ними джоины ты тоже не сделаешь

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

Maksim
07.10.2018
12:42:21
мускуль научился в json?

knopkod4v
07.10.2018
12:48:09
а проекты где ты упираешься в нюансы реализации хранения данных - это все же больше редкость. Хотя конечно знать сильные/слабые стороны своих инструментов стоит. Вот я например до сих пор не знаю почему люди выбирают mysql вместо postgresql (особенно сейчас, когда самый большой минус постгреса - отсутствие логической репликации и партицирования толкового - уже пофикшены). Да, есть куча нюансов (особенно в том как данные хранятся на диске), но в целом для 99.99% проектов это неважно
страх изменений сильнее профитов прогресса. Во всяком случае так, судя по всему, воспринимают действительность много людей, которые принимают решение pgsql/mysql. Обычно на таких людях лежит большая ответственность, а старый инструмент они уже изучили на практике и более менее знают что от него ожидать. В новый же инструмент нужно инвестировать время и силы - далеко не каждый на это пойдёт. К тому же может быть неясно в чём профит (а может его и нету особо для многих проектов).

Dmitry
07.10.2018
12:49:04
мускуль научился в json?
если ты про индексы, то нет, но решается индексом по выражению (ака генерированные колонки)

Sergey
07.10.2018
12:49:09
мускуль научился в json?
с версии 5.7 вроде как, и вполне неплохо. Только индексы не умеет

Google
Sergey
07.10.2018
12:49:52
ну мол мне казалось что колонки надо руками генерить

Maksim
07.10.2018
12:50:03
если ты про индексы, то нет, но решается индексом по выражению (ака генерированные колонки)
про индексы, да. чё толку хранить json, если по нему не найти ничего

Dmitry
07.10.2018
12:50:50
ну мол мне казалось что колонки надо руками генерить
ну я и говорю - ака генерированные колонки... смысл то в общем тот же, просто чуть менее удобно

Maksim
07.10.2018
12:51:11
надо будет почитать чё там наворотили, пасиб.

Dmitry
07.10.2018
12:51:18
ну и места жрет... хотя тут не разбирался

Maksim
07.10.2018
12:52:08
но пока юиды не подвезут, в сторону мускуля даже не посмотрю) к хорошему оч быстро привыкаешь)

knopkod4v
07.10.2018
12:52:13
кто ты и куда делся кнопкодав?)
а шо? Вроде я всегда пишу такие капитанства =)

у меня на работе тоже сплошной мускуль, даже если новые проекты пилятся - тоже на мускуле. "Чтобы не разводить зоопарк". Обычная человеческая инерция

Dmitry
07.10.2018
12:56:18
а, ну можно индекс на виртуальные генерируемые.. т.е. места не жрет...

Sergey
07.10.2018
12:56:29
+ функции типа uuid_to_bin

и обратно

и is_uuid

что тебе еще надо?)

ну я и говорю - ака генерированные колонки... смысл то в общем тот же, просто чуть менее удобно
"чуть менее удобно" - хера себе у тебя высокий болевой порог. CREATE INDEX foo ON (some expression) vs создать поле самому + самому следить за обновлением этого поля из выражения + создать индекс)

+ киллер фича индексов постгри - CREATE INDEX ... WHERE some condition

которая некисло так оптимизирует всякие хитрые штуки

Dmitry
07.10.2018
12:58:54
зачем следить? генерируемые колонки - это выражение

Sergey
07.10.2018
12:59:25
прикольно, не видел такого

постгрес так не умеет)

Google
Dmitry
07.10.2018
13:00:05
https://dev.mysql.com/doc/refman/8.0/en/create-table-generated-columns.html это в 8.0 завезли

Sergey
07.10.2018
13:00:36
вроде в 5.7 еще было (судя по доке)

Dmitry
07.10.2018
13:00:50
ну да, постгресу придется тригер вешать... в 5.7 только в ndb вроде

Sergey
07.10.2018
13:01:16
таки да...

просто в постгрессе как бы вьюшки есть)

материализованные

потому как бы никогда не испытывал такой необходимости. Но выходит что на 8-ом мускуле вполне можно жить с json

Dmitry
07.10.2018
13:02:49
а может и в 5.7... нужно разобораться ну да, можно... правда привется обращаться к колонкам, а не по выражениям

Dmitry
07.10.2018
13:06:25
да я просто подумал, что 5.7 только в ndb завезли...

Alex
07.10.2018
14:08:49
p.s. если кто-то может мне рассказать хотя бы в контексте 1% проектов почему mysql в чем-то лучше постгри - буду признателен. Аргумент "потому что я знаю мускуль" не принимаю
перкона есть со своими тулзами, те же движки rocks и toku впиливают, можно поиграться, ну и движуха вокруг мускла пока еще поактивнее, у постгре для меня самый большой плюс это компиляция за 10 мин в отличие от 1.5 часов мускла)

Urmat
07.10.2018
17:01:29
Вечер добрый господа разрабы. Никто не в курсе библиотеки, которая является мостом между разными форматами локалей. Чтобы можно было использовать примерно так: $locale = Locale::getInstance('en-US'); $locale->shortened(); //en $locale->full(); //en-US

Icewild
07.10.2018
17:25:35
explode(...)[0]; не?

Urmat
07.10.2018
17:37:35
explode(...)[0]; не?
Если так смотреть, то можно просто if else. А я хотел именно либу, со всем блекджеками и куртизанками

Petr
07.10.2018
18:52:16
Если так смотреть, то можно просто if else. А я хотел именно либу, со всем блекджеками и куртизанками
я думаю, intl решает подобные задачи: http://php.net/manual/ru/book.intl.php http://php.net/manual/ru/locale.getregion.php http://php.net/manual/ru/locale.getprimarylanguage.php

Roman
07.10.2018
19:00:20
Только не забудь расширение установить :)

Dmitriy
08.10.2018
05:51:20
Хм, какая странная фигня. Хочу настроить 2 dbal подключения (пока клонировал одно и то же, но не суть)

Страница 1370 из 1418