我还没有交出细节,但我正准备在Java中实现一个命令行搜索工具来搜索包含两个字段(docid,orgid)的文件。我已经了解到这个文件开始很小,并且一直在增长。我需要能够通过docid并取回组织。快速搜索大型平面文件的最佳方法是什么?
有谁可以告诉我 - 什么可能是最好的技术来搜索像我上面提到的平面文件?目前,我们只处理5万行(超过两个月)的文件中的数据,但一旦系统安装到位后,它的增长速度会更快。
它似乎将这个存储在一个可搜索的二进制系统中,但我不确定开始时需要注意什么。
我可以将其转储到数据库中,但这似乎是矫枉过正。另外要做到这一点,我将不得不安装在服务器上的数据库,这将是困难的。
为什么它会过度杀伤? – 2013-02-25 19:31:58
您会偶尔进行一次搜索,还是希望能够为多个查询提供快速答案的服务?如果a)在第二种情况下查看是否不能使用grep,egrep或awk,请考虑数据库 - 因为这正是数据库首先发明的原因。 – Ingo 2013-02-25 19:36:03
我认为这将有助于提供更多的细节。多久添加一次以及添加多少次?一天一次?一天几千?连续地,在白天每秒几秒?像这样的东西。然后,每天有多少次搜索? 10,1000,100000?搜索单个项目还是组?它有多大?百万?十亿?什么? – 2013-02-25 19:36:05