我正在考虑编写一个连接到Netezza box的.NET工具,该工具具有以下功能: 1.检查表的输入列表的分布/偏差2.检查输入查询的查询计划
我知道使用Aginity Workbench和/或NZADmin可以做到这一点,但我想知道是否有任何方法可以在代码中做到这一点,以便我可以进行一些自动调优?
我在网上寻找答案,但关于如何做到这一点或是否可能做到这一点的信息似乎很少。
发布于 2015-01-10 21:42:11
这是可能的,但可能会涉及到相当多的工作。
Aginity使用Netezza的SQL风格与Netezza进行通信。你可以用同样的方式编写你自己的客户端。
例如,要获取查询的查询计划,请使用"EXPLAIN VERBOSE“
EXPLAIN VERBOSE SELECT * FROM foo;
要获得偏斜,请运行以下查询
select count(*) , datasliceid from mytable group by datasliceid order by datasliceid;
以此类推..
即使.Net或nzAdmin使用未记录的功能(使用系统视图来获取硬件状态等),也可以从Aginity中执行相同的操作。您可以尝试通过启用odbc跟踪或在主机上启用日志记录来跟踪它们到底做了什么。
发布于 2015-01-15 04:50:22
您还可以使用/nz/support/bin下的无数脚本作为很好的模板进行绘制。
https://stackoverflow.com/questions/27872705
复制相似问题