in src/main/scala/deequ/deequ-analysis-verification-runner.scala [163:184]
def extractSuggestionsFromDynamo(dynoTable: String, dbName: String, table: String): DataFrame = {
val client = AmazonDynamoDBClientBuilder.standard().build()
val dynamoDB: DynamoDB = new DynamoDB(client)
val tableSuggestions: Table = dynamoDB.getTable(dynoTable)
val index: Index = tableSuggestions.getIndex("table-index")
val querySpec: QuerySpec = new QuerySpec()
querySpec.withKeyConditionExpression("tableHashKey = :v_table").withValueMap(new ValueMap().withString(":v_table", dbName + "-" + table))
val items = index.query(querySpec)
val iterator = items.iterator()
var listSuggestions = List.empty[String]
while (iterator.hasNext()) {
listSuggestions = listSuggestions :+ iterator.next().toJSON()
}
val rddDynamoSuggestions = spark.sparkContext.parallelize(listSuggestions)
val dfDynamoSuggestions = spark.read.json(rddDynamoSuggestions)
return dfDynamoSuggestions
}