SlideShare a Scribd company logo
1 of 22
Bigtable 
BigTable 1 of 18 
oases
The Internet… 
BigTable 1 of 20
Google’s Serving: 
BigTable 
2 of 20
Google Growth 
BigTable 
Nov. '98: 10,000 queries on 25 computers 
Apr. '99: 500,000 queries on 300 computers 
Sep. '99: 3,000,000 queries on 2100 computers 
3 of 20
Counting the numbers 
Client/Server 
Personal 
Computer 
One:One One:Many 
BigTable 4 of 20 
Cloud 
Computing 
Many:Many 
transition
Current Design 
BigTable 
• In-house rack design 
• PC-class motherboards 
• Low-end Storage and 
networking hardware 
• Linux 
• + in-house software 
5 of 20
如何讓服務不斷線,而且硬體一定會壞掉的前提下… 
建構一個即使硬體會壞,軟體可以容錯, 
而且可以持續服務的機制。 
倒過來說,當建構一套這樣的軟體時, 
考慮平均五年壞一次的硬體和 
兩年換一次的硬體時,硬體就顯得較不重要了 
願意花些時間,把容錯軟體建置起來, 
硬體就不重要了 
BigTable 
6 of 20
Google.stanford.edu(about 1997) 
BigTable 7 of 20
Google.com (about 1999) 
BigTable 8 of 20
Google.com (about 2000) 
BigTable 9 of 20
Google.com (new data center 2001) 
BigTable 10 of 20
Google.com (new data center 2001) 
BigTable 11 of 20
How to develop a web application that scales: 
Data 
Processing 
BigTable 
Storage Database Serving 
Map 
Reduce 
Google 
File 
System 
BigTable 
Google 
AppEngine 
Google’s solution 
12 of 20
Google File System: 
BigTable 
• Files broken into chunks 
(typically 64 MB) 
• Chunks triplicated across 
three machines for 
safety (tunable) 
• Master manages 
metadata 
• Data transfers happen 
directly between clients 
and chunkservers 
13 of 20 
•EX:一個檔案64MB被切10 
塊,每一塊再複製三份,這30 
就會在不同的server上
Concept: 
BigTable 
14 of 20
Big Table: 
Column 
Data Model 
-(row, column, timestamp) 
→ cell contents 
BigTable 
“<html>..” 
“<html>..” 
“<html>...” 
“www.cnn.com” 
t3 
t5 
t6 
“Content:” 
Row Key 
s 
Timestamp 
s 
15 of 20
System Structure: 
BigTable Cell 
BigTable 
Bigtable 
master 
Bigtable tablet 
server 
metadata 
Read/write 
、Bigtable tablet 
… 
server 
Bigtable 
client 
Library 
Bigtable tablet 
server 
Cluster scheduling 
system 
Open() 
GFS Lock service 
handles failover, 
monitoring 
holds tablet data, 
logs 
holds metadata, 
handles master 
election 
16 of 20
Big Table Summary: 
• Data model applicable to broad range of clients 
– Actively deployed in many of Google’s services 
• System provides high performance storage 
system on a large scale 
– Self-managing 
– Thousands of servers 
– Millions of ops/second 
– Multiple GB/s reading/writing 
BigTable 
、 
• Currently ~500 BigTable cells 
• Largest bigtable cell manages ~3PB of data 
spread over several thousand machines (larger 
cells planned) 
17 of 20
MapReduce -A Model and System 
為一種用在大型叢集環境理處理大量資料的一種軟體架構 
•EX: 
[Reduce] 
BigTable 
、 
中選會 
[master] 
18 of 20 
台北三重1號投票所 
[server1] 
台中大甲3號投票所 
[serve255] 
分配開票任務 
高雄三多4號投票所 
… [serverX] 
進行開票進行開票進行開票 
[Map]
MapReduce -A Model and System 
Two phases of data processing 
• Map:(in_key, in_value) → {(keyj, valuej )| j=1,… K} 
將Key對應到list(value)中,對Map輸入一些資料,Map會進 
行一些前置處理,然後把Key與每一筆資料配對,成為 
list(key’, value’)。 
BigTable 
、 
• Reduce:(key,[value1, …valueL ])→ (key, f_value) 
Reduce為一種彙總函數,將許多value’統合為一個value”。 
Key’的存在,可能是用於樣式比對或額外附加資訊的需要。 
19 of 20
MapReduce Summary : 
• 分散處理-將資料分割並儲存在不同的電腦上,透過 
• 容錯處理-High Replication 的機制,可以防範硬體 
BigTable 
MapRedce的處理程序完成資料處理,最 
後把結果送到requster。 
、 
掛掉的情況下,可以去從另外有同筆資料區 
段的硬碟去讀取。 
20 of 20
THANK YOU 
BigTable

