Converter colunas do quadro de dados Spark com uma matriz de objetos JSON em várias linhas

Tenho dados JSON de streaming, cuja estrutura pode ser descrita com a classe de caso abaixo

case class Hello(A: String, B: Array[Map[String, String]])

Os dados de amostra para o mesmo são os seguintes

|  A    | B                                        |
|-------|------------------------------------------|
|  ABC  |  [{C:1, D:1}, {C:2, D:4}]                | 
|  XYZ  |  [{C:3, D :6}, {C:9, D:11}, {C:5, D:12}] |

Quero transformá-lo em

|   A   |  C  |  D   |
|-------|-----|------|
|  ABC  |  1  |  1   |
|  ABC  |  2  |  4   |
|  XYZ  |  3  |  6   |
|  XYZ  |  9  |  11  |
|  XYZ  |  5  |  12  | 

Qualquer ajuda será apreciada

questionAnswers(2)

yourAnswerToTheQuestion