Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
как быстрее (правильнее) вставить порядка 20000 записей? есть данные в таком виде (это лог :) записей 15000 +- 5000 192.168.6.78 - trancerr [28/Feb/2004:10:03:16 +1000] "GET http://ppk.intra.net:61230/Images/div-sh.gif HTTP/1.1" 304 0 в таком виде всё это в базульке: ip user_name date_time url code bytes получается 5 таблиц: 1) ip(id host) 2) users(id name) 3) url(id host) 4) code(id code) 5) log(id id_ip id_user date_time id_url id_code bytes) при вставке в базу прога проверяет есть ли в таблицах записи с IP USER URL CODE затем в таблицу LOG вставляется типа такого 1 1 date_time 3 4 456 но очень медленно как это реализовать с максимальной производительностью? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2004, 02:39 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
Что-то как-то совершенно непонятно, что вы хотите услышать в ответ на ваш вопрос. Дайте больше информации. ------------------------------------------------------------------ когда я ем, я глух и нем, когда я пью, вообще дурной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2004, 09:48 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
Основная идея состоит в том, чтобы записать данные сначала во временную таблицу без индексов, а потом перезаписать в нужную одним SQL-выражением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2004, 15:35 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
Еще хорошим стилем считается перед заливкой отключить индексы и после заливки перестроить. Если индексы битовые - делать это надо обязательно. У меня вызывает подозрение фраза trancerrпри вставке в базу прога проверяет есть ли в таблицах записи У Вас приложение следит за ограничениями целосности ? В принципе это должно быть реализовано механизмами СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2004, 21:04 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
>Основная идея состоит в том, чтобы записать данные сначала во временную >таблицу без индексов,а потом перезаписать в нужную одним SQL->выражением. т.е. такой запрос который из временной всё раскидает по "справочным" таблицам? хорошо попробую, просто опыта\знаний мало.... > У Вас приложение следит за ограничениями целосности ? > В принципе это >должно быть реализовано механизмами СУБД к сожалению приложение.... знаю что есть т.н. зранимые процедуры, может воспользоваться этим средством? спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2004, 06:33 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
>знаю что есть т.н. зранимые процедуры, может воспользоваться этим >средством Вобще-то я имел ввиду foreign key или тригеры. Как именно происходит проверка целосности в приложении? Если что-то типа такого Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Но это мои личные домыслы. Желательно что-бы Вы вставили отладку, нашли в какие моменты происходит основное падение производительности. Также было бы хорошо, если бы Вы привели размеры таблиц, индексов по этим таблицам ну и алгоритм проверки целосности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2004, 20:49 |
|
||
|
как быстрее (правильнее) вставить порядка 20000 записей?
|
|||
|---|---|---|---|
|
#18+
Судя по примеру ваше приложение должно сначала найти ip в таблице ip, (и остальные поля также) а потом уже вставить в таблицу log уже не сам ip а его id. И именно в процессе поиска id по ip, users и тд основные тормоза.. Я правильно понял постановку задачи? Если так, то foreign key тут не по теме конечно.. Прежде всего напишите какой у вас sql сервер.. ;-) Потом напишите какие индексы в таблицах ip users и тд Потом действительно посмотрите в сторону PL/SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2004, 22:49 |
|
||
|
|

start [/forum/topic.php?fid=16&tid=1348525]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 251ms |

| 0 / 0 |