More Related Content

Viewers also liked

presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...
presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...
presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...The Valley
 
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brands
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brandsIAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brands
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brandsThe Valley
 
mobtzu mobile convention 2011
mobtzu mobile convention 2011 mobtzu mobile convention 2011
mobtzu mobile convention 2011 The Valley
 
WEB Data Mining
WEB Data MiningWEB Data Mining
WEB Data MiningOases Ong
 
the valley Breakfast Club, GUI of the future door Ad
the valley Breakfast Club, GUI of the future door Adthe valley Breakfast Club, GUI of the future door Ad
the valley Breakfast Club, GUI of the future door AdThe Valley
 
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie The Valley
 
Presentación en impress
Presentación en impressPresentación en impress
Presentación en impressvelgueral
 
An Executive's Guide to Reimagining the Enterprise in the Digital Age
An Executive's Guide to Reimagining the Enterprise in the Digital AgeAn Executive's Guide to Reimagining the Enterprise in the Digital Age
An Executive's Guide to Reimagining the Enterprise in the Digital AgeArmanino LLP
 
The valley trendrapport 2012
The valley trendrapport 2012The valley trendrapport 2012
The valley trendrapport 2012The Valley
 
Microsoft Dynamics GP Year End Close - Armanino Webinar Presentation
Microsoft Dynamics GP Year End Close - Armanino Webinar PresentationMicrosoft Dynamics GP Year End Close - Armanino Webinar Presentation
Microsoft Dynamics GP Year End Close - Armanino Webinar PresentationArmanino LLP
 
Emerce Connect 2011
Emerce Connect 2011Emerce Connect 2011
Emerce Connect 2011The Valley
 
SaaS Revenue Recognition Principles: How a SaaS Company Should Treat Setu...
SaaS Revenue  Recognition  Principles: How a SaaS  Company Should  Treat Setu...SaaS Revenue  Recognition  Principles: How a SaaS  Company Should  Treat Setu...
SaaS Revenue Recognition Principles: How a SaaS Company Should Treat Setu...Armanino LLP
 
Prevent Fraud in Your Organization - Webinar Slides
Prevent Fraud in Your Organization - Webinar SlidesPrevent Fraud in Your Organization - Webinar Slides
Prevent Fraud in Your Organization - Webinar SlidesArmanino LLP
 
Dynamics AX: The Business Case for Upgrades
Dynamics AX: The Business Case for UpgradesDynamics AX: The Business Case for Upgrades
Dynamics AX: The Business Case for UpgradesArmanino LLP
 
SaaS Companies: What Costs Should Be Capitalized?
SaaS Companies: What Costs Should Be Capitalized?SaaS Companies: What Costs Should Be Capitalized?
SaaS Companies: What Costs Should Be Capitalized?Armanino LLP
 
Dynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonDynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonGrisha Weintraub
 

Viewers also liked (19)

The Cloud 2.0
The Cloud 2.0The Cloud 2.0
The Cloud 2.0
 
Cloud 2 0
Cloud 2 0Cloud 2 0
Cloud 2 0
 
presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...
presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...
presentatie the valley breakfast club over de nieuwe cookiewet en e-mailveili...
 
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brands
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brandsIAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brands
IAM11 - WHAT’S NEXT IN 
MOBILE EXPERIENCES by mobtzu - mobile apps for brands
 
mobtzu mobile convention 2011
mobtzu mobile convention 2011 mobtzu mobile convention 2011
mobtzu mobile convention 2011
 
