

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# EvaluateDataQuality kelas
<a name="glue-etl-scala-apis-glue-dq-EvaluateDataQuality"></a>


|  | 
| --- |
|  AWS Kualitas Data Glue dalam rilis pratinjau untuk AWS Glue dan dapat berubah sewaktu-waktu.  | 

**Package: com.amazonaws.services.glue.dq**

```
object EvaluateDataQuality
```

## Def berlaku
<a name="glue-etl-scala-apis-glue-dq-EvaluateDataQuality-defs-apply"></a>

```
def apply(frame: DynamicFrame,
            ruleset: String,
            publishingOptions: JsonOptions = JsonOptions.empty): DynamicFrame
```

Mengevaluasi aturan kualitas data terhadap`DynamicFrame`, dan mengembalikan yang baru `DynamicFrame` dengan hasil evaluasi. Untuk mempelajari lebih lanjut tentang Kualitas Data AWS Glue, lihat[AWS Glue Kualitas Data](glue-data-quality.md).
+ `frame`— `DynamicFrame` Yang ingin Anda evaluasi kualitas data.
+ `ruleset`— Aturan Bahasa Definisi Kualitas Data (DQDL) dalam format string. Untuk mempelajari lebih lanjut tentang DQDL, lihat panduan. [Referensi Bahasa Definisi Kualitas Data (DQDL)](dqdl.md)
+ `publishingOptions`— Kamus yang menentukan opsi berikut untuk mempublikasikan hasil evaluasi dan metrik:
  + `dataQualityEvaluationContext`— String yang menentukan namespace di mana AWS Glue harus mempublikasikan Amazon CloudWatch metrik dan hasil kualitas data. Metrik agregat muncul di CloudWatch, sementara hasil lengkap muncul di antarmuka AWS Glue Studio.
    + Wajib: Tidak
    + Nilai default: `default_context`
  + `enableDataQualityCloudWatchMetrics`— Menentukan apakah hasil evaluasi kualitas data harus dipublikasikan ke CloudWatch. Anda menentukan namespace untuk metrik menggunakan opsi. `dataQualityEvaluationContext`
    + Wajib: Tidak
    + Nilai default: Salah
  + `enableDataQualityResultsPublishing`— Menentukan apakah hasil kualitas data harus terlihat pada tab **Kualitas Data** di antarmuka AWS Glue Studio.
    + Wajib: Tidak
    + Nilai default: Benar
  + `resultsS3Prefix`— Menentukan lokasi Amazon S3 di mana AWS Glue dapat menulis hasil evaluasi kualitas data.
    + Wajib: Tidak
    + Nilai default: “” (string kosong)

## Contoh
<a name="glue-etl-scala-apis-glue-dq-EvaluateDataQuality-example"></a>

Contoh kode berikut menunjukkan bagaimana mengevaluasi kualitas data untuk `DynamicFrame` sebelum melakukan `SelectFields` transformasi. Skrip memverifikasi bahwa semua aturan kualitas data lulus sebelum mencoba transformasi.

```
import com.amazonaws.services.glue.GlueContext
import com.amazonaws.services.glue.MappingSpec
import com.amazonaws.services.glue.errors.CallSite
import com.amazonaws.services.glue.util.GlueArgParser
import com.amazonaws.services.glue.util.Job
import com.amazonaws.services.glue.util.JsonOptions
import org.apache.spark.SparkContext
import scala.collection.JavaConverters._
import com.amazonaws.services.glue.dq.EvaluateDataQuality

object GlueApp {
  def main(sysArgs: Array[String]) {
    val spark: SparkContext = new SparkContext()
    val glueContext: GlueContext = new GlueContext(spark)
    // @params: [JOB_NAME]
    val args = GlueArgParser.getResolvedOptions(sysArgs, Seq("JOB_NAME").toArray)
    Job.init(args("JOB_NAME"), glueContext, args.asJava)
    
    // Create DynamicFrame with data
    val Legislators_Area = glueContext.getCatalogSource(database="legislators", tableName="areas_json", transformationContext="S3bucket_node1").getDynamicFrame()

    // Define data quality ruleset
    val DQ_Ruleset = """
      Rules = [ColumnExists "id"]
    """

    // Evaluate data quality
    val DQ_Results = EvaluateDataQuality.apply(frame=Legislators_Area, ruleset=DQ_Ruleset, publishingOptions=JsonOptions("""{"dataQualityEvaluationContext": "Legislators_Area", "enableDataQualityMetrics": "true", "enableDataQualityResultsPublishing": "true"}"""))
    assert(DQ_Results.filter(_.getField("Outcome").contains("Failed")).count == 0, "Failing DQ rules for Legislators_Area caused the job to fail.")

    // Script generated for node Select Fields
    val SelectFields_Results = Legislators_Area.selectFields(paths=Seq("id", "name"), transformationContext="Legislators_Area")

    Job.commit()
  }
}
```