データ基盤技術コンサルティング
※下記のGithubでも公開しています。gitの方が見易い人はこちらを参照してください。 https://github.com/data2coordi/pub_bigquery_query_plan_...
Published on: 2023年12月19日
Category: Tech blog, データエンジニアの道具箱
Tags:
※下記のGithubでも公開しています。gitの方が見易い人はこちらを参照してください。 https://github.com/data2coordi/pub_bigquery_pf_ev ##概要 ...
Category: データエンジニアの道具箱
※下記のGithubでも公開しています。gitの方が見易い人はこちらを参照してください。 https://github.com/data2coordi/pub_gcp_vertex_for_web #...
※ 下記のgithubでも同様の内容を公開しています。gitの方が見易い方は下記を参照してください。 https://github.com/data2coordi/pub_bigquery_gener...
デザインパターンというものがある。classをデザインするときのパターンを汎化してまとめたものである。多くのデザインがこのパターンのどれかに近いもので実現できる。 データアクセスパスも同じようにパター...
Published on: 2023年8月23日
Category: Tech blog, パフォーマンス
ETLは並列化することで高速化できる。しかし、並列化には多くのパターンがあり適切に選択しなれば効果が得られない。並列化のパターンとそのメリット、デメリットを記載する。
Published on: 2023年8月16日
Category: Tech blog
ETLはソフトウェアのバージョンアップ、ハードウェアのリソース不足、老朽化等でシステム移行が必要となる。ETLは非常に多くのシステムと接続するためこのシステム移行には労力とリスクを伴う。 特に、ETL...
Published on: 2023年8月6日
Category: Tech blog, データ連携基盤
ETLは生産性が高いと言われるが必ずしもそうではない。スクラッチ開発よりも弱い部分がある。率直に言うと、ETLは新規のアプリ作成は生産性が高い。一方、以下の特性から修正には弱い。 小さい単位でUTがで...
Published on: 2023年8月2日
ETLサーバーの内部ストレージは以下のような用途で使われる。 ソート、ランク処理等での一時領域 マスターデータをDBから複製してトランザクションデータとJOIN用に使う。 他サーバーに連携するためのタ...
Category: Tech blog, サイジング
ETLのメモリはDBのように、アクセス頻度の高いデータをメモリに載せてディスクアクセスの頻度を削減するような使い方はしない。 ソート、ソートJOIN、Group by、ランキング処理等のレコード間の関...
ETLのCPUをサイジングするときの基本的な考え方を記載する。いろいろなサイジング方法があるが私が使っているものである。常に実測してみて見積るのでは作業コストが膨らんでしまう。また、実測はテストデータ...
Published on: 2023年8月1日
Tags: サイジング
Wordpressの前にリバースプロキシを配置すると以下のようなエラーが発生する場合がある。 ERR_TOO_MANY_REDIRECTS (リダイレクトの回数が多すぎる) 504 Gateway T...
Published on: 2023年7月31日
Category: Tech blog, wordpress
最近はほとんどのケースでSSDでストレージを構成する。HDDとSSDではシーケンシャルIOの特性に違いがあり、SSDをHDDの場合と同じように考えてサイジングすると想定外の性能問題になる可能性がある。...
Published on: 2023年7月30日
クラウドでサーバーのディスクストレージを選択する時、どのように選択するべきか基準がわからない人が多いのではないだろうか。データ基盤のボトルネックの多くはストレージのIOで発生する。ストレージのIOの仕...
Published on: 2023年7月28日
時代の流れとともにニーズが変化しデータソースの機能も進化してきた。しかし、いろいろなタイプのデータベースが存在するのはなぜだろうか。理由はデータの整合性、同時書き込み、大量データの処理、大量のトランザ...
Published on: 2023年7月26日
Category: Tech blog, データ分析基盤
Tech Blogでは中級者以上の技術者向けにデータエンジニアの領域についての情報を提供する。25年以上、SIerの技術者として現場で手を動かしてきた(About参照)。そのアドバンテージを活かし、付...
Category: Tech blog, 概要
データ連携基盤をサイジングするときのポイントをまとめる。 超概要 1.目標設定最も重たいかつ重要な処理について目標の処理時間を設定する。 2.ボトルネックの特定 重要な処理がIOボトルネックかCPUボ...
可用性と性能を考慮したデータ連携基盤のアーキテクチャを記載する。 要件が単純な場合は、”ソースシステム→ETL→ターゲット”がそれぞれ単体で存在するようなシンプルな構成となる。しかし、データ連携基盤の...
Published on: 2023年7月23日
データベースの実行計画のマニュアルや解説で下記の図のようなコストという概念が出て来る。私はデータベースの実行計画を勉強し始めたころ、このコストの概念が理解できずにもやもやして理解が進まなった。直観的に...
システムの処理時間はCPU、ストレージ、ネットワークの処理時間の合計である。それぞれの処理時間の規模感が理解できるとパフォーマンスチューニングでどこがボトルネックか判断できるようになる。 例えば、DB...
Published on: 2023年7月22日
データ基盤を構成する要素を記載する。他のサイトにも存在する情報ではあるがデータ仮想化も含めたフルセットがシンプルに整理されたものが見つからなかったので簡単に記載しておくことにした。 データ加工機能 E...
Category: Tech blog, データ基盤
データベースの実行計画がどのようなもので、どのように利用されるか記載する。本質の理解を目的としているため特定のシンプルな構成を例に説明する。 実行計画の目的 実行計画は、ストレージのデータをユーザーに...
Published on: 2023年7月21日
待ち行列という理論があり、IPAの情報処理試験にも登場する。実務での活用が難しい理論だと思う。本質を理解して活用できるように体系化する。 概要 システムでの待ち行列は、以下の4つを考える。 CPUリソ...
Published on: 2023年7月20日
データ基盤にはいろいろな種類がある。その結果、データ基盤のイメージは人によって様々である。時代の流れとともにデータ量が増え、ニーズも変わりデータ基盤の構成も進化した。 ニーズの変化と対応するデータ基盤...
Published on: 2023年7月19日