GitHub user dosubot[bot] added a comment to the discussion: 关于电网拓扑数据导入

<!-- Answer -->
是的,struct.json 里 "edges" 部分的 path 字段完全可以都指向你提供的 
`/loader/power_data/edge_connected_to.csv`,只要 field_mapping、source/target 
字段和顶点主键一致即可。每个 edgeLabel 的配置会从这个文件读取数据,Loader 会根据你在 struct.json 里配置的 
label、source、target、field_mapping 等信息,导入对应的边。

如果你的 edge_connected_to.csv 里包含了所有类型的边(比如不同类型的节点之间的连接),你可以在 struct.json 里为每个 
edgeLabel 分别配置一段,path 都指向同一个文件,然后用 selected 或 value_mapping 过滤出当前 edgeLabel 
需要的那部分数据。例如:

```json
{
  "label": "LineSegment2LineSegment",
  "source": ["from"],
  "target": ["to"],
  "input": {
    "type": "file",
    "path": "/loader/power_data/edge_connected_to.csv",
    "format": "CSV",
    "header": ["id", "from", "to", "label"]
  },
  "field_mapping": {
    "from": "id",
    "to": "id"
  },
  "selected": ["from", "to"],
  "value_mapping": {
    "label": {
      "CONNECTED_TO": "LineSegment2LineSegment"
    }
  }
}
```

如果你不区分 label,所有边都用同一个 edgeLabel(比如 CONNECTED_TO),那只需要配置一次即可。如果需要区分不同类型的边(比如 
Substation2LineSegment、LineSegment2StationHouse 等),建议在 edge_connected_to.csv 
里加一列类型,然后用 value_mapping 或 selected 过滤。

