Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
UDF на Java - очень медленно...
|
|||
|---|---|---|---|
|
#18+
У меня есть столбец B varchar(8), значение которого вычисляется на основании столбца A clob(20M), т.е. formula: LEFT(A, 8) - в таком виде всё работает быстро. Мне нужно будет парсить столбец A и вычленять из него разнообразную инфу для других столбцов. Пока что я просто попробовал вместо функции LEFT использовать UDF, которому передается A, а в нутри находится getSubString для java.sql.clob - ужасно медленно! Как ускорить можно, где главные тормоза? Про java.sql.clob прочитал, что это указатель на данные, т.е. никакой "AS LOCATOR" при создании функции не нужен. Что еще можно предпринять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2006, 14:00 |
|
||
|
UDF на Java - очень медленно...
|
|||
|---|---|---|---|
|
#18+
Главные тормоза - в размере clob. Посмотрите, как в примере работают с clob. Если вам заранее известны номера позиций в clob, где расположена нужная информация, используйте substr(clob, pos, length) и не используйте языки программирования. Если нет - ничего не поделать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2006, 10:09 |
|
||
|
UDF на Java - очень медленно...
|
|||
|---|---|---|---|
|
#18+
Спасибо, буду иметь в виду... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2006, 13:04 |
|
||
|
UDF на Java - очень медленно...
|
|||
|---|---|---|---|
|
#18+
Оказалось, что поле не может быть длиннее 1600 байт, я поставил varchar, а в java, соответственно, String вместо java.sql.clob - один черт! Всё равно медленно! Значит дело даже не в этом. Думаю, сэкономить можно на том, чтобы не вызывать UDF как formula, а делать изменение таблицы в 2 шага: вначале INSERT, потом вызов SP для работы со вставленными записями. В этом случае будет быстрее, поскольку не будет вызовов UDF для каждой записи. Наверное, основное время тратится именно на вызов функции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.12.2006, 18:13 |
|
||
|
|

start [/forum/topic.php?fid=43&fpage=121&tid=1604922]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
61ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 263ms |
| total: | 427ms |

| 0 / 0 |
