【问题标题】:Does Aws update bill back in time?Aws 是否及时更新账单?
【发布时间】:2017-05-15 18:42:44
【问题描述】:

我正在以编程方式从 s3 存储桶下载 aws bill,解析所有行项目并处理它们。我每天都在做这个过程,方法是记住一个基于账单中最后一个项目的时间戳的标记。因此,在下一次运行中,我将只处理标记之后的行项。但 Aws 正在通过及时添加更多订单项来更新成本值,我在当前方法中忽略了这一点。 我无法处理所有 lineitem,因为有时文件可能很大。 aws 是否在任何地方提到过这个问题?我找不到任何文档。

如果有人能提供更好的方法来解决这个问题,那将会很有帮助。

【问题讨论】:

    标签: java amazon-web-services parsing supercsv aws-java-sdk


    【解决方案1】:

    是的,AWS 可能会更新其账单文件中的先前行项目。 AWS 会不断更新文件中的行项目,直到其创建 72 小时。解析数据的最佳方法是一次解析整个月的数据。在这种情况下,如果月份的日期在 3 日之后,您只需要处理当前月份的数据。

    【讨论】:

    • 您是否引用了文档中提到 72 小时窗口的引文?
    • 不,但这是我的观察。 AWS 不断更新前几天的账单文件,因为对于少数情况,数据没有更新。它会更新它们并给它们一个全新的 ID,所以你的标记逻辑肯定会失败。
    • 注意,我不是 OP,所以它不是“我的”标记逻辑。如果需要重新处理,最好知道真正需要什么。 72 小时听起来像是一个非常官方的数字,如果不是,那么我建议您的回答需要表明这只是您从实践经验中得出的轶事观察。
    • 我在某些情况下看到 AWS 在 5 天前及时更新了账单。每次处理整个月的账单对我来说都很昂贵,这就是我选择标记逻辑的原因。
    【解决方案2】:

    确实如此,根据他们的billing documentation。您有两个选项 - 跟踪程序集 ID 以确定是否有更改,或者在该存储桶中打开版本控制并验证自上次运行以来是否存在相关对象的新/旧版本。

    【讨论】:

    • 版本控制或跟踪程序集 ID 有其缺点。它将更新版本并进行更改以添加新的 lineitems。那么我们如何才能及时跟踪变化呢?
    猜你喜欢
    • 2019-04-30
    • 1970-01-01
    • 2020-12-31
    • 2020-01-09
    • 2014-04-13
    • 1970-01-01
    • 2020-01-21
    • 1970-01-01
    • 2017-05-06
    相关资源
    最近更新 更多