WEB Data Mining
WEB Data MiningWEB Data Mining
WEB Data Mining
 
the valley Breakfast Club, GUI of the future door Ad
the valley Breakfast Club, GUI of the future door Adthe valley Breakfast Club, GUI of the future door Ad
the valley Breakfast Club, GUI of the future door Ad
 
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie
the valley Breakfast Club, Leren zonder grenzen en zonder centen, Vinnie
 
Presentación en impress
Presentación en impressPresentación en impress
Presentación en impress
 
An Executive's Guide to Reimagining the Enterprise in the Digital Age
An Executive's Guide to Reimagining the Enterprise in the Digital AgeAn Executive's Guide to Reimagining the Enterprise in the Digital Age
An Executive's Guide to Reimagining the Enterprise in the Digital Age
 
The valley trendrapport 2012
The valley trendrapport 2012The valley trendrapport 2012
The valley trendrapport 2012
 
Microsoft Dynamics GP Year End Close - Armanino Webinar Presentation
Microsoft Dynamics GP Year End Close - Armanino Webinar PresentationMicrosoft Dynamics GP Year End Close - Armanino Webinar Presentation
Microsoft Dynamics GP Year End Close - Armanino Webinar Presentation
 
Emerce Connect 2011
Emerce Connect 2011Emerce Connect 2011
Emerce Connect 2011
 
SaaS Revenue Recognition Principles: How a SaaS Company Should Treat Setu...
SaaS Revenue  Recognition  Principles: How a SaaS  Company Should  Treat Setu...SaaS Revenue  Recognition  Principles: How a SaaS  Company Should  Treat Setu...
SaaS Revenue Recognition Principles: How a SaaS Company Should Treat Setu...
 
Prevent Fraud in Your Organization - Webinar Slides
Prevent Fraud in Your Organization - Webinar SlidesPrevent Fraud in Your Organization - Webinar Slides
Prevent Fraud in Your Organization - Webinar Slides
 
Dynamics AX: The Business Case for Upgrades
Dynamics AX: The Business Case for UpgradesDynamics AX: The Business Case for Upgrades
Dynamics AX: The Business Case for Upgrades
 
SaaS Companies: What Costs Should Be Capitalized?
SaaS Companies: What Costs Should Be Capitalized?SaaS Companies: What Costs Should Be Capitalized?
SaaS Companies: What Costs Should Be Capitalized?
 
Dynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and ComparisonDynamo and BigTable - Review and Comparison
Dynamo and BigTable - Review and Comparison
 
The Google Bigtable
The Google BigtableThe Google Bigtable
The Google Bigtable
 

Similar to Bigtable

Zh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computingZh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computingTrendProgContest13
 
Streaming architecture zx_dec2015
Streaming architecture zx_dec2015Streaming architecture zx_dec2015
Streaming architecture zx_dec2015Zhenzhong Xu
 
Hadoop大数据实践经验
Hadoop大数据实践经验Hadoop大数据实践经验
Hadoop大数据实践经验Hanborq Inc.
 
ClickHouse北京Meetup ClickHouse Best Practice @Sina
ClickHouse北京Meetup ClickHouse Best Practice @SinaClickHouse北京Meetup ClickHouse Best Practice @Sina
ClickHouse北京Meetup ClickHouse Best Practice @SinaJack Gao
 
豆瓣网技术架构变迁
豆瓣网技术架构变迁豆瓣网技术架构变迁
豆瓣网技术架构变迁reinhardx
 
Google key technologies
Google key technologiesGoogle key technologies
Google key technologiesStefanie Zhao
 
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈Yi-Fu Ciou
 
基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展Sky Jian
 
杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务hdhappy001
 
Ask Weee Cloud Computing V0.2
Ask Weee Cloud Computing V0.2Ask Weee Cloud Computing V0.2
Ask Weee Cloud Computing V0.2kevin_ke
 
Mesos-based Data Infrastructure @ Douban
Mesos-based Data Infrastructure @ DoubanMesos-based Data Infrastructure @ Douban
Mesos-based Data Infrastructure @ DoubanZhong Bo Tian
 
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Feng Yu
 
