Spark - Как получить последний час в пути S3? - PullRequest
0 голосов
/ 03 октября 2018

Я использую записную книжку Databricks с Spark и Scala для чтения данных из S3 в DataFrame:

myDf = spark.read.parquet(s"s3a://data/metrics/*/*/*/).где * подстановочные знаки представляют год / месяц / день.

Или я просто прописал это жестко: myDf = spark.read.parquet(s"s3a://data/metrics/2018/05/20/)

Теперь я хочу добавить параметр часа сразу после дня.Идея состоит в том, чтобы получить данные из S3 за последний доступный час.

Если я сделаю myDf = spark.read.parquet(s"s3a://data/metrics/2018/05/20/*), тогда я получу данные за все часы 20 мая.

Как можно добиться этого в записной книжке Databricks без жесткого кодирования часа?

1 Ответ

0 голосов
/ 04 октября 2018

Используйте функцию хронометража

from datetime import datetime, timedelta

latest_hour = datetime.now() - timedelta(hours = 1)

Вы также можете разделить их по году, месяцу, дню, часу

latest_hour.year
latest_hour.month
latest_hour.day
latest_hour.hour
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...