Tech blog
Bigqueryの統計情報のクエリプランへの影響の検証

目次##概要##環境&手順  テストデータ  性能確認手順##検証  検証1:Bigqueryは項目の保有する最大値、最小値を把握しているのか? &n […]

続きを読む
データエンジニアの道具箱
Bigquery 性能検証

目次##概要##環境&手順  テストデータ  性能確認手順##Bigqueryの性能検証 Bacic目的検証結果  考察##Bigqueryの性能検証 Adva […]

続きを読む
Tech blog
掲示板WEBサイトの投稿分析機能

目次##機能概要##最終アウトプットのサンプルイメージ##システム構成##前提  基本技術の説明について  WEBからのデータ抽出について##処理プロセス  処 […]

続きを読む
Tech blog
Bigqueryテストデータ生成 - 1億件を10秒で! -

目次##機能概要##以降で説明するコードの全体像##データ生成手順  テーブル作成  データ生成##データ生成結果##おまけ  テーブル作成 &nbs […]

続きを読む
Tech blog
データアクセスパスのパターン化

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

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

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

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

目次  システム移行方式のパターン  ETLに適したシステム移行方式  ETLのシステム移行のリスク対策ETLはソフトウェアのバージョンアップ、ハードウェアのリ […]

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

目次  スクラッチ開発の場合の修正とテスト  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をサイジングするときの基本的な考え方を記載する。いろいろなサイジング方法があるが私が使っているものである。常に実測してみて見積るのでは作業コストが膨らんでしまう。また、実測はテストデータの特性やキャッシュの […]

続きを読む
Tech blog
サイジング:HDD vs SSD

目次  HDD  SSD  シーケンシャルIOがランダムIOと比較して高速となる原理最近はほとんどのケースでSSDでストレージを構成する。HDDとSSDではシー […]

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

目次  ランダムIO   シーケンシャルIO  IO回数と処理時間クラウドでサーバーのディスクストレージを選択する時、どのように選択するべきか基準がわからない人 […]

続きを読む
Tech blog
データストア(データベース)の選び方

時代の流れとともにニーズが変化しデータソースの機能も進化してきた。しかし、いろいろなタイプのデータベースが存在するのはなぜだろうか。理由はデータの整合性、同時書き込み、大量データの処理、大量のトランザクションのどれかを強 […]

続きを読む
Tech blog
Tech Blogのコンセプト

Tech Blogでは中級者以上の技術者向けにデータエンジニアの領域についての情報を提供する。25年以上、SIerの技術者として現場で手を動かしてきた(About参照)。そのアドバンテージを活かし、付加価値の高いコンテン […]

続きを読む
Tech blog
データ連携基盤のサイジングの考え方

目次  超概要  概要  詳細データ連携基盤をサイジングするときのポイントをまとめる。 超概要 1.目標設定最も重たいかつ重要な処理について目標の処理時間を設定 […]

続きを読む
Tech blog
データ連携基盤の基本アーキテクチャー(クラスタ構成)

可用性と性能を考慮したデータ連携基盤のアーキテクチャを記載する。 要件が単純な場合は、”ソースシステム→ETL→ターゲット”がそれぞれ単体で存在するようなシンプルな構成となる。しかし、データ連携基盤の活用が進み停止が許さ […]

続きを読む
Tech blog
DB実行計画の”コスト”の考え方を理解する

目次  コストの目的  コストの使い方(概要)  コストの使い方(詳細)  実際のデータベースでのコストの例  参考(P […]

続きを読む
Tech blog
CPU、ストレージ、NWの処理時間を”体系的”に理解する

システムの処理時間はCPU、ストレージ、ネットワークの処理時間の合計である。それぞれの処理時間の規模感が理解できるとパフォーマンスチューニングでどこがボトルネックか判断できるようになる。 例えば、DBからのレスポンスタイ […]

続きを読む
Tech blog
データ基盤の構成要素

データ基盤を構成する要素を記載する。他のサイトにも存在する情報ではあるがデータ仮想化も含めたフルセットがシンプルに整理されたものが見つからなかったので簡単に記載しておくことにした。 データ加工機能 データ保管機能 集計/ […]

続きを読む
Tech blog
DBの実行計画とは

目次  実行計画の目的  実行計画とはどのように作成されるか?データベースの実行計画がどのようなもので、どのように利用されるか記載する。本質の理解を目的としているため特定のシンプル […]

続きを読む
Tech blog
システム設計で待ち行列理論を活用する

目次  概要  待ち行列理論の活用方法  参考)待ち行列理論  システム設計での待ち行列の本質待ち行列という理論があり、IPAの情報処理試験 […]

続きを読む
Tech blog
データ基盤(連携基盤+分析基盤)の進化

目次  データウェアハウス  データハブ  ビックデータ基盤  ストリーム処理  データ仮想化  デ […]

続きを読む