有没有人知道使用类似sql的声明式查询语言提供简单,快速的平面文件查询的工具?因为输入数据通常在查询运行后立即被丢弃,所以我宁愿不支付将文件加载到DB中的开销.
考虑数据文件“animals.txt”:
dog 15 cat 20 dog 10 cat 30 dog 5 cat 40
假设我想提取每个独特动物的最高价值.我想写一些类似的东西:
cat animals.txt | foo "select $1,max(convert($2 using decimal)) group by $1"
我可以使用排序得到几乎相同的结果:
cat animals.txt | sort -t " " -k1,1 -k2,2nr
而且我总是可以从那里掉入awk,但是当一个类似sql的语言似乎能够如此干净地解决问题时,这一切都有点尴尬(不能抵制).
我已经考虑编写一个sqlite的包装器,它将根据输入数据自动创建一个表,我已经在单处理器模式下研究了使用Hive,但我不禁感到这个问题已经解决了.我错过了什么吗?这个功能是否已经由另一个标准工具实现?
HALP!