class Builder extends AnyRef
Feathr Client builder class. To create an instance of FeathrClient, we need a sparkSession and a feature def config or a local override def config or both. To use this builder, instantiate this builder with a spark session. You would need a. feature def config string or feature def config file path, or b. local override def config string or local override def config file path c. At least one of the above parameters is required.
Here are a few examples on how to instantiate a FeathrClient.
FeathrClient.builder(ss).addFeatureDef(..).build() // build with a feature definition content FeathrClient.builder(ss).addFeatureDef(..).addFeatureDefPath(..).build() // build with a combination of feature definition content and path
FeathrClient.builder(ss).addFeatureDef(..).addLocalOverrideFeatureDef(..).build() // build with a feature definition with a localOverride FeathrClient.builder(ss).addFeatureDef(..).addLocalOverrideFeatureDef(..).addLocalOverrideDefPath(..).build() // build with a feature definition //and a combination of local override config content and path This returns an instance of FeathrClient, which can be used to join/generate features.
- returns
a new instance of a FeathrClient based on the provided feature definitions (including any local override definitions)
- Alphabetic
- By Inheritance
- Builder
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
addDataPathHandler(dataPathHandler: Option[DataPathHandler]): Builder
Same as
addDataPathHandler(DataPathHandler)but the input dataPathHandlers is optional and when it is missing, this method performs an no-op.Same as
addDataPathHandler(DataPathHandler)but the input dataPathHandlers is optional and when it is missing, this method performs an no-op.- dataPathHandler
custom data path handler
- returns
FeathrClient.Builder
-
def
addDataPathHandler(dataPathHandler: DataPathHandler): Builder
Add a data path handler to the builder.
Add a data path handler to the builder. Used to handle accessing and loading paths caught by user's udf, validatePath
- dataPathHandler
custom data path handler
- returns
FeathrClient.Builder
-
def
addDataPathHandlers(dataPathHandlers: List[DataPathHandler]): Builder
Add a list of data path handlers to the builder.
Add a list of data path handlers to the builder. Used to handle accessing and loading paths caught by user's udf, validatePath
- dataPathHandlers
custom data path handlers
- returns
FeathrClient.Builder
- def addFeathrExpressionContext(_mvelContext: Option[FeathrExpressionExecutionContext]): Builder
-
def
addFeatureDef(featureDef: Option[String]): Builder
Same as
addFeatureDef(String)but the input feature definition string is optional and when it is missing, this method performs an no-op.Same as
addFeatureDef(String)but the input feature definition string is optional and when it is missing, this method performs an no-op.- featureDef
feature def config string option
- returns
FeathrClient.Builder
-
def
addFeatureDef(featureDef: String): Builder
Add a feature definition config string to the builder.
Add a feature definition config string to the builder.
Note: When multiple feature definitions configs are added to the builder here or using
addFeatureDefPath(), the same feature name is not allowed across multiple definition configs.- featureDef
feature def config string
- returns
FeathrClient.Builder
-
def
addFeatureDefPath(featureDefPath: Option[String]): Builder
Same as
addFeatureDefPath(String)except the input feature definition path is optional and when it is missing, this method performs an no-op.Same as
addFeatureDefPath(String)except the input feature definition path is optional and when it is missing, this method performs an no-op.- featureDefPath
Feature def config file path option
- returns
FeathrClient.Builder
-
def
addFeatureDefPath(featureDefPath: String): Builder
Add a feature definition config path to the builder.
Add a feature definition config path to the builder.
Note: When multiple feature definitions configs are added to the builder here or using
addFeatureDef(), the same feature name is not allowed across multiple definition configs.- featureDefPath
Feature def config file path
- returns
FeathrClient.Builder
-
def
addLocalOverrideDef(localOverrideDef: Option[String]): Builder
Same as
addLocalOverrideDef(String)except the input feature definition path is optional and when it is missing, * this method performs an no-op.Same as
addLocalOverrideDef(String)except the input feature definition path is optional and when it is missing, * this method performs an no-op.- localOverrideDef
local feature def config string option
- returns
FeathrClient.Builder
-
def
addLocalOverrideDef(localOverrideDef: String): Builder
Add a local override feature definition string to the builder.
Add a local override feature definition string to the builder. A feature defined in this override config will replace the same feature defined in the definitions created from
addFeatureDef()oraddFeatureDefPath()methods.Note: When multiple local override configs are added to the builder here or using
addLocalOverrideDefPath(), the same feature name is not allowed across multiple override files.- localOverrideDef
local feature def config string
- returns
FeathrClient.Builder
-
def
addLocalOverrideDefPath(localOverrideDefPath: Option[String]): Builder
Same as
addLocalOverrideDefPath(String)except the input feature definition path is optional and when it is missing, this method performs an no-op.Same as
addLocalOverrideDefPath(String)except the input feature definition path is optional and when it is missing, this method performs an no-op.- localOverrideDefPath
local feature def config file path option
- returns
FeathrClient.Builder
-
def
addLocalOverrideDefPath(localOverrideDefPath: String): Builder
Add a local override feature definition path to the builder.
Add a local override feature definition path to the builder. A feature defined in this override config will replace the same feature defined in the definitions created from
addFeatureDef()oraddFeatureDefPath()methods.Note: When multiple local override configs are added to the builder here or using
addLocalOverrideDef(), the same feature cannot be across multiple override files.z- localOverrideDefPath
local feature def config file path option
- returns
FeathrClient.Builder
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
build(): FeathrClient
Build a new instance of the FeathrClient from the added feathr definition configs and any local overrides.
Build a new instance of the FeathrClient from the added feathr definition configs and any local overrides.
- Exceptions thrown
[[IllegalArgumentException]]an error when no feature definitions nor local overrides are configured.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()