Command to check partitioned directory in KDB

2019-07-17 08:40发布

问题:

I have one 'q' service running. I want to check whether current directory in the service is a partitioned directory or not. Is there any command to do that?

回答1:

https://code.kx.com/q/ref/dotq/#qpf-partition-type or one of the other .Q's should do it for you (https://code.kx.com/q/ref/card/#q). Though KX don't necessarily recommend using .Q utilities.

Another way would be to check for the existence of the variable "date" (if date-partitioned), which lists the available partitioned dates. Assuming there hasn't been a random unrelated global "date" variable created in the process.



回答2:

You can check if par.txt exists in db root (current working directory usually) - this may be a better alternative to relying on something internal within .Q namespace, which is subject to change (although Kx rarely makes breaking changes to it).

So for a partitioned HDB, you'd get the following:

q) `par.txt in key`:.
      1b


标签: kdb dotq