小编Cra*_*son的帖子

核心数据版本控制 - 需要多个映射模型

我有一个使用Core Data的现有项目,我的xcdatamodeldbundle中有3个版本.到目前为止,我只使用了轻量级迁移,因为我主要添加了新的参数和实体,但是我现在希望将现有参数移动到新实体中.我意识到我必须mapping model克服一个这样做,以便在参数之间迁移数据.

我认为有些用户使用该版本的应用程序的旧版本,而其他版本使用版本2和3.

问题:

  1. 我是否需要创建从所有现有版本到新版本的映射模型,或者仅从最新版本创建映射模型
  2. 我是否需要更改/禁用我的轻量级迁移选项NSPersistentStoreCoordinator?目前我启用了以下选项:

    NSMigratePersistentStoresAutomaticallyOption
    NSInferMappingModelAutomaticallyOption

我认为仍然需要轻量级迁移从v1移动到v2到v3,但是新的映射模型需要从v3到v4.我已经浏览了一下,但由于大多数教程仅涵盖2个版本,因此无法找到有关这一切是如何发生的任何信息.

谢谢

core-data objective-c core-data-migration ios

5
推荐指数
1
解决办法
689
查看次数

使用 PutRecords 将多条记录加载到 Kinesis - 如何在发生故障时仅重新发送失败的记录?

我\xe2\x80\x99m 使用 Lambda 将数据记录加载到 Kinesis 中,并且经常想要添加最多 500K 条记录,我将这些记录批量分成 500 条,并使用 Boto 的方法将put_records它们发送到 Kinesis。我有时会看到由于超出允许的吞吐量而导致的失败。

\n\n

发生这种情况时重试的最佳方法是什么?理想情况下,我不想在数据流中出现重复的消息,所以我不想简单地重新发送所有 500 条记录,但我很难知道如何仅重试失败的消息。该方法的响应put_records似乎非常有用。

\n\n

我可以依赖响应记录列表的顺序与我传递给 putRecords 的列表的顺序相同吗?

\n\n

我知道我可以增加分片数量,但我\xe2\x80\x99d 希望显着增加将数据加载到此 Kinesis 流的并行 Lambda 函数的数量。我们计划根据源系统对数据进行分区,我不能保证多个函数不会将数据写入同一个分片并超出允许的吞吐量。因此,我认为增加分片不会消除重试策略的需要。

\n\n

或者,有人知道 KPL 是否会自动为我处理这个问题?

\n

amazon-web-services amazon-kinesis aws-lambda amazon-kinesis-kpl

3
推荐指数
1
解决办法
5039
查看次数