172 похожих чатов

Не подскажете, как сделать - есть функция, вызываемая из

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

13 ответов

7 просмотров
Vadim 🆚- Автор вопроса

Можно? Оно же ругается как-то нехорошо на такое, вроде бы точно на postgres это видел

Это все можно, но нужно ли делать именно так? Мб есть другие решения?

Vadim 🆚- Автор вопроса
P
Это все можно, но нужно ли делать именно так? Мб е...

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

Vadim 🆚- Автор вопроса
Дмитрий Копытов
Кеширование на бэкенде?

да, это серверные процедурки на pgsql

Vadim 🆚
задача такая - функция выдает часть адреса из клад...

Хз, очень странно звучит. Будто бы обычного селекта было бы достаточно, но видимо у вас есть какие то хитрости помимо описанных. В любом случае, задача ваша, проект тоже. Есди хотите так, то делайте функцию volatile и тд и тп...

Vadim 🆚
задача такая - функция выдает часть адреса из клад...

А как у вас получается, что несчастный адрес из кладра небыстро возвращается?

Vadim 🆚- Автор вопроса
Ilya Anfimov
А как у вас получается, что несчастный адрес из кл...

это был пример, не будьте буквоедами-занудами)

Vadim 🆚
задача такая - функция выдает часть адреса из клад...

Кажется, вы пытаетесь сделать работу самого PostgreSQL по кэшированию. Поддержание кэша это сложно, ещё одна точка отказа. Может быть стоит подумать о структуре таблиц, и индексах. Например разделить таблицы на секции по регионам, и составные индексы.

Vadim 🆚- Автор вопроса
dennis
Кажется, вы пытаетесь сделать работу самого Postgr...

в идеале, конечно так надо, но для многих задач все равно нужен некий подобный механизм.

Vadim 🆚
в идеале, конечно так надо, но для многих задач вс...

Я немного игрался с этим (даже в редис клал). Механизм был такой: - при выборке проверить, а нет ли в кэше (не бесплатная процедура, тоже нужны индексы) - положить в кэш - отдать нужное в ответ ... - запустить джоб очистки кэша (ой, кажется время выбрали неудачно, у нас блокировки) - перейти на подневной (часовой, минутный) кэш, разбив его по секциям, чтобы быстро делать DETACH - DROP

dennis
Я немного игрался с этим (даже в редис клал). Меха...

...и все реализовано за вас, только подключите нужную библиотеку

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта