
Fike
10.05.2017
13:32:34
и сохраняй как строку, разделяя их этим разделителем

lost
10.05.2017
13:32:51
индексы и джоины по этой хрене будут страшные
очинь страшные
ёмаё

Google

Fike
10.05.2017
13:33:18
ну так-то 160 байт какого-нибудь хэша будут гораздо короче, да

lost
10.05.2017
13:33:19
че парились

Fike
10.05.2017
13:33:35
ладно бит не байт

lost
10.05.2017
13:33:46
unix_timestamp + id, кастуешь к бигинту какому-нибудь
вот тебе идентификатор

Fike
10.05.2017
13:34:13
лол коллизии сразу же
и числовой ли там идентификатор?

lost
10.05.2017
13:34:51
+ имелся ввиду конкатенация...
время параметр аддитивный, так что коллизий быть не должно

Fike
10.05.2017
13:37:21
1 + 2 = 2 + 1

lost
10.05.2017
13:38:19
конкатенация и сложение это не одно и то же

Fike
10.05.2017
13:38:44
так при чем тут тогда аддитивность

lost
10.05.2017
13:40:06
у тебя дата возрастает постоянно,в конец интовой даты ты дописываешь идентификатор

Google

lost
10.05.2017
13:40:14

Fike
10.05.2017
13:41:16
так а в чем тогда разница, если это то же самое

lost
10.05.2017
13:41:35
в том что числовые операции быстрее чем строковые
в том что способы выделение памяти на разные типы данных разные

Fike
10.05.2017
13:42:05
я еще раз напомню, что там никто не говорил, что там идентификатор - это число

lost
10.05.2017
13:42:37
маловероятно, что праймари будет нечисловой

Fike
10.05.2017
13:42:43
лол
uuid-срач вернись и скажи свое слово

lost
10.05.2017
13:43:12
я подозревал
что про него упомянут

Vladislav
10.05.2017
13:48:19

Fike
10.05.2017
14:05:08
ну вы максимум можете перевести это все в байтовое представление, соединить два массива и, скорее всего, получить то же самое
либо так или иначе начать обрезать с возможностью коллизии (которая может быть допустима в вашем случае, черт его знает)

Vladislav
10.05.2017
14:19:32
Нашли у себя функцию HASH в БД ? Идеально зашла

Maksim
10.05.2017
16:51:04
Добрый день, кто нибудь работал с liquibase ? есть проблема небольшая. при выполнении миграций он пытается создать две свои служебные таблицы и не получается, т.к. запросы не воспринимаются базой данной, может можно поменять схему? (типы полей только надо поменять)

Fike
10.05.2017
16:57:39
https://github.com/liquibase/liquibase/blob/9ae7f90a0bbbbcec229a0788afa74831db348ced/liquibase-core/src/main/java/liquibase/sqlgenerator/core/CreateDatabaseChangeLogTableGeneratorSybase.java похоже, только написанием полноценного адаптера под целевую БД
ну или, если повезет - какой-то из адаптеров содержит совместимую команду, и получится мимикрировать под левый движок

Maksim
10.05.2017
17:09:54

Fike
10.05.2017
17:10:29
не знаю, я просто раскрутил исходник. можно ровно так же найти в соседних файлах.

Maksim
10.05.2017
17:12:21

Google

Fike
10.05.2017
17:13:28
я не предлагаю менять ничего конкретного. я просто говорю, что ответы на такие вопросы лежат вот прям в исходниках. при необходимости, да, можно отнаследоваться, перетереть конкретные файлы или написать адаптер и жить спокойно.
я кстати не уверен, что написать адаптер бог весть как сложно, скорее муторно все возможные виды изменений описывать

Maksim
10.05.2017
17:15:53
да может и не сложно только я на java не пишу.. у меня была идея просто самому ему создать эти таблицы. но он как-то их проверяет и почему думает что она не создана. может схемы сравнивает.. еще в доке нашел какой-то параметр own shema но информации мало, может это не то

Fike
10.05.2017
17:16:51
он скорее всего пытается сделать какой-нибудь select 1 и любую ошибку интерпретирует как отсутствие таблицы

Maksim
10.05.2017
17:22:23

Артур Евгеньевич
10.05.2017
18:25:39
всем привет давайте решать задачки)
Найти производителей, которые выпускают более одной модели, при этом все выпускаемые производителем модели являются продуктами одного типа.
Вывести: maker, type
там есть ответы но не хочется готовое смотреть решение, может кто натолкнет в правильное русло)

Fike
10.05.2017
18:28:34
какая разница, прочтешь ты овтет там, или мы напишем его здесь?

Артур Евгеньевич
10.05.2017
18:28:58
большая, когда сам с подсказками додумываешь лучше усваивается чем чтение готовых
проблема сейчас с вот этим
при этом все выпускаемые производителем модели являются продуктами одного типа.

