Чтобы добавить к этому вариант использования, который часто не обсуждается, я буду представлять решение при подаче приложения Spark
через spark-submit
в локальном режиме.
Согласно gitbook Освоение Apache Spark Яцек Ласковски :
Вы можете запустить Spark в локальном режиме. В этом нераспределенном режиме развертывания с одним JVM Spark генерирует все компоненты исполнения - драйвер, исполнитель, бэкэнд и мастер - в той же JVM. Это единственный режим, когда драйвер используется для выполнения.
blockquote>Таким образом, если вы испытываете ошибки
OOM
сheap
, достаточно скорректироватьdriver-memory
, а неexecutor-memory
.Вот пример:
spark-1.6.1/bin/spark-submit --class "MyClass" --driver-memory 12g --master local[*] target/scala-2.10/simple-project_2.10-1.0.jar
Прямой аналог к
import java.util.List;
List<? extends MyInterface> list;
import java.util.List
var list : List[_ <: MyInterface] = _;
То же соглашение с Буфером
Для ответа на комментарий, Вы сделали earler, в типе Java параметры являются всегда инвариантными, не ковариантными.
Я не уверен вообще, что я понимаю Ваш вопрос (достаточно вероятно, кофе с моей стороны), но он кажется, что Вы спрашиваете приблизительно универсальные классы . Если это не это, отбросьте комментарий или добавьте больше информации к Вашему вопросу & я перепроверю позже & отредактируйте мой ответ.