Build 1 trillion warehouse based on carbon data
Build 1 trillion warehouse based on carbon dataBuild 1 trillion warehouse based on carbon data
Build 1 trillion warehouse based on carbon databoxu42
 
云计算 系统实例与研究现状
云计算 系统实例与研究现状云计算 系统实例与研究现状
云计算 系统实例与研究现状Danny AJ Lin
 
MySQL 網路參考架構
MySQL 網路參考架構MySQL 網路參考架構
MySQL 網路參考架構郁萍 王
 
The Trend Of Cloud Computing And How Should Public Sectors Adjust
The Trend Of Cloud Computing And How Should Public Sectors AdjustThe Trend Of Cloud Computing And How Should Public Sectors Adjust
The Trend Of Cloud Computing And How Should Public Sectors AdjustJazz Yao-Tsung Wang
 
Linux运维趋势 第15期 虚拟化管理软件选型
Linux运维趋势 第15期 虚拟化管理软件选型Linux运维趋势 第15期 虚拟化管理软件选型
Linux运维趋势 第15期 虚拟化管理软件选型51CTO
 
《云计算入门指南》
《云计算入门指南》《云计算入门指南》
《云计算入门指南》wiit
 
Streaming 数据流+赵波+Making Flink K8S works as your wish.pdf
Streaming  数据流+赵波+Making Flink K8S works as your wish.pdfStreaming  数据流+赵波+Making Flink K8S works as your wish.pdf
Streaming 数据流+赵波+Making Flink K8S works as your wish.pdfssuser1889ed
 
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝drewz lin
 

Similar to Bigtable (20)

Zh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computingZh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computing
 
Streaming architecture zx_dec2015
Streaming architecture zx_dec2015Streaming architecture zx_dec2015
Streaming architecture zx_dec2015
 
Hadoop大数据实践经验
Hadoop大数据实践经验Hadoop大数据实践经验
Hadoop大数据实践经验
 
ClickHouse北京Meetup ClickHouse Best Practice @Sina
ClickHouse北京Meetup ClickHouse Best Practice @SinaClickHouse北京Meetup ClickHouse Best Practice @Sina
ClickHouse北京Meetup ClickHouse Best Practice @Sina
 
豆瓣网技术架构变迁
豆瓣网技术架构变迁豆瓣网技术架构变迁
豆瓣网技术架构变迁
 
Google key technologies
Google key technologiesGoogle key technologies
Google key technologies
 
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈
How to use kubernetes build microservices 如何運用 Kubernetes 打造微服務生態圈
 
基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展基于MySQL开放复制协议的同步扩展
基于MySQL开放复制协议的同步扩展
 
杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务
 
Ask Weee Cloud Computing V0.2
Ask Weee Cloud Computing V0.2Ask Weee Cloud Computing V0.2
Ask Weee Cloud Computing V0.2
 
Mesos-based Data Infrastructure @ Douban
Mesos-based Data Infrastructure @ DoubanMesos-based Data Infrastructure @ Douban
Mesos-based Data Infrastructure @ Douban
 
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践
 
Build 1 trillion warehouse based on carbon data
Build 1 trillion warehouse based on carbon dataBuild 1 trillion warehouse based on carbon data
Build 1 trillion warehouse based on carbon data
 
云计算 系统实例与研究现状
云计算 系统实例与研究现状云计算 系统实例与研究现状
云计算 系统实例与研究现状
 
MySQL 網路參考架構
MySQL 網路參考架構MySQL 網路參考架構
MySQL 網路參考架構
 
The Trend Of Cloud Computing And How Should Public Sectors Adjust
The Trend Of Cloud Computing And How Should Public Sectors AdjustThe Trend Of Cloud Computing And How Should Public Sectors Adjust
The Trend Of Cloud Computing And How Should Public Sectors Adjust
 
Linux运维趋势 第15期 虚拟化管理软件选型
Linux运维趋势 第15期 虚拟化管理软件选型Linux运维趋势 第15期 虚拟化管理软件选型
Linux运维趋势 第15期 虚拟化管理软件选型
 
