@pgsql

Страница 77 из 1062
Alexey
27.08.2016
19:15:08
Сява

Александр
27.08.2016
19:16:06
Репер джава

Да, за постгю бьют по пальцам

Mike Chuguniy
27.08.2016
19:33:25
В мускуле просто мастер-мастер есть из коробки)
Чегой-то я мал-мала затупил. Нет там мультимастера. Там есть взаимная (bidirectional) репликация. А это две большие разницы. Дык вот, когда народ понимает, в чем разница, и какие эта разница накладывает ограничения, то в такой конфигурации мыскль живет и жрать не очень-то просит.

Google
Alexey
27.08.2016
19:39:29
Да-да, про нее, родимую, я говорил. Пока в одну ноду пишешь - все ок)

Mike Chuguniy
27.08.2016
19:43:53
Ну вот это и есть - отличие мастер-мастера от двунаправленной репликации.

Pavel
27.08.2016
19:44:19
а уж как радуешься

когда у тебя на 250 сущностей

1000 id =)

я в свое время настрадался с maxscale и галерой...

Mike Chuguniy
27.08.2016
19:46:07
250 сущностей и 1000 id - это колечком из 4-х машин попахивает - модно, задорно, молодежно

:)

До появвления GTID в 5.6 вывод/ввод машины в кольцо - то ещё приключение и забава.

Pavel
27.08.2016
20:05:58
а \dt like "something%" вряд ли есть, да?(

Аггей
27.08.2016
20:18:37
он так вроде и работает?

\dt something

Pavel
27.08.2016
20:19:52
аа, * вместо %

Google
Pavel
27.08.2016
20:19:56
вот оно что

\dt something*

Аггей
27.08.2016
22:02:23
Разовьем - на нем волюм, а на волюме GFS2 ))

Alexander
27.08.2016
22:03:23
ну, в общем, в итоге, я думаю, что есть какой-то вариант юзать локальную PostgreSQL для SELECT'ов, чтобы не напрягать сеть и потому что так будет быстрее, через прокси (чтобы не вносить изменения в код)... а вот если там не SELECT'ы, а что-то другое - лог операций пишется в объектное хранилище Ceph или куда-нибудь ещё, чтобы оно жило пока жив хотя бы 1 сервер... и по этому логу все СУБД синхронизируются (проверяют свой локальный лог с тем на Ceph и делают у себя как на Ceph)

в итоге имеем возможность не менять код приложения, быстрые селекты и длительные инсерты/апдейты

для большинства мелких проектов такой вариант был бы самым оптимальным

Аггей
27.08.2016
22:06:31
Коллега выше как раз написал, что Ceph не совсем то

Alexander
27.08.2016
22:07:02
ну, да, не Ceph, может, а что-то другое

то есть алгоритм работы - наш прокси получил какой-нибудь SELECT-запрос - подключился к локальной базе, выполнил запрос, вернул результат, а вот если получил INSERT- запрос - тогда подключился к какому-то глобальному облачному логу, записал запрос туда, потом посмотрел, что из этого лога он ещё не выполнил в локальной базе, если что-то не выполнил - нужно выполнить и потом выполнить этот INSERT... заодно дёргает триггеры, чтобы и в базах на других серверах выполнилось...

ну вот message queue задействовать, ещё что-то, может

для Django команда Яндекса кое-что сделала, но это не совсем то, что я бы хотел https://github.com/yandex/django_replicated

ptchol
27.08.2016
22:43:32
был же пример как ребята из lindedin запилил репликацию через кафку

Pavel
27.08.2016
22:55:46
ну, да, не Ceph, может, а что-то другое
самый нормальный вариант - это messagequeue на запись, select на чтение

Интересно. Нашел ограничение постгреса на количество параметров передаваемых в in. То есть select * from smt where id in (...) - вот этих ... может быть всего 32767

Alex
28.08.2016
14:00:29
32767 элементов массива хватит всем

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

Pavel
28.08.2016
14:05:40
ну да, просто теперь придется делать вместо select in (...) select in (query)

интересно, можно ли postgresql сказать, что 0 и 1 для boolean это true и false...

Pavel
28.08.2016
14:10:19
0 :: boolean

Google
Pavel
28.08.2016
14:10:54
Cast( 0 as Boolean) аналог

Pavel
28.08.2016
14:36:31
0 :: boolean
а это можно как-то на поле поставить? т.е. чтоб эта колонка в табличке n приминала 0 за false, 1 за тру если ей такое пишут?

キリル
28.08.2016
14:42:32
640K RAM тоже :)

32767 элементов массива хватит всем

Pavel
28.08.2016
14:53:02
у меня hibernate почему то себя плохо ведет, и вместо true false подставляет 0 и 1 только в 1 месте.

Pavel
28.08.2016
14:53:40
ОШИБКА: оператор не существует: boolean = integer Подсказка: Оператор с данными именем и типами аргументов не найден. Возможно, вам следует добавить явные приведения типов.

