Страница 1 из 1
Заливка данных
Добавлено: 19 дек 2007, 13:09
s999
Здравствуйте.
Очень длительное время не работал с FB/IB, поэтому много забыл, а мог и не знать
В данный момент хочется получить наиболее полные рекомендации по оптимизации скорости заливки приличных объемов данных в FB. В данный момент пробую 2.0.3., клиент fibplus 6.3. Поиск по этому вопросу обычно "выбрасывает" рекомендации Деда начинающим параметризовать запросы

Мне бы хотелось услышать более детальные рекомендации. Буду также признателен за полезные ссылки по данной проблематике.
Спасибо.
Добавлено: 19 дек 2007, 15:07
kdv
Добавлено: 19 дек 2007, 15:56
s999
Спасибо.
Пожалуй, у меня еще вопросы остаются. Сейчас актино "играюсь" с вариантами "просто insert в цикле" и "внешняя таблица". И что удивительно внешняя таблица даже проигрывает. Правда, у меня есть поля типа VARCHAR(512), отсюда и файл получается... хороший. Плюс из-за NULL-ов хитреш... Но, все-равно, от внешних таблиц ждал большего...
Кстати, интересный факт. Тот же объем, из того же приложения вставляется в Oracle 9.2.0.8, DOA, той же техникой (insert в цикле) примерно на 25% быстрее. FB и Oracle стоят на примерно одинаковых по производительности машинах. То есть FB "проигрывает" не так уж много, но.. Есть ли еще ресурсы оптимизации? По замыслу FB будет играть роль некоторого "перекидывальщика" данных - залил, держит, "отдает" в том же объеме другим, кэш-сервер, какие могут быть оптимальные настройки для этой ситуации?
Добавлено: 19 дек 2007, 16:14
kdv
По замыслу FB будет играть роль некоторого "перекидывальщика" данных - залил, держит, "отдает" в том же объеме другим, кэш-сервер, какие могут быть оптимальные настройки для этой ситуации?
любые настройки делаются экспериментально.
насчет "кэш-сервера" - херово. Не совсем это подходящая задача для версионника.
Бери MySQL или вообще DBF.
Добавлено: 19 дек 2007, 16:22
WildSery
s999 писал(а):Сейчас актино "играюсь" с вариантами "просто insert в цикле" и "внешняя таблица".
По сети гоняешь или локально?
execute block с пачкой инсертов за раз тоже можно опробовать.
Добавлено: 19 дек 2007, 16:32
s999
kdv писал(а):любые настройки делаются экспериментально.
Ok. Будем эксперементировать.
kdv писал(а): насчет "кэш-сервера" - херово. Не совсем это подходящая задача для версионника.
Бери MySQL или вообще DBF.
Изначально делалось на "чистых" ClientDataSets трехзвенкой, но отсутствие sql в среднем звене все-таки стало недостатком. MySQL тоже рассматривался, но там что-то лицензия какая-то стала

Точно не знаю, но что-то не понравилось.
А "большая заливка" в нашем случае вещь однократная, далее планируется по дельте изменений действовать, поэтому версионность все-таки не столь здесь критична... Решили FB попробовать.
Ok. Буду продолжать пробовать.
Добавлено: 19 дек 2007, 16:37
s999
WildSery писал(а):По сети гоняешь или локально?
execute block с пачкой инсертов за раз тоже можно опробовать.
И так и так (Оракл только в сети). А вот про про новинки типа execute block можно чуть подробней, как я говорил, "меня не было" очень долго
А вообще по задумке FB будет работать только с App-сервером, который стоит на той же машине.
Добавлено: 19 дек 2007, 17:06
kdv
А вот про про новинки типа execute block можно чуть подробней
поподробней - в релизнотах.