解析 PostgreSQL 中 EXPLAIN 命令的输出
我正在开发一个需要解析执行计划的应用程序(通过发出 EXPLAIN [query] 命令作为输出生成的计划)。您知道我可以使用任何 Java 库来实现此目的吗?我发现 https://github.com/depesz/Pg--Explain 但它是构建的在 Perl 中。
我正在考虑的另一个选择是使用 PostgreSQL 9.1 中提供的 EXPLAIN [query] FORMAT XML。但是,在这种情况下,最好提供生成的计划的 XML 架构。
还有其他我不知道的解决方案吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
你已经得到了正确的答案。为了满足您的自动化需求,请使用 XML 或以下工具:
https://github.com/depesz/Pg--Explain
对于我们其他人来说,交互式版本是真正的瑰宝,我将其发布在这里以便人们找到它:
http://explain.depesz.com/
解释本身的背景位于:
http://www.postgresql.org/docs/current/static/sql -解释.html
但似乎没有引用 DTD 或定义的模式来进行解释。
You've got the right answer right there. For your automated needs use XML or the tools at:
https://github.com/depesz/Pg--Explain
For the rest of us, the interactive version is a real gem, and I'm posting it here so people find it:
http://explain.depesz.com/
Background on explain itself is at:
http://www.postgresql.org/docs/current/static/sql-explain.html
But there does not appear to be a reference to a DTD or defined schema for explain.
我对解析Explain命令的XML计划输出有同样的要求。我使用了 LibXML2 库。它易于使用且功能强大。尝试一下。
I had the same requirement of parsing XML plan output of Explain command. I have used LibXML2 libray. It is easy to use and powerful. Try that.
我有类似的要求,并通过
psql
和jq
解决,例如:您还可以通过管道传输到您熟悉的其他编程语言,例如:
参考文献< /strong>
I have a similar requirement and solved by
psql
andjq
, for example:You can also pipe to other programming languages you are familiar with, for example:
References