Загрузка данных таблицы Oracle db выполняется слишком медленно в DBeaver

Я использую DBeaver для подключения к базе данных Oracle. Функции подключения к базе данных и просмотра свойств таблиц работают без задержек. Но получение данных таблицы происходит слишком медленно (иногда около 50 секунд).

Есть ли настройки для ускорения получения данных таблицы в DBeaver?


person Chethaka Uduwarage    schedule 07.06.2017    source источник


Ответы (2)


Изменение следующих настроек в вашем соединении с Oracle db позволит быстрее получать данные таблицы, чем они не установлены.

Щелкните правой кнопкой мыши соединение с базой данных - ›Изменить соединение -› Свойства Oracle - ›установите флажок« Использовать подсказку ПРАВИЛА для запросов к системному каталогу »(по умолчанию это не установлено)

введите описание изображения здесь


ОБНОВЛЕНИЕ

В более новой версии DBeaver (21.0.0) здесь появляется гораздо больше параметров производительности. Включение их значительно улучшает производительность для меня

введите описание изображения здесь

person Chethaka Uduwarage    schedule 07.06.2017
comment
Что это за версия DBeaver? В моем (v21.0.0), похоже, нет этой опции. - person Machado; 09.03.2021

Я никогда не использовал DBeaver, но я часто вижу приложения, которые используют слишком маленький «размер выборки массива» **, что часто создает проблемы с выборкой.

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

Низкий размер выборки массива по сравнению с количеством строк, необходимых для возврата, будет проявляться в виде задержек из-за увеличения сетевой и клиентской обработки, необходимой для обработки каждой выборки (т. Е. Высокая стоимость каждого сетевого обхода [протокол SQL * Net]).

В этом случае вы, скорее всего, увидите очень большое ожидание «SQL Сетевого сообщения от клиента» [в сеансе gv $ или где-либо еще].

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

person Roger Cornejo    schedule 07.06.2017