видимо не автоматом, а чего то ему не хватает.

Anatoliy
28.08.2016
15:00:42
По идее можно замутить CREATE CAST

Pavel
28.08.2016
15:01:39
а его потом можно на колонку повесить?

Anatoliy
28.08.2016
15:02:49
Он должен автоматом кастить при инсерте. т.е. избавит от ошибки.

Pavel
28.08.2016
15:03:01
там не insert, там delete

Anatoliy
28.08.2016
15:03:15
ну без разницы

Pavel
28.08.2016
15:03:27
sql> delete from report_customs where dirty=0 [2016-08-28 17:55:16] [42883] ОШИБКА: оператор не существует: boolean = integer Подсказка: Оператор с данными именем и типами аргументов не найден. Возможно, вам следует добавить явные приведения типов. Позиция: 40

сейчас cast добавлю.

Anatoliy
28.08.2016
15:15:33
Еще можно попробовать на колонку добавить ALTER TABLE ALTER COLUMN field USING case when field = 0 THEN FALSE ELSE TRUE END;

Ну, поправив синтаксис, а то я не дописал таблицу

хотя, using наверное подойдет только для конвертации типа…

Pavel
28.08.2016
15:29:08
угу, его я изначально использовал

Google
Pavel
28.08.2016
16:15:01
приведение типа integer к типу boolean уже существует

нде, чего ж оно не работает

drop cast (integer as BOOLEAN) [2016-08-28 19:31:31] [2BP01] ОШИБКА: удалить объект приведение integer к boolean нельзя, так как он нужен системе баз данных create cast (integer as BOOLEAN) with function bool(integer) as IMPLICIT [2016-08-28 19:31:31] [42710] ОШИБКА: приведение типа integer к типу boolean уже существует

as assignment тоже не помогает.

update pg_cast set castcontext = 'i' where format_type(castsource,NULL) = 'integer' and format_type(casttarget,NULL) = 'boolean';

нашел таки

postgresql просто полна возможностей.

Darafei
28.08.2016
17:21:49
Интересно, что это ломает?

Pavel
28.08.2016
17:22:55
ну скажем так - это позволит булеан скармливать цифры, не болеет ого

blkmrkt
28.08.2016
17:24:52
Как заставить постгрес отдавать стринг из жсонб без кавычек в таком запросе? Он оборачивает стринг в " SELECT p.profile->'first_name' as firstName FROM tblname

Anatoliy
28.08.2016
17:25:24
-» так не?

Pavel
28.08.2016
17:26:07
а что это за форма такая -> ?

Roman
28.08.2016
17:27:22
jsonb

blkmrkt
28.08.2016
17:27:45
-» так не?
точно, спасибо! нужно почитать почему так

Anatoliy
28.08.2016
17:28:00
https://www.postgresql.org/docs/current/static/functions-json.html

все достаточно просто)

blkmrkt
28.08.2016
17:28:36
https://www.postgresql.org/docs/current/static/functions-json.html
ясно, спасибо. очень нубский вопрос, стыдно

Anatoliy
28.08.2016
17:29:11
ну многие только начинают работать с json, я сам просто опыта набрался при миграции монги)

Pavel
28.08.2016
17:30:40
кстати, есть же дока на русском

blkmrkt
28.08.2016
17:30:54
ну многие только начинают работать с json, я сам просто опыта набрался при миграции монги)
а я наоборот новый сервис на монге начал делать. правда там БД в основном хранит данные, собраныне кравлером, поэтому отсутствие схемы это плюс. Ну и очень много upsertов, у постгреса с его MVVC с этим проблемы, тк без регулярного вакуума очень разрастается размер этого мяса на дисках

Google
Pavel
28.08.2016
17:34:54
https://postgrespro.ru/docs/postgresql/9.5/index.html

ThisIs
28.08.2016
17:35:36
Как раз хотел спросить

Anatoliy
28.08.2016
17:35:40
Посгрес про на мой взгляд лучше не читать, они там свои фичи тоже встраивают в доку.

ThisIs
28.08.2016
17:36:00
Кто нибудь читал полностью доки по постгре? из здешних?

*постгрес

Pavel
28.08.2016
17:36:32
Я вот кстати постгресом пользуюсь 5 день. mysql по сравнению с ним дичайший тормоз...

blkmrkt
28.08.2016
17:37:08
Кто нибудь читал полностью доки по постгре? из здешних?
про конфиги и работу с диском все прочитал и еще больше, только мало запомнил

Ildar
28.08.2016
21:07:15
Посгрес про на мой взгляд лучше не читать, они там свои фичи тоже встраивают в доку.
на постгреспро официальный русский перевод. Пруф: ссылка на https://www.postgresql.org/docs/

Аггей
28.08.2016
21:49:52
Его готовил постгрес про

Ildar
28.08.2016
22:13:58
там две версии доков: одна ванильная, другая -- по собственной сборке

Страница 77 из 1062