Я запускаю 6-узловой искровый кластер в Google Data Proc, и в течение нескольких минут после запуска искры и выполнения основных операций я получаю следующую ошибку
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000fbe00000, 24641536, 0) failed; error='Cannot allocate memory' (errno=12)
There is insufficient memory for the Java Runtime Environment to continue.
Native memory allocation (mmap) failed to map 24641536 bytes for committing reserved memory.
An error report file with more information is saved as:/home/chris/hs_err_pid21047.log
Я выполнил только две команды:
data = (
spark.read.format("text")
.option("header", "true")
.option("inferSchema", "true")
.load("gs://bucketpath/csv")
)
data.show()
Файл csv хранится в ведре хранилища Google, а размер файла составляет 170 МБ.
Ниже приведены подробные сведения о конфигурации моего кластера.
Name cluster
Region australia-southeast1
Zone australia-southeast1-b
Master node
Machine type n1-highcpu-4 (4 vCPU, 3.60 GB memory)
Primary disk type pd-standard
Primary disk size 50 GB
Worker nodes 5
Machine type n1-highcpu-4 (4 vCPU, 3.60 GB memory)
Primary disk type pd-standard
Primary disk size 15 GB
Local SSDs 0
Preemptible worker nodes 0
Cloud Storage staging bucket dataproc-78f5e64b-a26d-4fe4-bcf9-e1b894db9d8f-au-southeast1
Subnetwork default
Network tags None
Internal IP only No
Image version 1.3.14-deb8
Это выглядело как проблема с памятью, поэтому я попытался изменить тип машины на n1-highcpu-8 (8 виртуальных ЦП, 7,2 ГБ памяти), однако я не могу запустить сообщение экземпляров, поскольку я получаю следующую ошибку
Quota 'CPUS' exceeded. Limit: 24.0 in region australia-southeast1.
Поэтому я не уверен, что нужно делать, чтобы решить эту проблему. Я новичок в Google Cloud Platform и буду очень признателен за любую помощь, чтобы решить эту проблему. Это для сверхкритического проекта
Из-за ошибки вы достигли предела квоты ЦП для своего региона GCP - австралия-юго-восток1. У вас есть как минимум два варианта -
Запросить увеличение квоты для процессоров вычислительных машин. Посетите страницу квот в IAM, выберите свой регион в разделе «Местоположение», выберите «ЦП Compute Engine API» и нажмите «Изменить квоту», чтобы запросить увеличение.
Прямая ссылка (измените "YOUR-GCP-PROJECT-ID") - https://console.cloud.google.com/iam-admin/quotas?project=YOUR-GCP-PROJECT-ID&location=australia-southeast1
Создайте кластер dataproc с меньшим количеством рабочих узлов ИЛИ небольшими типами машин vCPU. Если стандартные типы машин не соответствуют вашим требованиям, попробуйте нестандартные типы машин.
Вы также можете проверить лимит квоты ЦП с помощью инструмента gcloud cli -
$ gcloud compute regions list --filter='name=australia-southeast1'
NAME CPUS DISKS_GB ADDRESSES RESERVED_ADDRESSES STATUS TURNDOWN_DATE
australia-southeast1 0/8 0/2048 0/8 0/1 UP