文字列検索で悩んでいる

こねログで入力したトランザクションには、発生年月日を頭につけて、音声認識で得たままの形でクラウド(Googleドライブ)に格納するつもり。

この(期間がたてば膨大なレコード数になる)ファイル(と呼ぶのかな?)を検索する必要がある。

例えば「コネちゃん、ごはん。キンカン、1」とか「コネちゃん、うんち、大、中1,中1」とか「コネちゃん、寝始め」とか。。。

全ての先頭に、「YYYYMMDDHHMMSS、コネちゃん、ごはん、キンカン、1」、「YYYYMMDDHHMMSS、コネちゃん、うんち、大、中1、中1」、「YYYYMMDDHHMMSS、コネちゃん、寝始め。

このファイルから、「コネちゃん、朝ごはん」で検索すれば、朝ごはんの時間を知ることができる。但し、朝ごはんは、午前6時から午前12時までに検索範囲を決める事は言うまでもないが。。。

Unixならgrepがあるが、Javaではmatch?

読み込みサイズは、無限大ではない(実装メモリ量の制約がある)

結局、トランザクションは1月ごとに1ファイルにまとめる事が必要か?

1月単位で検索し、検索結果をメモリ中に格納して、全ファイルを検索終わったら結果だけを表示する?

これと対抗する(今までのホスト的な考えだが)ファイルフォーマットを決めて検索対象(文字列)があるファイル位置を決めて検索する?

あるいは、DBに格納してDBMSの機能に依存する?容量の限界を意識するにはどうする?(GOする?ではないか)