Можно сделать циклический sequence от aaaa до zzzz и применить к нему симметричный шифр (типа книги кодов) и мы получим случайный неповторяющийся строго на данном интервале генератор.
Но как такое сделать только средствами PG - я не знаю.
Кстати, почему random выдает только вещественный результат? Есть ли функция где int/bigint на выходе?
В этой схеме слабое место - это вечные ключи. Стоило бы придумать их протокол ротации. Потому что чем дольше ключ где-то лежит тем больше вероятность его компрометации. В противоположность например сертификаты - имеют прошитый срок действия и все ПО которое с ними работает принимает такой протокол. Сертификат протух - надо его переиздать.
PHP мне кажется имеет смысл изучать если вы точно идете на поддержку старых приложений на базе WordPress и заказчик вам прямым текстом говорит что нужны знания PHP и доработка фреймворка. В остальных случаях я думаю что лучше смотреть в что-то более свежее например Node как язык back end разработки.
Также PHP может быть хорошим быстрым стартом для студента который хочет быстро войти в айти или для свитчера который уходит из смежных технологий и просто хочет осмотреться.
Данные с акселерометра могут показать что телефон лежит в покое больше нескольких часов. Это сильно отличается от обычного режима ношения телефона в кармане к примеру.
Где-то читал про 19 способов инициализации переменной. В бытность С++ кодинга я использовал максимум 2 способа. На данный фокус с декларацией функций можно посмотреть с позиции новых стандартов С++17 например.
Весь мир инфо-технологий построен на абстракциях. Абстракции начинаются даже не в момент разработки. А когда обсуждается ТЗ. Но иногда эти абстракции бывают так далеки от реальности что от них отказываются в практическом использовании. Яркий пример - языки Scheme, Lisp. Хотя я люблю эти языки. Сама по себе JVM - это тоже абстракция над будущим железом. И тема этого вопроса - в той глубине раздражения которую мы можем испытывать решая вопросы разработки. В моем случае - это вопросы перформанса.
Да можно. Так делают для массовых загрузок (ETL). Разумеется кеши и Hibernate/Jpa контексты не будут знать о появлении новых данных в БД. Ответственность за согласованную картину данных лежит на разработкчике.
А я задумался о consistency. Это как знаете сделать сначала select count(*) from tab, без транзакции
и потом по этому результатату принимать решение что следующий select * from tab вдруг обязан
что-то вернуть в соотвествии с предыдущей наивной проверкой.
Но как такое сделать только средствами PG - я не знаю.
Кстати, почему random выдает только вещественный результат? Есть ли функция где int/bigint на выходе?