《云计算入门指南》
《云计算入门指南》《云计算入门指南》
《云计算入门指南》
 
Streaming 数据流+赵波+Making Flink K8S works as your wish.pdf
Streaming  数据流+赵波+Making Flink K8S works as your wish.pdfStreaming  数据流+赵波+Making Flink K8S works as your wish.pdf
Streaming 数据流+赵波+Making Flink K8S works as your wish.pdf
 
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝
F1 07 淘宝软件基础设施构建实践_章文嵩_淘宝
 

Bigtable

  • 1. Bigtable BigTable 1 of 18 oases
  • 4. Google Growth BigTable Nov. '98: 10,000 queries on 25 computers Apr. '99: 500,000 queries on 300 computers Sep. '99: 3,000,000 queries on 2100 computers 3 of 20
  • 5. Counting the numbers Client/Server Personal Computer One:One One:Many BigTable 4 of 20 Cloud Computing Many:Many transition
  • 6. Current Design BigTable • In-house rack design • PC-class motherboards • Low-end Storage and networking hardware • Linux • + in-house software 5 of 20
  • 7. 如何讓服務不斷線,而且硬體一定會壞掉的前提下… 建構一個即使硬體會壞,軟體可以容錯, 而且可以持續服務的機制。 倒過來說,當建構一套這樣的軟體時, 考慮平均五年壞一次的硬體和 兩年換一次的硬體時,硬體就顯得較不重要了 願意花些時間,把容錯軟體建置起來, 硬體就不重要了 BigTable 6 of 20
  • 9. Google.com (about 1999) BigTable 8 of 20
  • 10. Google.com (about 2000) BigTable 9 of 20
  • 11. Google.com (new data center 2001) BigTable 10 of 20
  • 12. Google.com (new data center 2001) BigTable 11 of 20
  • 13. How to develop a web application that scales: Data Processing BigTable Storage Database Serving Map Reduce Google File System BigTable Google AppEngine Google’s solution 12 of 20
  • 14. Google File System: BigTable • Files broken into chunks (typically 64 MB) • Chunks triplicated across three machines for safety (tunable) • Master manages metadata • Data transfers happen directly between clients and chunkservers 13 of 20 •EX:一個檔案64MB被切10 塊,每一塊再複製三份,這30 就會在不同的server上
  • 16. Big Table: Column Data Model -(row, column, timestamp) → cell contents BigTable “<html>..” “<html>..” “<html>...” “www.cnn.com” t3 t5 t6 “Content:” Row Key s Timestamp s 15 of 20
  • 17. System Structure: BigTable Cell BigTable Bigtable master Bigtable tablet server metadata Read/write 、Bigtable tablet … server Bigtable client Library Bigtable tablet server Cluster scheduling system Open() GFS Lock service handles failover, monitoring holds tablet data, logs holds metadata, handles master election 16 of 20
  • 18. Big Table Summary: • Data model applicable to broad range of clients – Actively deployed in many of Google’s services • System provides high performance storage system on a large scale – Self-managing – Thousands of servers – Millions of ops/second – Multiple GB/s reading/writing BigTable 、 • Currently ~500 BigTable cells • Largest bigtable cell manages ~3PB of data spread over several thousand machines (larger cells planned) 17 of 20
  • 19. MapReduce -A Model and System 為一種用在大型叢集環境理處理大量資料的一種軟體架構 •EX: [Reduce] BigTable 、 中選會 [master] 18 of 20 台北三重1號投票所 [server1] 台中大甲3號投票所 [serve255] 分配開票任務 高雄三多4號投票所 … [serverX] 進行開票進行開票進行開票 [Map]
  • 20. MapReduce -A Model and System Two phases of data processing • Map:(in_key, in_value) → {(keyj, valuej )| j=1,… K} 將Key對應到list(value)中,對Map輸入一些資料,Map會進 行一些前置處理,然後把Key與每一筆資料配對,成為 list(key’, value’)。 BigTable 、 • Reduce:(key,[value1, …valueL ])→ (key, f_value) Reduce為一種彙總函數,將許多value’統合為一個value”。 Key’的存在,可能是用於樣式比對或額外附加資訊的需要。 19 of 20
  • 21. MapReduce Summary : • 分散處理-將資料分割並儲存在不同的電腦上,透過 • 容錯處理-High Replication 的機制,可以防範硬體 BigTable MapRedce的處理程序完成資料處理,最 後把結果送到requster。 、 掛掉的情況下,可以去從另外有同筆資料區 段的硬碟去讀取。 20 of 20

