当前位置:  开发笔记 > 数据库 > 正文

Linux上的文本文件的SQL查询引擎?

如何解决《Linux上的文本文件的SQL查询引擎?》经验,为你挑选了2个好方法。

我们一直在命令行使用grep,cut,sort,uniq和join来进行数据分析.他们工作得很好,虽然有缺点.例如,您必须为每个工具提供列号.我们经常有宽文件(很多列)和一个列标题,用于给出列名.实际上,我们的文件看起来很像SQL表.我确定有一个驱动程序(ODBC?)将操作分隔的文本文件,以及一些将使用该驱动程序的查询引擎,所以我们可以在我们的文本文件上使用SQL查询.由于进行分析通常是临时的,因此查询新文件(仅使用我在此目录中指定的文件)而不是在某些配置中声明特定表必须是最小化设置.

实际上,最简单的是什么?也就是说,最容易设置和用于应用文本文件的SQL引擎和驱动程序?



1> ephemient..:

David Malcolm编写了一个名为" squeal "(以前称为"show")的小工具,它允许您使用类似SQL的命令行语法来解析各种格式的文本文件,包括CSV.

关于squeal主页的一个例子:

$ squeal "count(*)", source from /var/log/messages* group by source order by "count(*)" desc
count(*)|source              |
--------+--------------------+
1633    |kernel              |
1324    |NetworkManager      |
98      |ntpd                |
70      |avahi-daemon        |
63      |dhclient            |
48      |setroubleshoot      |
39      |dnsmasq             |
29      |nm-system-settings  |
27      |bluetoothd          |
14      |/usr/sbin/gpm       |
13      |acpid               |
10      |init                |
9       |pcscd               |
9       |pulseaudio          |
6       |gnome-keyring-ask   |
6       |gnome-keyring-daemon|
6       |gnome-session       |
6       |rsyslogd            |
5       |rpc.statd           |
4       |vpnc                |
3       |gdm-session-worker  |
2       |auditd              |
2       |console-kit-daemon  |
2       |libvirtd            |
2       |rpcbind             |
1       |nm-dispatcher.action|
1       |restorecond         |



2> bambam..:

q-直接在CSV或TSV文件上运行SQL:

https://github.com/harelba/q

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有