読書会(データ指向アプリケーションデザイン)第1回議事録
[ 戻る ]
==========================================================================================
Java読書会BOF 「データ指向アプリケーションデザイン」を読む会 第1回
==========================================================================================
.. csv-table:: 開催概要
"日時","2020年10月24日 10:00 - 17:00"
"場所","川崎市てくのかわさき"
"出席者(敬称略)","松永 根本 加藤 今井 遠藤 高橋(智) 高橋(徹) 岩室 吉本 平山"
0 Links
##############################################################################
- リンク集のgithub https://github.com/ept/ddia-references
- アラン・ケイの書評コメント https://www.drdobbs.com/architecture-and-design/interview-with-alan-kay/240003442
- 前提図書 The Art of Multiprocessor Programming https://www.amazon.co.jp/Art-Multiprocessor-Programming-%E4%B8%A6%E8%A1%8C%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%AE%E5%8E%9F%E7%90%86%E3%81%8B%E3%82%89%E5%AE%9F%E8%B7%B5%E3%8<>1%BE%E3%81%A7/dp/4048679880
- 日本語版の正誤表リンク https://www.oreilly.co.jp/books/9784873118703/
1 The technology landscape
==============================================================================
1. データシステムの基礎
------------------------------------------------------------------------------
FOSS : Free の意味は、GNU 的な意味の free か、
東証ダウンは hardware 障害を検知する firmware の update した時に、switch する timeout の値が変わらなかったから
テストはどこまでやるのか、ハードウェアの部分障害をどう検知するか
Latency : リクエストが処理を待っている時間
Response time : クライアントから見た処理時間
ユーザーの待ち時間の評価には中央値(p50)を使うと良い
外れ値の悪さの評価は 95(p95)パーセンタイルとかを使うとよい、ほかには 99%(p99), 99.9%(p999) など
アマゾンでは p999 を使っている
HOL(Head-of-line blocking) blocking とは、少数の低速なリクエストが全体を遅くすること
なので Client side の計測の Response time が重要
またレスポンスタイムの集計は意味がない、個別に評価すること
テイルレイテンシの増幅 : 複数の処理のうち、ひとつでも遅いとその
ソフトウェアシステムの設計原則
- 運用性
- 単純性
- 進化性
Big ball of mud (巨大な泥の塊) 巨大で複雑なソフトウェアの事
2. データモデルとクエリ言語
------------------------------------------------------------------------------
- Polyglot persistence : 複数モデルによる永続化 SQL と noSQL を併せた実装形態
- JSON フォーマットの利点
- Locality にすぐれる、ひとつのクエリで全部とれる
- 木構造が明示的
- IBM の IMS : JOIN の機能がなかった
- CODASYL : Conference on Data Systems Languages が標準化を推進する
- すべてのデータが同一フォーマットなら スキーマは有用
- Locality のメリット
- 一度に大量なデータを取り出したいとき
- Locality のデメリット
- ドキュメントサイズが大きくなる書き戻し MongoDB 2.4 の時の話か?
- ※ だいたい Projection の機能があるので、この話はおかしい
- 例えば DynamoDB は一か所にまとめて突っ込むべき
- P48 document.getElementsBy ClassName("selected") <-- このByとClassの間のスペースは誤植?
- P55 の例 2-4
- us: usa のタイポか SQL の AS みたいな何かか
- eu: の記述の意味は何か? 何かのラベルか?
- Cypha (neo4j のクエリ言語)
- トリプルストアと SPARQL
- SPARQL 言語の表記は、タプルとは異なって、 主語 + 動詞 + 目的語のトリプルストア
- _:lucy a :Person,
- _:lucy :name "Lucy",
- 凡例
- :が付くのは vertex(頂点)
- a 予約語
- \_: ノード名 で書き始める
- 次回 P59 2.3.4.1 セマンティックWeb から
[ 戻る ]