Про стэкинг не согласен - ничего не мешает делать стэкинг через свои Estimator и Model. Благо все модели сами по себе сериализуются. Там это ни разу не сложнее, чем сделать свой ClassifierMixin в scikit-learn.
Про pandas - тоже не считаю это недостатком - у панд своих проблем куча, их API переусложнен и не прозрачен (особенно с их индексами-реиндексами и тд), ещё и меняется с каждой версией. Их костыли с BlockManager тянутся с давних времён, а уж как они память едят... Ну и наконец есть pyarrow, если очень хочется связать с спарком.
Про DL - есть dl4j-spark, который работает из коробки. Инференс есть в MMLSpark на CNTK. И dl4j и cntk можно использовать как бэкэнд для Keras.
Про онлайн обучение не знаю, но в MMLSpark есть VowpalVabbit... Можно его посмотреть.
Про MLLib - ну просто RDD быстрее. Да и вообще, если быть честным, то в Spark нет такого объекта, как DataFrame - это просто RDD[Row], а DataFrame просто синтаксический сахар.
В общем многие утверждения спорные.
Вам хочется ответить на каждый пункт. Да ничего не мешает, и ручками свой MMLSpark майкрософту не мешает и если у вас отдел из 100 спарководов, тоже ничего не мешает, НО. Обычный юзер спарка, который хочет коробку может и не быть гуру ручной реализации стэкинга, вы допускаете это?