Tech blog
データアクセスパスのパターン化

デザインパターンというものがある。classをデザインするときのパターンを汎化してまとめたものである。多くのデザインがこのパターンのどれかに近いもので実現できる。 データアクセスパスも同じようにパターンを型として理解して […]

続きを読む
Tech blog
※作成中※ ETLの並列処理(概要)

ETLは並列化することで高速化できる。しかし、並列化には多くのパターンがあり適切に選択しなれば効果が得られない。並列化のパターンとそのメリット、デメリットを記載する。

続きを読む
Tech blog
ETLのウィークポイント(システム移行)

ETLはソフトウェアのバージョンアップ、ハードウェアのリソース不足、老朽化等でシステム移行が必要となる。ETLは非常に多くのシステムと接続するためこのシステム移行には労力とリスクを伴う。 特に、ETLが全社的に活用され接 […]

続きを読む
Tech blog
ETLのウィークポイント(修正とテスト)

ETLは生産性が高いと言われるが必ずしもそうではない。スクラッチ開発よりも弱い部分がある。率直に言うと、ETLは新規のアプリ作成は生産性が高い。一方、以下の特性から修正には弱い。 下記にウィークポイントの詳細と対策を記載 […]

続きを読む
Tech blog
ETLのサイジング:ストレージ

ETLサーバーの内部ストレージは以下のような用途で使われる。 多くの場合はシーケンシャルIOであるが、上記2はランダムIOである。下記にシーケンシャルIO、ランダムIO、それぞれのサイジングの考え方を記載しているので参照 […]

続きを読む
Tech blog
ETLのサイジング:メモリ

ETLのメモリはDBのように、アクセス頻度の高いデータをメモリに載せてディスクアクセスの頻度を削減するような使い方はしない。 ソート、ソートJOIN、Group by、ランキング処理等のレコード間の関連を見なければならな […]

続きを読む
Tech blog
ETLのサイジング:CPU

ETLのCPUをサイジングするときの基本的な考え方を記載する。いろいろなサイジング方法があるが私が使っているものである。常に実測してみて見積るのでは作業コストが膨らんでしまう。また、実測はテストデータの特性やキャッシュの […]

続きを読む