为 Azure 数据流中的文件动态添加时间戳
Dynamically Add a Timestamp To Files in Azure Data Flow
我一直在开发一个 Azure 项目,我想使用包含时间戳的动态文件名创建一个数据流。
例如,如果输出是文件名 'A' --> 'A_YY-mm-dd_hh_mm_ss'
我已经使用这个 link Here 在数据工厂上做到了这一点
但在这种情况下,我不知道如何使用它。
这是我的数据流
输入的是提取文件(我是用复制数据做的)
您可以参考this code。我尝试修改 filenamePrefixForWindow
方法,我能够实现这一点。这些是我所做的更改 -
public String filenamePrefixForWindow(IntervalWindow window) {
Calendar calendar = Calendar.getInstance();
String year = String.valueOf(calendar.get(Calendar.YEAR));
String month = String.format("%02d",(calendar.get(Calendar.MONTH)+1));
String date = String.format("%02d",calendar.get(Calendar.DATE));
int hh = calendar.get(Calendar.HOUR);
String hour = String.format("%02d",(calendar.get(Calendar.AM_PM) == 0) ? hh:hh+12);
String minute = String.format("%02d",calendar.get(Calendar.MINUTE));
String full_date = year+"-"+month+"-"+date+"-"+hour+"-"+minute;
String prefix =
baseFilename.isDirectory() ? "" : baseFilename.getFilename();
return String.format(
"%s/%s/%s/%s/%s/output-%s", prefix,year,month,date,hour,full_date);
}
我一直在开发一个 Azure 项目,我想使用包含时间戳的动态文件名创建一个数据流。
例如,如果输出是文件名 'A' --> 'A_YY-mm-dd_hh_mm_ss'
我已经使用这个 link Here 在数据工厂上做到了这一点
但在这种情况下,我不知道如何使用它。
这是我的数据流
输入的是提取文件(我是用复制数据做的)
您可以参考this code。我尝试修改 filenamePrefixForWindow
方法,我能够实现这一点。这些是我所做的更改 -
public String filenamePrefixForWindow(IntervalWindow window) {
Calendar calendar = Calendar.getInstance();
String year = String.valueOf(calendar.get(Calendar.YEAR));
String month = String.format("%02d",(calendar.get(Calendar.MONTH)+1));
String date = String.format("%02d",calendar.get(Calendar.DATE));
int hh = calendar.get(Calendar.HOUR);
String hour = String.format("%02d",(calendar.get(Calendar.AM_PM) == 0) ? hh:hh+12);
String minute = String.format("%02d",calendar.get(Calendar.MINUTE));
String full_date = year+"-"+month+"-"+date+"-"+hour+"-"+minute;
String prefix =
baseFilename.isDirectory() ? "" : baseFilename.getFilename();
return String.format(
"%s/%s/%s/%s/%s/output-%s", prefix,year,month,date,hour,full_date);
}