解析世界最大照片社區(qū)_第1頁(yè)
解析世界最大照片社區(qū)_第2頁(yè)
解析世界最大照片社區(qū)_第3頁(yè)
解析世界最大照片社區(qū)_第4頁(yè)
解析世界最大照片社區(qū)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Scaling the Worlds Largest Photo Blogging Community,Farhan “Frank” Mashraqi Senior MySQL DBA Fotolog, Inc. Credits: Warren L. Habib: CTO Olu King: Senior Systems Administrator,Introduction,Farhan Mashraqi Senior MySQL DBA Fotolog, Inc. Known on PlanetMySQL as Frank Mash Author of upcoming “Pro Ruby

2、on Rails” by Apress Contact Blog: ,What is Fotolog?,Social networking Guestbook comments Friend/ Favorite lists Members create “Social Capital” “One photo a day” Currently 25th most visited website on the Internet (Alexa) History ,Fotolog (Screenshot of home page),Fotolog (Screenshot of a fotolog me

3、mber page),Fotolog Growth,228 million member photos 2.47 billion guestbook comments 20% of members visit the site daily 24 minutes a day spent by an average user 10 guestbook comments per photo 1,000 people or more see a photo on average 7 million members and counting “explosive growth in Europe” It

4、aly and Spain among the fastest-growing countries Recently broke the 500K photos uploaded a day record 90 million page views,Fotolog Flickr,Technology,Sun Solaris 10 MySQL Apache Java / Hibernate PHP Memcached 3Par IBRIX StrongMail,MySQL at Fotolog,32 Servers Specification of servers Four “clusters”

5、 User GB PH FF,Non-persistent connections (PHP) Connection Pooling (Java) Mostly MyISAM initially Later mostly converted to InnoDB Application side table partitioning Memcache,Image Storage / Delivery,MySQL is used to store image metadata only 3Par (utility storage) Thin Provisioning (dedicate on al

6、location vs. dedicate on write) How fast growing each day? Frequently Accessed vs. Infrequently accessed media Third party CDN: Akamai/Panther,Important Scalability Considerations,Do you really need to have 5 nines availability? Budget Time to deploy Testing Can we afford: SPF? Not having read redun

7、dancy? User PH GB FF Not having write redundancy? User PH GB FF,Partitioning,SHARD 1,SHARD 2,SHARD 3,Table_v1,Table_v2,Table_v3,Table_v4,Partitioning thoughts,Ideal distribution,GB current,db4 db18 db22 db23 db24 db25 db26 db27 db28 db30 db32,Application Servers,4,18,22,23,24,25,26,27,28,30,32,read,

8、write,Single Point of Failure,GB Scalability,db4 db18 db22 db23 db24 db25 db26 db27 db28 db30 db32,Application Servers,4,18,22,23,24,25,26,27,28,30,32,read,write,00-08,09-17,18-26,27-35,36-44,45-53,54-62,63-71,72-80,81-89,90-99,Slave,Master/DRBD,Current Scheme for fl_db1 repl. PH,Application Servers

9、,read,write,Slave,DB2,DB1,DB3,DB8,DB12,Application Servers Issuing PH Queries,RTX,Repl.,Repl.,Repl.,DB7,DB9,DB15,FSW,05DHN,AEK,16JOQUZ,28IP,_,39B,4C,7GLVY,M,DB10,DB11,DB13,DB14,DB16,29,FF. Repl.,Proposed Scheme for PH (Write & Read),Application Servers,7,8,9,10,11,12,13,14,15,16,29,read,write,00-08,

10、09-17,18-26,27-35,36-44,45-53,54-62,63-71,72-80,81-89,90-99,TO USER CLUSTER,AUTO-INC table lock contention,SEL,SEL,SEL,SEL,SEL,SEL,SEL,SEL,SEL,SEL,M Y S Q L,Thread concurrency,SELECTs do very well with Increased concurrency.,QPS: 500+,GOOD TIMES,AUTO-INC table lock contention,SEL,SEL,SEL,SEL,SEL,INS

11、,INS,M Y S Q L,Thread concurrency,As more SELECTs come, AUTO-INC lock contention Starts causing problem.,WARNING,SEL,SEL,SEL,AUTO-INC table lock contention,INS,SEL,INS,SEL,INS,INS,INS,INS,INS,INS,M Y S Q L,Thread concurrency,PROBLEM,SEL,SEL,SEL,SEL,INS,INS,INS,INS,INS,InnoDB Tablespace Structure (Si

12、mplified),PK / CLUSTERED INDEX,SECONDARY INDEX,PK (clustered index key),6 byte header,Links together consecutive records & used in row-level locking,Clustered index containsFields for alluser-definedcolumns,6 byte trx id,7 byte roll pointer,6 byte row id,If no PK or UNIQUE NOT NULL defined,Record Di

13、rectory,Array ofPointers to each field of the record 1 byte: If the total length of fields in record is 128 bytes2 bytes: otherwise,Data part of record,InnoDB Index Structure (Simplified),DATA PAGE,PK INDEX / CLUSTERED INDEX,SECONDARY INDEX,PK,ROW DATA,PK,Old Schema,CREATE TABLE guestbook_v3 ( ident

14、ifier bigint(20) unsigned NOT NULL auto_increment, user_name varchar(16) NOT NULL default , photo_identifier bigint(20) unsigned NOT NULL default 0, posted datetime NOT NULL default 0000-00-00 00:00:00, PRIMARY KEY (identifier), KEY guestbook_photo_id_posted_idx (photo_identifier,posted) ENGINE=MyIS

15、AM,Reads,Data pages,Data ordered byIdentifier (PK) Looked up by secondary key,New Schema,CREATE TABLE guestbook_v4 ( identifier int(9) unsigned NOT NULL auto_increment, user_name varchar(16) NOT NULL default , photo_identifier int(9) unsigned NOT NULL default 0, posted timestamp NOT NULL default 000

16、0-00-00 00:00:00, PRIMARY KEY (photo_identifier,posted,identifier), KEY identifier (identifier) ENGINE=InnoDB 1 row in set (7.64 sec),Pending preads (Optimizing Disk Usage),Data pages,Data ordered bycomposite key consisting of photo_identifier (FK) Looked up by primary key Very low read requests per

17、 second,Pending reads / writes / Proposed,Throughput not as important as number of requests,Pending reads / writes / Proposed,Pending reads,MySQL Performance Challenges,Finding the source of problem Mostly disk bound in mature systems Is the query cache hurting you? RAM addition helps dodge the bullet Disk striping Restructuring tables for optimal performance LD_PRELOAD_64 = /

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論