Артур Евгеньевич
10.05.2017
18:29:17
select maker, type, count(*) from Product
group by maker

Fike
10.05.2017
18:29:29
там все равно все сводится к одним и тем же логическим операциям, которыые ты и так понимаешь либо выведешь без труда (отсеять тех, у кого только один продукт и т.п.)

Артур Евгеньевич
10.05.2017
18:31:57
на эту задачу нет ответа кстати

Fike
10.05.2017
18:32:45
тебе нужно просто вывести всех производителей, у которых больше одного продукта, и у всех продуктов которого только один тип

Артур Евгеньевич
10.05.2017
18:32:58
select maker, type from Product
group by maker, type
having count(*) > 1;

Fike
10.05.2017
18:33:26
это можно напрямую переносить условие за условием

Артур Евгеньевич
10.05.2017
18:33:45
"и у всех продуктов которого только один тип"
вот тут пока не вижу как сделать

Google

Fike
10.05.2017
18:34:07
угу, в голову приходит сделать подзапросом или тем же подзапросом в виде джойна, но, возможно, есть более элегантные решения

Артур Евгеньевич
10.05.2017
19:08:16
вот решение
SELECT maker, MAX(type) FROM Product
GROUP BY maker
HAVING COUNT(DISTINCT type) = 1 AND COUNT(0) > 1

KOT
11.05.2017
07:44:27
Помогите пожалуйста разобраться с несколькими настройками MySQL, а именно:
sync_binlog
sync_master_info
sync_relay_log
и
innodb_flush_log_at_trx_commit
Читаю доки и немного запутался, что в них происходит.
Они все насколько я понял связаны с тем, как часто движок записывает в файлы информацию
Насколько я помню разбор сути innodb_flush_log_at_trx_commit там речь идёт о записи операций в буффер после камита и сбрасывания данных на диск раз в 1-2 секунды.
Если важно непроебать не один камит, то юзать всегда 1, если можно забить на пару секунд ради скорости, то можно 2

Admin
ERROR: S client not available

KOT
11.05.2017
07:50:40
Но тут вдруг нарисовываются эти 3 синка и везде топят за то, что их надо ставить в позицию 1.
Мой кейс:
- если потеряю инфу нескольких секунд - наплевать
- нужна сохранность реплики без проседания скорости
Точно так сильно нужны 1-ки в синках?

Dmitry
11.05.2017
11:23:02
@Kote_deWoland видел тут недавно статью, где посоны писали что нинужна
щас
https://ruhighload.com/post/%D0%9E%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F+%D1%80%D0%B5%D0%BF%D0%BB%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8+%D0%B2+Mysql?utm_source=mail&sa=3071:be30b951db0f644c18ae8500fb6519f7
тока учти - если оно ебнет, ты сам себе красивый

Fike
11.05.2017
11:27:14
Понаблюдаю-ка за прострелом ноги

lost
11.05.2017
11:32:47
максимум innodb_flush_log_at_trx_commit = 2 на репликах, и то, иногда дороже выходит чем fsync на каждую транзакцию

KOT
11.05.2017
11:42:14

Dmitry
11.05.2017
11:42:34
потеря чутка данных это одно
и эцсамое
что значит "реплика не наебнулась"?

Dmitry
11.05.2017
12:16:23
что значит "реплика не наебнулась"?
у mysql репликация в один поток последовательно, возникла ошибка при проведении транзакции на слейве - все остановилось и ждет вмешательство - наебнулась

Google

Dmitry
11.05.2017
12:16:47
вмешались (устранили ошибку, засинкали мастер слейв таблицы) - поднялась

Dmitry
11.05.2017
12:18:08

KOT
11.05.2017
12:19:41
Поплавал. Написали - выключайте, не пояснив механику и последствия. Это сто пудово инспектор гаи писал, тот который права за бабло выдаёт.

Dmitry
11.05.2017
12:22:05
Так а синки тебе чем мешают?
Она перестает из-за дупликейшн ерор например
Или констрейн например ругнулся
Или ещё какая хня

KOT
11.05.2017
12:52:18

Fike
11.05.2017
12:52:53
я бы сначала убедился, чт опроседает

lost
11.05.2017
12:57:50
а io посмотреть на диск там есть возможность?
плюс какой тип репликации используется
в 5.7 по дефолту row выставлен, может сразу удастся определить на каком именно этапе тормозит всё это дело

Dmitry
11.05.2017
13:20:41
и вообще, может стоит тогда подумать - зачем тебе амазон?
возьми дедиков или виртуалок где-то на быстрых ссд и фигачь

Maksim
11.05.2017
16:27:43
скажите плиз можно ли создать юзера mysql только с правами сделать mysqldump и делать select ?

Dmitry
11.05.2017
16:57:02
Да
Grant select ...