企業内で動くシステムの多くは表計算ソフトウェアを使って作られたデータを元に動くのではないでしょうか。MS Excelはもちろん、CSVファイルやGoogleスプレッドシートなど数多くの表計算ソフトウェアが動き、データが作られています。 そんなデータをシステムで使う際に、わざわざパースして使うのでは面倒です。sqlitebiterでSQLite3に変換してしまいましょう。

sqlitebiterの使い方

sqlitebiterを実行します。今回はJSONファイルを変換してみます。

$ sqlitebiter file test.json -o test.sqlite
convert 'test.json' to 'results' table

そうするとresultsというテーブルができあがります(JSONのルートキー名になります)。複数のファイルを一括で変換すれば、それぞれテーブル名になります。

後はSQLite3としてSQLが実行できます。

select * from results;
TRUE|2016-02-03T17:00:00+09:00|100|35.55649645877322,139.5852214631623|複数行です。
複数行です。|{"test": "b"}|{"__type":"Pointer","className":"user","objectId":"k07GmlrRC6uP4cke"}|テスト0
TRUE|2016-02-03T17:00:00+09:00|200|35.55649645877322,139.5852214631623|複数行です。
複数行です。
複数行です。|{test: “b”}|{"__type":"Pointer","className":"user","objectId":"k07GmlrRC6uP4cke"}|テスト1

sqlitebiterを使って各種データをSQLite3に変換してしまえば、システムからの利用はとても簡単になるでしょう。データフォーマットが混在する中で、統合してしまうような使い方も良さそうです。

sqlitebiterはPython製のオープンソース・ソフトウェア(MIT License)です。

thombashi/sqlitebiter: sqlitebiter is a CLI tool to convert CSV/JSON/Excel/Google-Sheets to a SQLite database