index

データベース作った後に、index をつけたらくそ早くなった。

con.execute("create index person_index on person(item, time)")

1e7 でも 0.01sec 以下(測定不能)で抽出できた。これだけデータを保存すると、データファイルが300Mbyte以上になるから、運用的にもこれくらいが限界な気がする。というわけで、使える。

1e7って、100個くらいのデータを1秒間に1回サンプルして保存した場合、1日でいっぱいになっちゃうんだよな。まぁ、そんなに保存しないか。
仮に ascii テキストでやったとすると、1行が30文字だとして、1行あたり30byte、1e7 行だと3e8byte -> 300Mbyte か。まぁ、リーズナブルちゃリーズナブルなわけね。