Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
データベースと応用システム:Google
Search
自然言語処理研究室
July 18, 2014
Education
1
2.7k
データベースと応用システム:Google
自然言語処理研究室
July 18, 2014
Tweet
Share
More Decks by 自然言語処理研究室
See All by 自然言語処理研究室
データサイエンス14_システム.pdf
jnlp
0
330
データサイエンス13_解析.pdf
jnlp
0
380
データサイエンス12_分類.pdf
jnlp
0
290
データサイエンス11_前処理.pdf
jnlp
0
400
Recurrent neural network based language model
jnlp
0
100
自然言語処理研究室 研究概要(2012年)
jnlp
0
100
自然言語処理研究室 研究概要(2013年)
jnlp
0
69
自然言語処理研究室 研究概要(2014年)
jnlp
0
65
自然言語処理研究室 研究概要(2015年)
jnlp
0
120
Other Decks in Education
See All in Education
Monaca Educationを活用した課題解決型の探究学習の実践
asial_edu
0
200
20240319AJG
tosseto
0
300
千葉県印西市立・原山小学校における新たな学び「情報探究の時間」実践報告』
codeforeveryone
1
710
Virtual and Augmented Reality - Lecture 8 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.2k
2024年度春学期 統計学 講義の進め方と成績評価について (2024. 4. 11)
akiraasano
PRO
0
110
LightSail2324
cbtlibrary
0
130
「小・中・高等学校における情報教育の体系的な学習を目指したカリキュラムモデル基本方針」
codeforeveryone
0
1.4k
2023年度桜井政成ゼミ資料_論文の探し方・読み方
masanari
6
2.2k
アプリ開発を目指した授業づくりについて
asial_corp
0
420
Analysis and Validation - Lecture 4 - Information Visualisation (4019538FNR)
signer
PRO
0
1.4k
経験に複利を効かせろ!ふりかえり研修2024
pokotyamu
22
7.7k
Pen-based Interaction - Lecture 4 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.2k
Featured
See All Featured
Designing for Performance
lara
601
67k
Become a Pro
speakerdeck
PRO
11
4.5k
Music & Morning Musume
bryan
41
5.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
The Mythical Team-Month
searls
216
42k
Clear Off the Table
cherdarchuk
84
310k
Debugging Ruby Performance
tmm1
70
11k
Building Your Own Lightsaber
phodgson
99
5.7k
Thoughts on Productivity
jonyablonski
58
3.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Being A Developer After 40
akosma
57
580k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Transcript
(c)長岡技術科学大学 電気系 1 データベースと応用システム Google 山本和英 長岡技術科学大学 電気系 Google、Google ロゴ、Google
検索 ロゴ、Google 音声検索™、Google 音声検索 ロゴは、Google Inc.の商標または登録商標です。
(c)長岡技術科学大学 電気系 2 Googleの歴史 • 1998年9月7日 – 創業。検索件数1万件/日 – 8台のパソコンと40個以上のHDD
• 1999年9月 – 検索件数300万件/日 • 2000年 – 検索件数1800万件/日 • 2004年 – NASDAQに株式公開
(c)長岡技術科学大学 電気系 3 Googleの基本的な考え方 • ソフトウェアで信頼性を高める – UPSやハードウェアRAIDは使わない • 機器の高性能化よりも負荷分散
– コストパフォーマンス • 基本部分は独自技術で – GFS (Google File System) – Work Queue
(c)長岡技術科学大学 電気系 4 検索エンジン
(c)長岡技術科学大学 電気系 5 検索エンジンの仕組み • 検索バックエンド – クローリング(Webデータ収集) – インデックスの作成
– 時間をかけて処理して構わない • 検索サーバー – インデックスを参照して検索結果を返す – 可能な限り高速に処理する必要がある – 処理の分散化 – 検索キーはすべて数値化してインデックスを作成
(c)長岡技術科学大学 電気系 6 クローリング:注意点 • 特定サイトにアクセスが集中しすぎてはいけない – アクセスの分散 • アクセスできないこともある
– アクセスの再試行 • 1ページ1秒でも1日86,400ページしかアクセスでき ない – 並列処理、URLサーバーによる制御 • ページを自動生成するサイトがある – ページ収集がいつまでも終わらない
(c)長岡技術科学大学 電気系 7 インデックスの作成 • Webページの構造解析 – 検索に必要なタイトル、テキスト、URL等を抽出 • 単語情報の抽出
– ページID, 単語ID, 位置, サイズ, スタイル, … • 転置インデックスの作成 – 単語IDからページIDへ • リンク情報のインデックス作成 – ページAからページBへ • ランキング情報のインデックス – PageRankの計算
(c)長岡技術科学大学 電気系 8 実際の検索処理の流れ • まとめ役(Google Web Server, GWS)が各インデッ クスサーバーに検索依頼
– インデックスサーバーは別個のページ集合を担当してい る。 • 各インデックスサーバーが検索上位を返す – 検索要求があった時に全インデックスサーバーにランキン グ上位ページIDを提出する。 • GWSが結果をまとめて上位ページを決定 • GWSが関係するドキュメントサーバーに要約作成を依 頼 • ドキュメントサーバーは要約作成してGWSに返す
(c)長岡技術科学大学 電気系 9 検索サーバー その他の処理 • 「もしかして」検索 • 広告の選別、作成 • キャッシングによる処理の高速化
(c)長岡技術科学大学 電気系 10 Google File System (GFS)
(c)長岡技術科学大学 電気系 11 GFSの概要と特徴 • 巨大なストレージを作り上げる技術 • 全ファイルは常に3ヶ所に保存されている • 大きなファイル(数百MB)の書き込みに適している
• 何度も書き込むことに向いていない • ファイルをロックする機能がない
(c)長岡技術科学大学 電気系 12 GFSの役割分担 • マスタ – GFS全体を管理。どのチャンクサーバーに何が保存さ れているかをすべて管理・制御する •
チャンクサーバー – ファイル置き場。ファイルの断片(64MB)が大量に保存 されている。 – 1ファイルは3チャンクサーバーに保存される。 • クライアント – ファイルの読み書きをマスタに依頼する。
(c)長岡技術科学大学 電気系 13 GFSの障害対策 • チャンクの障害 – チェックサムの照合によって同一性を判断する – 「暇」な時にチェックサムを再確認する
• チャンクサーバの障害 – マスタとの交信によって障害や新規設置が分かる • マスタの障害 – GFS外部で常に監視し、異常の時は即時交代 – 更新ログを常に別の計算機にコピー – チャンクの情報はチャンクサーバが教えてくれる
(c)長岡技術科学大学 電気系 14 GFSの復旧時間:実験結果 • チャンクサーバ数:200、各チャンクサーバーは 15,000程度のチャンク(=600GB) • チャンクサーバ1台が故障 –
新しいコピーが作られるまで23分 • チャンクサーバ2台が故障 – 266チャンクがコピーなし状態になる – このようなチャンクは優先的にコピーされる – 2コピー以上の状態に復旧するまでの時間:2分 • 結論:データの損失可能性は限りなく低い
(c)長岡技術科学大学 電気系 15 Bigtable
(c)長岡技術科学大学 電気系 16 Bigtable • RDBでは扱えないほどの大量のデータにアクセス するための分散システム • 列は行キーとコラムキーの2種類ある。コラムキーの 数は行によって違っていても構わない。
• 時間概念(タイムスタンプ)があり、行キーとコラム キーが同じでも時刻が異なる複数バージョンのデー タがある。 • 例:検索エンジンインデックス – 行キー:ページURL – コラムキー:リンク元ページ情報 – タイムスタンプ:ページ収集時間
(c)長岡技術科学大学 電気系 17 Bigtable:続き • トランザクション処理がある。 • テーブルはタブレット(tablet)という単位に分割さ れ、複数のサーバで分散管理される。 •
行キーはソートされ、タブレットには連続する行キー が含まれる。 • タブレットはメタデータという形で管理される。メタ データはルートタブレットが管理し、ルートタブレッ トの場所はChubbyが保存する。 – 以上はB+木形式で管理されている。
(c)長岡技術科学大学 電気系 18 高速アクセスの工夫 • ファイルの圧縮 • メタデータなどのオンメモリ化 • 読み込みキャッシュ
– スキャンキャッシュ:最近アクセスされたデータ – ブロックキャッシュ:「続き」のデータ • 書き込みの工夫 – コミットログの一括処理 – コミットログの書き込み先を2つ用意
(c)長岡技術科学大学 電気系 19 Chubby
(c)長岡技術科学大学 電気系 20 Chubby • 小さな分散ファイルシステム • 以下の機能を持つ: – ファイルシステム
– ロックサービス(排他制御) – イベント通知 • 実データというよりも、データ・システム管理のため の設定や情報を書き込む。Windowsのレジストリの ようなものに近い。 • DNSの代替としても使われる。各マシンがChubby に自分でアドレスを書き込む。
(c)長岡技術科学大学 電気系 21 Chubby:システム構成 • 1セット(Cell)は5台の計算機(レプリカ)からなる。 うち1台をマスタと呼ぶ。 • マスタとレプリカは全く同じ情報が書かれている。 マスタの情報を変更すると直ちに4台のレプリカにコ
ピーされる。 • クライアント(他の計算機)との情報の読み書きは すべてマスタに対して行う。マスタが故障すると直ち にレプリカの1台がマスタになる。 • レプリカが半数以上故障すると、セルは活動を停 止する。
(c)長岡技術科学大学 電気系 22 Chubby:ファイルアクセス • 1つのファイルサイズは最大256KB • ファイルやディレクトリは(読み込み、書き込み、変 更)が可能なユーザを定義する。 •
ファイルは共有ロック、排他ロックが可能。これを 使って外部資源(例えばGFS)のロックに使える。 • 障害時対応のため、クライアントと定期的(10秒~ 60秒)に通信を行っており、通信がない場合は自 動的にロック解除される。
(c)長岡技術科学大学 電気系 23 イベント通知 • ファイルの作成や内容変更時にクライアントに通知 される。 • 利用例1:サーバ監視 –
サーバが一時ファイルに自分のアドレスを書いてマスタ が監視。プロセス停止すると一時ファイルが自動削除 されるので、起動中のサーバリストが得られる。 • 利用例2:マスタ決定 – 各サーバは競争してマスタになろうとする。排他ロックで きたプロセスだけが自分のアドレスを書き込むことがで き、書き込まれた場合は監視しているサーバに通知され る。
(c)長岡技術科学大学 電気系 24 データセンター https://www.youtube.com/watch?v=7h3LtXxR55Y
(c)長岡技術科学大学 電気系 25 http://www.google.com/about/datacenters/inside/locations/index.html
(c)長岡技術科学大学 電気系 26
(c)長岡技術科学大学 電気系 27 計算機 • Google保有の計算機は2800万台(2019年6月)? – https://news.netcraft.com/archives/2019/06/17/june-2019-web-server-survey.html • 10万円
x 2800万台 = 2.8兆円 • 5年で交換したとすると、毎年5600億円 – (ネパール、パラグアイ、リビアの国家予算に匹敵) • 必ずしも高機能、高額な製品を使うわけではな い。価格性能比の最も高い製品を選ぶ。
(c)長岡技術科学大学 電気系 28 電気代 • 1kWhで10円、1台100Wとして、2800万台を終日稼 働させると、年に2500億円 – (ブルネイ、ラオス、モザンビークの国家予算に匹敵) –
(長岡市の今年度予算:2,185億円) • CPU性能の向上に伴って使用電力も向上傾向 • 消費電力を削減する様々な工夫 – CPUのクロック周波数を落とす – PC電源を開発して電源効率を上げる – パワーキャッピングによるデータセンター電力の平準化
(c)長岡技術科学大学 電気系 29 ハードディスクの故障 • Googleが2007年に10万台以上のHDDドライブの 故障傾向について調査 • 結論 –
使い始めの頃はやや壊れやすい – 長く使うと壊れやすくなるわけではない – よく使うと壊れやすくなるとも限らない – 温度が高いほど壊れやすいということもない。30~4 0度に保つと最も故障率を低下させる。 – 結局、いつどこで作られたかが一番影響している?