Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gaia 跑查询遇到 grpc问题 #891

Open
bookug opened this issue Oct 13, 2021 · 14 comments
Open

gaia 跑查询遇到 grpc问题 #891

bookug opened this issue Oct 13, 2021 · 14 comments
Assignees
Labels
bug Something isn't working component:gaia GAIA, the preview release of the next version of GIE requires-further-info Issues that requires further information from the user.

Comments

@bookug
Copy link

bookug commented Oct 13, 2021

主要是超时和消息过大两个问题,grpc限制消息不超过4M,单个查询不超过600s。
如何修改这个设置?
gaia里面编译后start_rpc_service就没有配置选项……
gremlin server 和 gremlin console客户端是可以设置超时和content length的

@sighingnow
Copy link
Collaborator

Thanks for reporting!

@sighingnow sighingnow added bug Something isn't working component:gaia GAIA, the preview release of the next version of GIE priority:high Issues in high priority labels Oct 14, 2021
@shirly121
Copy link
Collaborator

gaia引擎没有对query返回数据量的限制,可以限制超时,具体配置是https://github.com/alibaba/GraphScope/blob/main/research/gaia/scripts/conf/gaia.args.json#L6

@bookug
Copy link
Author

bookug commented Oct 14, 2021

gaia引擎没有对query返回数据量的限制,可以限制超时,具体配置是https://github.com/alibaba/GraphScope/blob/main/research/gaia/scripts/conf/gaia.args.json#L6
这个我早就修改过了,只会影响gremlin server行为,影响不到 start_rpc_service 的报错。
请看清楚我的问题,针对性回答。

@shirly121
Copy link
Collaborator

十分抱歉,grpc消息限制以及timeout配置目前确实没有透露给外部用户;timeout这个比较容易解决,消息限制可能需要一个端到到的配置链路设计,这个我们需要时间再看下;我们这边优先先看下timeout问题,你看可以吗?

@sighingnow
Copy link
Collaborator

I suggest to set the maximum grpc message size to the maximum possible value (e.g., INT_MAX).

@bookug
Copy link
Author

bookug commented Oct 15, 2021

好的,多谢啦。
另外还有个问题,我在跑查询时,发现即使搜索空间很大,也没用用到多核或simd的能力。
但gaia论文里面似乎有单查询并行的优化,请问如何开启?是更改配置文件里的worker数量么?
(我默认worker数量是分布式场景的)

十分抱歉,grpc消息限制以及timeout配置目前确实没有透露给外部用户;timeout这个比较容易解决,消息限制可能需要一个端到到的配置链路设计,这个我们需要时间再看下;我们这边优先先看下timeout问题,你看可以吗?

@shirly121
Copy link
Collaborator

workers是用来控制查询在单机器上使用的线程数量,可以通过这个参数来控制单查询的并行度;query默认是发往所有机器,所以并行度是|hosts|*|workers|

@bookug
Copy link
Author

bookug commented Oct 20, 2021

workers是用来控制查询在单机器上使用的线程数量,可以通过这个参数来控制单查询的并行度;query默认是发往所有机器,所以并行度是|hosts|*|workers|

设置了8个worker,部分查询上有提升效果,不超过20%。
但发现内存消耗增加了,有些查询原来能跑,现在直接把机器跑崩了。
我看里面用的是rust tokio,还是基于线程而非进程来做并发对吧。
可为啥内存占用会增大这么多呢

@longbinlai
Copy link
Collaborator

workers是用来控制查询在单机器上使用的线程数量,可以通过这个参数来控制单查询的并行度;query默认是发往所有机器,所以并行度是|hosts|*|workers|

设置了8个worker,部分查询上有提升效果,不超过20%。 但发现内存消耗增加了,有些查询原来能跑,现在直接把机器跑崩了。 我看里面用的是rust tokio,还是基于线程而非进程来做并发对吧。 可为啥内存占用会增大这么多呢

您好,worker提高确实对于特定查询(尤其是本来耗时不太长且都是一跳两跳范围内的查询)的效果不是非常明显,我们最近已经在对gaia做一些优化,应该很快能更新现在的gaia。针对您遇到的内存问题的查询,您方便提供下数据集(如果公开)和查询吗?如果不方便,是否可以写个查询大概的样子,方便我们做下测试。谢谢!

@bookug
Copy link
Author

bookug commented Nov 2, 2021

twitter,三跳和六跳查询

@longbinlai
Copy link
Collaborator

确认下是这个twitter(https://law.di.unimi.it/webdata/twitter-2010/ )。另外,3跳和6跳是某个点出发.out() 3次和6次,且不加任何限制吗?

@shirly121
Copy link
Collaborator

workers是用来控制查询在单机器上使用的线程数量,可以通过这个参数来控制单查询的并行度;query默认是发往所有机器,所以并行度是|hosts|*|workers|

设置了8个worker,部分查询上有提升效果,不超过20%。 但发现内存消耗增加了,有些查询原来能跑,现在直接把机器跑崩了。 我看里面用的是rust tokio,还是基于线程而非进程来做并发对吧。 可为啥内存占用会增大这么多呢

内存占用问题可能是默认情况下没有bound内存,可以在gaia.args.json里设置下,"memory_limit": XXX,单位为MB,具体可以参考机器的内存来配置

@bookug
Copy link
Author

bookug commented Nov 3, 2021

确认下是这个twitter(https://law.di.unimi.it/webdata/twitter-2010/ )。另外,3跳和6跳是某个点出发.out() 3次和6次,且不加任何限制吗?

是的

@bookug
Copy link
Author

bookug commented Nov 3, 2021

workers是用来控制查询在单机器上使用的线程数量,可以通过这个参数来控制单查询的并行度;query默认是发往所有机器,所以并行度是|hosts|*|workers|

设置了8个worker,部分查询上有提升效果,不超过20%。 但发现内存消耗增加了,有些查询原来能跑,现在直接把机器跑崩了。 我看里面用的是rust tokio,还是基于线程而非进程来做并发对吧。 可为啥内存占用会增大这么多呢

内存占用问题可能是默认情况下没有bound内存,可以在gaia.args.json里设置下,"memory_limit": XXX,单位为MB,具体可以参考机器的内存来配置

但是单线程可以跑完,多线程则OOM……怎么解释呢

@yecol yecol added requires-further-info Issues that requires further information from the user. and removed priority:high Issues in high priority labels Dec 8, 2021
@lidongze0629 lidongze0629 added this to To do in [GIE] Replacing MG with GAIA via automation May 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working component:gaia GAIA, the preview release of the next version of GIE requires-further-info Issues that requires further information from the user.
Projects
No open projects
Development

No branches or pull requests

7 participants