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
360
データサイエンス13_解析.pdf
jnlp
0
420
データサイエンス12_分類.pdf
jnlp
0
310
データサイエンス11_前処理.pdf
jnlp
0
430
Recurrent neural network based language model
jnlp
0
120
自然言語処理研究室 研究概要(2012年)
jnlp
0
110
自然言語処理研究室 研究概要(2013年)
jnlp
0
79
自然言語処理研究室 研究概要(2014年)
jnlp
0
92
自然言語処理研究室 研究概要(2015年)
jnlp
0
150
Other Decks in Education
See All in Education
Chapitre_1_-__L_atmosphère_et_la_vie_-_Partie_2.pdf
bernhardsvt
0
210
Medicare 101 for 2025
robinlee
PRO
0
330
AWS Well-Architected Labを活用してつよつよAWSエンジニアになろう!!! #jawsug_tokyo
masakiokuda
0
230
ビジネススキル研修紹介(株式会社27th)
27th
PRO
1
140
(2024) Couper un gâteau... sans connaître le nombre de convives
mansuy
2
160
Library Prefects 2024-2025
cbtlibrary
0
120
Tableau トレーニング【株式会社ニジボックス】
nbkouhou
0
23k
2024年度秋学期 統計学 第2回 統計資料の収集と読み方(授業前配付用) (2024. 10. 2)
akiraasano
PRO
0
100
オープンソース防災教育ARアプリの開発と地域防災での活用
nro2daisuke
0
210
ルクソールとツタンカーメン
masakamayama
1
1.1k
20241002_Copilotって何?+Power_AutomateのCopilot
ponponmikankan
1
190
ISMS審査準備ブック_サンプル【LRM 情報セキュリティお役立ち資料】
lrm
0
530
Featured
See All Featured
It's Worth the Effort
3n
183
28k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.6k
Agile that works and the tools we love
rasmusluckow
328
21k
Speed Design
sergeychernyshev
25
670
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
We Have a Design System, Now What?
morganepeng
51
7.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
Side Projects
sachag
452
42k
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度に保つと最も故障率を低下させる。 – 結局、いつどこで作られたかが一番影響している?