Teradata Databaseの勉強 其の1
特徴
- 徹底した多重化
- 冗長性=信頼性
- 並列処理に特化
- スケールアウトで線形に性能増加
- 分散配置に関する管理が不要
- データは勝手にハッシュ分散される
- 領域管理は大雑把でかなり楽そう
- 空いてる領域を勝手に使うかんじ?
チューニングが自動、データ・バランスの制御不要までくると、単純に信じていいのか?
多重化
- SMP(Symmetric Multi Processor)
- メモリー/ディスクが共通で、プロセッサは複数。→システムバスの制限
- Cluster
- ディスクが共通←Nodeが増えたときのボトルネック。
- NCR MPP(Massively Parallel Processor)
- (1プロセッサ+1メモリ+1ディスク) * N。ネットワークも多重化。メッセージ・パッシング。
- Shared Everything
- 全ての検索プロセスが論理的にデータを共有する構造
- Shared Nothing
- それぞれの検索プロセスに対してデータが論理的に分散されている構造
- Shared Nothingで並列化が可能。
- レプリケーションや同期とったりしない
- 検索プロセスの範囲外のデータとジョインで、いろいろ細工が必要。
仮想化
仮想プロセッサと仮想ネットワークと仮想ディスクで、ノードが1台でもN台でも同じように動作する。
仮想プロセッサ(vproc)
- PE(Virtual Parsing Engine Processor)
- 構文解析, セッション制御, タスクのディスパッチ(AMPへの割り当て)。Oracleのディスパッチャみたいなもの?
- AMP(Virtual Access Module Processor)
- データベース機能, vdisk上のデータを検索/更新。Oracleのサーバー・プロセスみたいなもの?
- 128vproc / ノード
- 16384vproc / システム
BYNET
- vproc間の通信は、固有アドレスメッセージ方式(?)
- 最低2本
- ボードレスBYNET
- 単一ノードの場合。仮想ネットワーク
- BYNET
- 複数ノードの場合