Takuya71 のぶろぐ

外資系ソフトウェア会社で働いてます、認定スクラムマスター

2021-03-26 Jetbrains All Products pack を更新しました。

Jetbrains All Products Pack を更新しました。

もともと Goland を使っていたのですが All Products Pack の半年ライセンスをもらえて使っていたのですが そのライセンスの期限がくるので思い切って All Products Pack で更新しました。

Intellij IDEA も使いたいし Goland も使いたいし ということもあり どうせなら All Products Pack がいいかなと思った次第です。 Intellij IDEA に沢山 プラグイン入れるのも手と言えば手なんですが ある言語では使わないものまで含まれる訳で 各言語ごとに分けていきたいと思います。

なお 今回は サムライズム さんから 見積もりをとって更新したので少し安く更新することができました。

secure.samuraism.com

の紹介リンクから購入していただくと All Products Pack は 1000 円引き、IntelliJ IDEA も 500 円引きで購入できます。

気になる Hackernews

https://www.daemonology.net/hn-daily/ からの気になったニュース

SQLite is not a toy database

今日の気になるニュースは SQLite についてのニュースです。

antonz.org

SQLite is not a toy database SQLite はおもちゃじゃないよ!

  • SQLite は世界で最も一般的な DBMS であり、すべての一般的な OS に同梱されています。
  • SQLite はサーバーレスです。
  • 開発者にとっては、SQLite はアプリに直接組み込まれています。
  • それ以外の人には、便利なデータベースコンソール(REPL)があり、1 つのファイルとして提供されます(Windows では sqlite3.exe、Linux / macOS では sqlite3)。
Import, and export
  • CSV データをコマンド 1 つでインポートでき、テーブルも自動的に作成されます。
  • データは、SQL、CSV、JSON、さらには Markdown や HTML としてもエクスポートできます。コマンドを数回実行するだけです。
ネイティブ JSON

JSON を分析・変換するのに、SQLite ほど便利なものはありません。まるで通常のテーブルのように、ファイルから直接データを選択することができます。あるいは、データをテーブルにインポートして、そこから選択することもできます。

CTE とセット操作

もちろん、SQLite は Common Table Expressions(WITH 句)や JOIN をサポートしていますが、ここでは例を挙げることはしません。データが階層化されている場合(テーブルが parent_id のようなカラムで自分自身を参照している場合)、WITH RECURSIVE が便利です。どんな階層でも、どんなに深くても、1 つのクエリで「展開」することができます。

数学の統計

記述的な統計も簡単です。平均値、中央値、パーセンタイル、標準偏差など、何でもござれです。拡張子をロードする必要がありますが、1 つのコマンド(と 1 つのファイル)で済みます。

パフォーマンス

SQLite は何億ものレコードでも問題なく動作します。通常の INSERT では、私のラップトップでは 1 秒間に約 240K レコードが表示されます。また、CSV ファイルを仮想テーブルとして接続すると(そのための拡張機能があります)、挿入は 2 倍速くなります。

ドキュメント、グラフ、そして検索

SQLite は、「大きな」DBMS と同様に、部分インデックスや式に対するインデックスをサポートしています。生成されたカラムにインデックスを作成し、SQLite をドキュメントデータベースにすることもできます。生の JSON を保存し、json_extract()されたカラムにインデックスを構築するだけです。

他にもいろいろ

(PostgreSQL のように)派手なウィンドウ関数があります。UPSERT, UPDATE FROM, generate_series(). R-Tree インデックス。正規表現、ファジーサーチ、ジオ。機能の面では、SQLite はどんな「大きな」DBMS とも競争できるでしょう。

というような内容です。 この オリジナルのドキュメントにはサンプル SQL も記載されているので是非興味あるかたはごらん下さい。

日々の記録

天候

はれ

昼食

焼きそば

読書

なし

健康
睡眠時間

6 時間 43 分

歩数

4206 歩

仕事

忙しい