Cypher与RDF:图数据库查询与数据整合的利器
1. Cypher查询参数传递
Cypher支持带参数的查询,这一特性简化了查询的复用,也让执行计划的缓存更加容易,进而加快查询执行速度。在Elixir中,Bolt.Sips模块允许我们将参数作为一个映射传递给 query/3 函数的第三个参数(第一个参数是数据库连接,第二个是查询字符串)。
为了支持参数传递,我们对 GraphCommons.Service 行为进行了更新,添加了两个可选回调:
@optional_callbacks query_graph: 2
@optional_callbacks query_graph!: 2
@callback query_graph(GraphCommons.Query.t(), map()) :: any()
@callback query_graph!(GraphCommons.Query.t(), map()) :: any()
同时,在 GraphCommons.Utils 中添加了 cypher!/2 查询辅助函数,与 cypher!/1 辅助函数配对:
apps/graph_commons/lib/graph_commons/utils.ex
def cypher!(query_string, query_params),
do: to_qu
超级会员免费看
订阅专栏 解锁全文
950

被折叠的 条评论
为什么被折叠?



