Запись в модуль neo4j занимает гораздо больше времени, чем запись в локальный neo4j - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть python код, где я обрабатываю некоторые данные, пишу запросы neo4j, а затем фиксирую эти запросы в neo4j. Когда я запускаю код на своей локальной машине и записываю вывод в локальный neo4j, это занимает не более 15 минут. Однако, когда я запускаю свой код локально и записываю вывод в модуль noe4j в модуле k8s, это удваивает время, а когда я собираю свой код и внедряю его в k8s и запускаю этот модуль и записываю вывод в модуль neo4j, требуется раунд. 3 часа. так как я новичок в развертывании k8s, это может быть что-то в конфигурации или настройках модуля, поэтому я ценю, могу ли я получить некоторые подсказки

1 Ответ

1 голос
/ 07 февраля 2020

Причин этому может быть несколько.

Сначала я бы проверил, сколько ресурсов потребляет ваш pod во время обработки данных, вы можете сделать это с помощью kubectl top pod. Во-вторых, я бы проверил, есть ли какие-либо ограничения внутри pod. Вы можете прочитать о них много на Управление вычислительными ресурсами для контейнеров .

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

Если ограничения не установлены, это может быть связано с тем, как вы установили minik8s. Я думаю, что по умолчанию он устанавливается с 4G память, вы можете посмотреть альтернативные способы установки minik8s . С multipass вы можете указать больше памяти для выделения.

Также может быть проблема с Page Cache Sizing, Heap Sizing или количество открытых файлов . Пожалуйста, прочтите Настройка производительности Neo4j .

...