メインコンテンツまでスキップ
2023
31

Ent-ORM

Ent は Meta がオープンソースで公開している Go の ORM フレームワークで、Schema First とコード生成という設計を採用しています。本記事ではその設計思想、メリット・デメリット、発展の歴史を整理し、GORM、XORM、SQLBoiler と比較します。

32

Kratos

Kratos は Bilibili がオープンソース化した Go のマイクロサービスフレームワークです。本記事ではその設計上の利点とコア機能を紹介し、Spring Cloud、Dubbo、Go-Micro などの主要フレームワークと比較します。

33

Neo4j グラフデータベース

Neo4j はグラフデータモデルを採用した高性能なグラフデータベースで、リレーション密度の高いシナリオの処理を得意とします。本記事ではその料金モデル、データ構造、主要機能を整理し、選定時の注意点を補足します。

34

データベースの分類

データモデル、処理方式、デプロイ方式、記憶媒体、アクセス方式といった軸からデータベースの分類を整理し、各種データベースの典型的なユースケースを紹介します。

35

二重送信の防止

サーバー側でワンタイム Token を生成して Redis に保存し、フォームとともにクライアントへ配布、送信時に検証が通れば即座に削除する。この仕組みによる二重送信・CSRF 対策の原理、実装手順、セキュリティ上の注意点を記録します。

36

Docker の仕組み

Docker 学習ノート:Daemon と Client のやり取りの流れ、Namespace/Cgroups/ユニオンファイルシステムによるコンテナ実装の仕組み、そしてイメージのレイヤー構造とデータボリュームの低レベルストレージの仕組み。

37

Flink CDC コンポーネント

Flink CDC の基本概念と組み込みコンポーネントを紹介します。変更ログキャプチャの原理から始めて、Source、Debezium Connector、Sink などの中核モジュール、および利用時のよくある注意点を整理します。

38

MySQL の時刻の四捨五入

MySQL の DATETIME はデフォルトで秒までの精度しかなく、Java から渡されたミリ秒が四捨五入されて、時刻が 1 秒増えてしまうことがあります。その原理と、DATETIME(fsp) および Java 側での切り捨てという 2 つの解決策を記録します。

39

データレイク Iceberg

データレイクとデータウェアハウスの違いを整理し、オープンソースのテーブルフォーマット Apache Iceberg の位置づけとコア機能(バージョン管理、メタデータ管理、パーティション管理、スナップショット)を紹介し、選定時の注意点も記録します。

40

データ構造:スタック

スタックは先入れ後出し(LIFO)のデータ構造で、スタックトップでのみ挿入と削除が可能であり、配列または連結リストで実装できます。本記事ではスタックの基本操作、計算量、そして関数呼び出し、式の評価、コンパイラ、OS における応用を整理します。