Денормализовать два кадра данных, используя потоковую передачу Spark в Java - PullRequest
0 голосов
/ 29 марта 2019

Используя потоковую передачу Spark в Java, я пытаюсь денормализовать два фрейма данных в один сплющенный фрейм данных. Фрейм данных Practices может содержать повторяющиеся записи (для первичного ключа practice_id ), поэтому я хочу присоединиться, чтобы отфильтровать более старые записи (на основе столбца updated_ts ) .

практики фрейм данных:

+--------------------+----------------+-----------+------------------+
|          updated_ts|   practice_name|practice_id|primary_address_id|
+--------------------+----------------+-----------+------------------+
|2019-03-23T17:08:42Z|Fal Vet Shop    |          1|                 1|
|2019-03-29T03:06:42Z|Fal Vet Shop AAA|          1|                 1|
|2019-03-27T01:45:26Z|Test Shop       |          2|                 2|
+--------------------+----------------+-----------+------------------+

адреса фрейм данных:

+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+
|          updated_ts|country_code|address_type|    city|    address1|address_id|state_code|postal_code|
+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+
|2019-01-20T20:10:39Z|          US|        HOME|Falmouth|5 Country Ln|         1|        ME|      04105|
|2019-01-20T15:09:09Z|          US|         BIZ|Falmouth|13 Main St. |         2|        ME|      04105|
+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+


Как мне получить записи ниже? Я пытался использовать dfPractices.dropDuplicates("practice_id") перед объединением двух фреймов данных, но он сохранил прежнюю запись практики (practice_name = Fal Vet Shop) по сравнению с той, которую я хочу, которая обозначена ниже (practice_name = Fal Vet Shop AAA).

+--------------------+----------------+-----------+------------------+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+
|          updated_ts|   practice_name|practice_id|primary_address_id|          updated_ts|country_code|address_type|    city|    address1|address_id|state_code|postal_code|
+--------------------+----------------+-----------+------------------+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+
|2019-03-29T03:06:42Z|Fal Vet Shop AAA|          1|                 1|2019-01-20T20:10:39Z|          US|        HOME|Falmouth|5 Country Ln|         1|        ME|      04105|
|2019-03-27T01:45:26Z|Test Shop       |          2|                 2|2019-01-20T15:09:09Z|          US|         BIZ|Falmouth|13 Main St. |         2|        ME|      04105|
+--------------------+----------------+-----------+------------------+--------------------+------------+------------+--------+------------+----------+----+----------+-----------+
...