Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-21972

Allow users to control input data persistence in ML Estimators via a handlePersistence ml.Param

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Incomplete
    • Affects Version/s: 2.2.0
    • Fix Version/s: None
    • Component/s: ML, MLlib
    • Labels:

      Description

      Several Spark ML algorithms (LogisticRegression, LinearRegression, KMeans, etc) call cache() on uncached input datasets to improve performance.

      Unfortunately, these algorithms a) check input persistence inaccurately (SPARK-18608) and b) check the persistence level of the input dataset but not any of its parents. These issues can result in unwanted double-caching of input data & degraded performance (see SPARK-21799).

      This ticket proposes adding a boolean handlePersistence param (org.apache.spark.ml.param) so that users can specify whether an ML algorithm should try to cache un-cached input data. handlePersistence will be true by default, corresponding to existing behavior (always persisting uncached input), but users can achieve finer-grained control over input persistence by setting handlePersistence to false.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                Siddharth Murching Siddharth Murching
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: