java - Spark java数据帧增量col
问题描述
我正在尝试设置一个特定的 id 值,增量将从该值开始。第一次运行应用程序时,我需要生成一个默认值。而当我重新启动应用程序时,我需要设置初始 id 值。我需要增量继续,而不是从 0 或 1 开始。
我没有传递初始值的代码如下所示:
dataset = dataset.withColumn(id, functions.monotonicallyIncreasingId())
我也尝试过使用row_number函数,但我仍然不明白如何设置初始值。
解决方案
I solved this problem First I created Integer maxValue = 0 ; On the second run, I pulled the maximum id value from the saved dataset and wrote it into maxValue. Next I wrote the code: dataset = dataset.withColumn("id", functions.row_number().over(Window.orderBy("columnName")).plus(functions.lit(maxValue)));
推荐阅读
- python - “RuntimeError: No surface found at the given iso value” 将 3d numpy 数组转换为网格时出错
- python - 如何在烧瓶中使用后台线程?
- android - 在 Firebase Analytics 中,如何按应用版本名称过滤事件?
- python - 在 windows 上安装 python 安全更新
- odata - 在 OData 服务中调用 GetEntity 时找不到段的资源
- xml - 根据 1 个文件,压缩文件夹最终会出错
- powershell - PowerShell - 以正确的顺序处理命令行参数
- swift - Swift 5 - MacOS App - 与其他应用程序交互
- javascript - 我在其他部分有错误!你已经这样输入了 2 次
- angular - 如何在组件样式中应用内置主题变量的角度材料?