У меня есть объект, не связанный с сериализацией, и мне нужно, чтобы этот объект был на 100% кэширован в памяти все время. Однако, поскольку искровое задание требует большего объема памяти выполнения из-за увеличения нагрузки, он пытается вытеснить кэшированный объект на диск, и поскольку объект не является сериализуемым, я получаю исключение «задача не сериализуемая». Есть ли все равно, чтобы заставить искра постоянно держать объект в кеше?Обеспечение того, что переменная всегда кэшируется в Spark и никогда не выкачивается
0
A
ответ
1
Это не правильное направление. Даже если он кэширован, его также может понадобиться сериализовать, когда удаленный узел пытается его извлечь. Если вы просто хотите всегда кэшировать его на стороне исполнителя, вы можете использовать сопутствующий объект в Scala или singleton pattern в Java, чтобы лениво создать их как статические объекты.