官方文档和社区案例都支持这种做法,只要配置正确,不需要拆成多个 CSV 
文件,方便后续扩展和维护。[参考](https://github.com/apache/incubator-hugegraph/issues/2749) 
[官方文档](https://github.com/apache/incubator-hugegraph-doc/blob/3e1c610281c91ea3a5c600b393088e9ffae34799/content/en/docs/quickstart/toolchain/hugegraph-loader.md#L323-L974)

如有 struct.json 配置疑问可以发出来,我可以帮你检查。


<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot).*

---
<sup>How did I do? 
[Good](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=great_response)
 | 
[Irrelevant](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=irrelevant_answer)
 | 
[Incorrect](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=incorrect_sources)
 | 
[Verbose](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=too_verbose)
 | 
[Hallucination](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=hallucination)
 | [Report 
🐛](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=bug_report)
 | 
[Other](https://app.dosu.dev/response-feedback/d5463c68-ef16-4789-8504-44512711261d?feedback_type=other)</sup>

[![Chat with 
Dosu](https://dosu.dev/dosu-chat-badge.svg)](https://app.dosu.dev/e5e246fa-a522-4d8a-ab3c-e2588b5b501b/ask?utm_source=github)&nbsp;[![Open
 in 
Cursor](https://dosu.dev/dosu-in-cursor.svg)](https://cursor.com/link/prompt?text=%E6%98%AF%E7%9A%84%EF%BC%8Cstruct.json%20%E9%87%8C%20%22edges%22%20%E9%83%A8%E5%88%86%E7%9A%84%20path%20%E5%AD%97%E6%AE%B5%E5%AE%8C%E5%85%A8%E5%8F%AF%E4%BB%A5%E9%83%BD%E6%8C%87%E5%90%91%E4%BD%A0%E6%8F%90%E4%BE%9B%E7%9A%84%20%60/loader/power_data/edge_connected_to.csv%60%EF%BC%8C%E5%8F%AA%E8%A6%81%20field_mapping%E3%80%81source/target%20%E5%AD%97%E6%AE%B5%E5%92%8C%E9%A1%B6%E7%82%B9%E4%B8%BB%E9%94%AE%E4%B8%80%E8%87%B4%E5%8D%B3%E5%8F%AF%E3%80%82%E6%AF%8F%E4%B8%AA%20edgeLabel%20%E7%9A%84%E9%85%8D%E7%BD%AE%E4%BC%9A%E4%BB%8E%E8%BF%99%E4%B8%AA%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96%E6%95%B0%E6%8D%AE%EF%BC%8CLoader%20%E4%BC%9A%E6%A0%B9%E6%8D%AE%E4%BD%A0%E5%9C%A8%20struct.json%20%E9%87%8C%E9%85%8D%E7%BD%AE%E7%9A%84%20label%E3%80%81source%E3%80%81target%E3%80%81fi
 
eld_mapping%20%E7%AD%89%E4%BF%A1%E6%81%AF%EF%BC%8C%E5%AF%BC%E5%85%A5%E5%AF%B9%E5%BA%94%E7%9A%84%E8%BE%B9%E3%80%82%0A%0A%E5%A6%82%E6%9E%9C%E4%BD%A0%E7%9A%84%20edge_connected_to.csv%20%E9%87%8C%E5%8C%85%E5%90%AB%E4%BA%86%E6%89%80%E6%9C%89%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%BE%B9%EF%BC%88%E6%AF%94%E5%A6%82%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%8A%82%E7%82%B9%E4%B9%8B%E9%97%B4%E7%9A%84%E8%BF%9E%E6%8E%A5%EF%BC%89%EF%BC%8C%E4%BD%A0%E5%8F%AF%E4%BB%A5%E5%9C%A8%20struct.json%20%E9%87%8C%E4%B8%BA%E6%AF%8F%E4%B8%AA%20edgeLabel%20%E5%88%86%E5%88%AB%E9%85%8D%E7%BD%AE%E4%B8%80%E6%AE%B5%EF%BC%8Cpath%20%E9%83%BD%E6%8C%87%E5%90%91%E5%90%8C%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%EF%BC%8C%E7%84%B6%E5%90%8E%E7%94%A8%20selected%20%E6%88%96%20value_mapping%20%E8%BF%87%E6%BB%A4%E5%87%BA%E5%BD%93%E5%89%8D%20edgeLabel%20%E9%9C%80%E8%A6%81%E7%9A%84%E9%82%A3%E9%83%A8%E5%88%86%E6%95%B0%E6%8D%AE%E3%80%82%E4%BE%8B%E5%A6%82%EF%BC%9A%0A%0A%60%60%60json%0A%7B%0A%20%20%22label%22%3A%20%22LineSegment2LineSegment%22
 
%2C%0A%20%20%22source%22%3A%20%5B%22from%22%5D%2C%0A%20%20%22target%22%3A%20%5B%22to%22%5D%2C%0A%20%20%22input%22%3A%20%7B%0A%20%20%20%20%22type%22%3A%20%22file%22%2C%0A%20%20%20%20%22path%22%3A%20%22/loader/power_data/edge_connected_to.csv%22%2C%0A%20%20%20%20%22format%22%3A%20%22CSV%22%2C%0A%20%20%20%20%22header%22%3A%20%5B%22id%22%2C%20%22from%22%2C%20%22to%22%2C%20%22label%22%5D%0A%20%20%7D%2C%0A%20%20%22field_mapping%22%3A%20%7B%0A%20%20%20%20%22from%22%3A%20%22id%22%2C%0A%20%20%20%20%22to%22%3A%20%22id%22%0A%20%20%7D%2C%0A%20%20%22selected%22%3A%20%5B%22from%22%2C%20%22to%22%5D%2C%0A%20%20%22value_mapping%22%3A%20%7B%0A%20%20%20%20%22label%22%3A%20%7B%0A%20%20%20%20%20%20%22CONNECTED_TO%22%3A%20%22LineSegment2LineSegment%22%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A%60%60%60%0A%0A%E5%A6%82%E6%9E%9C%E4%BD%A0%E4%B8%8D%E5%8C%BA%E5%88%86%20label%EF%BC%8C%E6%89%80%E6%9C%89%E8%BE%B9%E9%83%BD%E7%94%A8%E5%90%8C%E4%B8%80%E4%B8%AA%20edgeLabel%EF%BC%88%E6%AF%94%E5%A6%82%20CONNECTED_TO%EF%BC%
 
89%EF%BC%8C%E9%82%A3%E5%8F%AA%E9%9C%80%E8%A6%81%E9%85%8D%E7%BD%AE%E4%B8%80%E6%AC%A1%E5%8D%B3%E5%8F%AF%E3%80%82%E5%A6%82%E6%9E%9C%E9%9C%80%E8%A6%81%E5%8C%BA%E5%88%86%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E8%BE%B9%EF%BC%88%E6%AF%94%E5%A6%82%20Substation2LineSegment%E3%80%81LineSegment2StationHouse%20%E7%AD%89%EF%BC%89%EF%BC%8C%E5%BB%BA%E8%AE%AE%E5%9C%A8%20edge_connected_to.csv%20%E9%87%8C%E5%8A%A0%E4%B8%80%E5%88%97%E7%B1%BB%E5%9E%8B%EF%BC%8C%E7%84%B6%E5%90%8E%E7%94%A8%20value_mapping%20%E6%88%96%20selected%20%E8%BF%87%E6%BB%A4%E3%80%82%0A%0A%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%E5%92%8C%E7%A4%BE%E5%8C%BA%E6%A1%88%E4%BE%8B%E9%83%BD%E6%94%AF%E6%8C%81%E8%BF%99%E7%A7%8D%E5%81%9A%E6%B3%95%EF%BC%8C%E5%8F%AA%E8%A6%81%E9%85%8D%E7%BD%AE%E6%AD%A3%E7%A1%AE%EF%BC%8C%E4%B8%8D%E9%9C%80%E8%A6%81%E6%8B%86%E6%88%90%E5%A4%9A%E4%B8%AA%20CSV%20%E6%96%87%E4%BB%B6%EF%BC%8C%E6%96%B9%E4%BE%BF%E5%90%8E%E7%BB%AD%E6%89%A9%E5%B1%95%E5%92%8C%E7%BB%B4%E6%8A%A4%E3%80%82%5B%E5%8F%82%E8%80%83%5D%28https%3A//git
 
hub.com/apache/incubator-hugegraph/issues/2749%29%20%5B%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%5D%28https%3A//github.com/apache/incubator-hugegraph-doc/blob/3e1c610281c91ea3a5c600b393088e9ffae34799/content/en/docs/quickstart/toolchain/hugegraph-loader.md%23L323-L974%29%0A%0A%E5%A6%82%E6%9C%89%20struct.json%20%E9%85%8D%E7%BD%AE%E7%96%91%E9%97%AE%E5%8F%AF%E4%BB%A5%E5%8F%91%E5%87%BA%E6%9D%A5%EF%BC%8C%E6%88%91%E5%8F%AF%E4%BB%A5%E5%B8%AE%E4%BD%A0%E6%A3%80%E6%9F%A5%E3%80%82)&nbsp;[![Join
 
Discord](https://img.shields.io/badge/join-5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share
 on 
X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/apache/incubator-hugegraph/discussions/2917)

GitHub link: 
https://github.com/apache/incubator-hugegraph/discussions/2917#discussioncomment-15193370

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: [email protected]

Reply via email to