Editor's Notes

  1. Google服務上線後,隨著時間,使用者變多 民國98年11月上線,一天約一萬queries,25台就能處理了 沒幾年,02年就一天一億五千個queries,可以看出這個倍數是相當驚人的。 而現在的世代,一個application如果好用,會被推薦,接著流行的話,那會在更快的時間內達到很大的倍數成長。 怎麼處理這個問題,就會牽扯到一些programming model.
  2. 在早期的寫程式的時候,寫出來的程式是一個軟體裝在一台pc上.那就是1對1的關係. 後來開始寫server的軟體,寫完裝在一台server上,服務好幾個clents,所以是一對多的關係. 那到了cloud computing ,一個軟體要裝在很多台server上並服務很多的使用者,那這是多對多的關係. 對開發者而言,他需要去關心這些事,思考如何調整架構以服務更多人. google的創辦人很早相信自己會很快吸引到大量的流量,因此買一台多貴多大的伺服器都不夠用.
  3. 如何讓服務不斷線,在硬體一定會壞掉的前提下, 建構即使硬體會壞,軟體可以容錯,而且可以持續服務。 倒過來說,當建構一套這樣的軟體時,平均五年壞一次的硬體和兩年壞一次的硬體,就不重要了。 有壞就換嘛,反正有別台可以繼續提供我的服務. 重點就是一旦願意花時間,把這些容錯軟體建置起來,真的就不需要再購買昂貴的硬體了.
  4. 如何讓服務不斷線,在硬體一定會壞掉的前提下, 建構即使硬體會壞,軟體可以容錯,而且可以持續服務。 倒過來說,當建構一套這樣的軟體時,平均五年壞一次的硬體和兩年壞一次的硬體,就不重要了。 有壞就換嘛,反正有別台可以繼續提供我的服務. 重點就是一旦願意花時間,把這些容錯軟體建置起來,真的就不需要再購買昂貴的硬體了.
  5. 在有這樣的硬體後,怎樣寫一套軟體服務給大量的使用者。 應用程式如何Serving, google 在這幾個都有solution
  6. Google file system的結構,就是把一個檔案切成一塊一塊的,每一塊為64MB. 每一塊都會被複製三份, 然後放在不同的server上. 一個檔案64MB被切成10塊,10塊每一塊再複製三份, 這三十塊可能在不同的server上. 會有master管理meatdata, 只要給master檔名、路徑名,它就會找出是哪幾塊,每一塊的編號是什麼,在哪幾個server上. 資料就會在client與chunkserver進行傳輸
  7. Data model 就是 ROW, Column, 還有第三個維度叫Timestamps 比方說一個表要網路上所有的網頁copy回來以後存進去,那怎麼存呢? 每一個網頁都有一個URL,網址當Row,而Cloums就能存該網頁的內容, 那有些網頁更新非常快EX: CNN 所以你可以不同的時間把該頁的內容全部copy在一個表中,然後你可用不同的時間點,去讀回來.你要讀取合時的內容都可以. 哪些Server要儲存哪些ROW哪些Cloumn都是可以設定的
  8. 雖然BigTable不具有關聯性,但是目前適用於google的服務當中 資料的管理很方便、讀寫速度不錯 一個cell等於一個cluster 最大的cell有3PB的DB
  9. 中選會可以將開票任務分配給各地投票所,各自負責所屬的票箱,最後再向中選會回報各開票所的開票結果,中選會再統一彙整,就能算出全國的開票結果,這樣就不需要把幾百萬張選票都運回中選會處理。」各投票所的開票任務就像是Map程式,負責處理少量資料,而Reduce程式就是中選會彙整投票結果的動作。