【发布时间】:2016-01-13 18:29:55
【问题描述】:
我使用 AppEngine SDK 的 python API 在数据存储上创建了实体,我想在 Google Cloud Dataflow (Java) 上检索它们。实体的结构是这样的:
- 实体
- embedded_entity (ndb.StructuredProperty(repeated=True))
- 姓名
- 姓名
- 姓名
- 姓名
- embedded_entity (ndb.StructuredProperty(repeated=True))
检索是这样的,但我知道我错过了提取数据的步骤。
static class EmbeddedStringExtractor extends DoFn<Entity, String> {
@Override
public void processElement(ProcessContext c) {
Map<String, Value> main_entity_map = DatastoreHelper.getPropertyMap(c.element());
Entity embedded_entity = entity.get("embedded_entity").getEntityValue();
// missing step
Map<String, Value> embedded_entity_map = DatastoreHelper.getPropertyMap(embedded_entity);
String some_string = DatastoreHelper.getString(embedded_entity_map.get("name"));
}
}
如何循环遍历所有重复的属性?
【问题讨论】:
标签: java python protocol-buffers google-cloud-datastore google-cloud-dataflow