ThaiSEOBoard.com

พัฒนาเว็บไซต์ => Programming => ข้อความที่เริ่มโดย: aofarashizaa ที่ 09 กรกฎาคม 2009, 19:49:38



หัวข้อ: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 09 กรกฎาคม 2009, 19:49:38
ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด (เขาเรียกแบบนี้หรือเปล่าไม่แน่ใจ)
ฐานข้อมูลมันจะพังไหมครับ แล้วทาง host จะเตะเว็บเราหรือเปล่าครับ


ขอบคุณครับที่ตอบผม


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: untilate ที่ 09 กรกฎาคม 2009, 20:15:32
มันอยู่ที่การจัดการของคุณ

มี แสน เรคคอร์ด แต่ถ้า ไม่มีคนเข้าเว็บก็ไม่เป็นไร

มี แสน เรคคอร์ด แต่ มีคนเข้าเว็บมีจัดการไม่ให้โหลดเครื่องได้ ก็ไม่เป็นไร

มี แสน เรคคอร์ด แต่ถ้คนเข้าเยอะ ไปลากเครื่อง เค้าก็จะเตะครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 09 กรกฎาคม 2009, 20:39:55
ถ้าคนเข้าเยอะ ผมต้องมีเซิฟเวอร์เป็นของตัวเองเลยใช่ไหมครับเนีย
แล้วการเตะเว็บเรา เขาจะแจ้งก่อนหรือเปล่าคับ ข้อมูลเดิมเราจะโหลดมาเก็บไว้ได้ไหมคับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: Reality ที่ 09 กรกฎาคม 2009, 23:06:10
เราต้องทำการ แคชชิ่ง (cache) ให้ดีครับผม  :)


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: enviengine ที่ 10 กรกฎาคม 2009, 01:29:49
ผมโดนไปทีหนึ่งละ >:(


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: Ton~ ที่ 10 กรกฎาคม 2009, 09:54:02
มันก็แล้วแต่ละที่นะครับ เพราะถ้าเป็นแสน แล้วพื้นที่ใช้งานเต็มก็อาจจะโดน
อย่างของผมนี่วิ่งไป 10 ล้านได้แล้วละ Database size ขนาด 4GB ไปแล้วทำ Index ด้วยเลยใหญ่มากๆ แต่มันเร็วขึ้นเยอะ

ถ้าหากเป็นแสน แล้วคนเข้าเยอะก็อย่างข้างบนแนะนำครับ มันจะไปโหลดเครื่องเขาครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: tanakater ที่ 10 กรกฎาคม 2009, 10:06:10
ถ้าเขียน Select * from database ทุกครั้ง จะกิร RAM แล้ว Server จะล่มครับ

สามารถใช้วิธีการทำ Table Mart หรือการทำ Index มาช่วยลดโหลด

ลองคิดดูว่า เว็บคนไทยดอทคอม มีข้อมูลคน 70 ล้านคน ยังโหลดได้สบายๆ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: Moha ที่ 10 กรกฎาคม 2009, 10:21:37
ลองใช้ select  file_a,field_b from table_c LIMIT X , Y;

แบบนี้ไหมครับ

นอกจากนั้น ไปศึกษาการสร้าง index ดีๆ เน้น ความพอเพียงนะครับ มีมากก็ไม่ดี จะทำให้หนักเกินไป

คือ พูดง่ายๆ ใช้เท่าที่จำเป็น เน้นความพอเพียง

เว็บที่ผมทำ ก็มีเป็น ล้าน record ยิ่งตัว นับ ads ก็หลายสิบล้าน เช่นกัน

ก็พอไหวครับ ถ้าเน้นความพอเพียง  ลองๆ ดูครับ ที่สำคัญ หมั่น monitor และ จูนมันไปเรื่อยๆ

เพราะ กรุงโรมไม่ได้สร้างเสร็จในวันเดียว เว็บก็เช่นกัน แม้หน้าตาจะนิ่งๆ แต่โครงสร้างข้างใน ปรับไปเรื่อยๆ จนกว่าจะ เบื่อ หรือ เลิกไปก่อนนะครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: TOOAds.com ที่ 10 กรกฎาคม 2009, 10:30:19
เว็บคนไทยคนยังใช้น้อยมั้ง ถึงยังไม่มีปัญหา


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: zidit ที่ 10 กรกฎาคม 2009, 11:11:05
เยอะพอดูครับ อยู่ที่ว่าจะจัดการยังไงเเล้วหล่ะให้เบา ไม่งั้นโดนเตะ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 10 กรกฎาคม 2009, 11:41:27
อยากจะทำเว็บแนว โซเชียว เน็ตเวิก  อ่ะคับ มาลองคิดดูเรื่อง ตารางคอมเม้น คนหนึ่งก็มีเป็นพันๆ แล้วถ้าสมาชิกมีเยอะๆ มันจะเป็นยังไงเนีย


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: TAXZe ที่ 10 กรกฎาคม 2009, 11:42:34
ซอย db + indexed + cache file

 :D


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: WPDSign ที่ 10 กรกฎาคม 2009, 11:50:16
ของผมไม่รู้เอาไงดีเหมือนกัน ยังไม่คล่องเรื่อง db ด้วยช่วงนี้
db เริ่มบวม :)


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 10 กรกฎาคม 2009, 11:52:35
ซอย db + indexed + cache file

 :D


สงสัยผมคงต้องศึกษานานแน่เลย กว่าจะทำได้เนีย เพราะว่า พี่ๆพูดอะไรมา ผมยังไม่รู้เรื่องเลย
php ก็งูๆปลา่ๆ จริงๆทำงานด้านเว็บดีไซน์อ่้ะคับ แต่เว็บที่ผมจะทำเนีย มีเพื่อนที่เขียนโปรแกรมเว็บอีก 2 คนช่วยอยู่


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 10 กรกฎาคม 2009, 19:55:52
ถ้าเขียน Select * from database ทุกครั้ง จะกิร RAM แล้ว Server จะล่มครับ

สามารถใช้วิธีการทำ Table Mart หรือการทำ Index มาช่วยลดโหลด

ลองคิดดูว่า เว็บคนไทยดอทคอม มีข้อมูลคน 70 ล้านคน ยังโหลดได้สบายๆ

แล้วถ้าเรา include ไฟร์ที่ Select * from database  ไว้มาใช้อ่ะคับ มันจะแตกต่างกันไหม ระหว่าง Select * from database  หน้านั้นหลายๆอันอ่ะคับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: untilate ที่ 10 กรกฎาคม 2009, 20:10:04
ถ้าเขียน Select * from database ทุกครั้ง จะกิร RAM แล้ว Server จะล่มครับ

สามารถใช้วิธีการทำ Table Mart หรือการทำ Index มาช่วยลดโหลด

ลองคิดดูว่า เว็บคนไทยดอทคอม มีข้อมูลคน 70 ล้านคน ยังโหลดได้สบายๆ

แล้วถ้าเรา include ไฟร์ที่ Select * from database  ไว้มาใช้อ่ะคับ มันจะแตกต่างกันไหม ระหว่าง Select * from database  หน้านั้นหลายๆอันอ่ะคับ

เหมือนกันครับ แค่ include ทำให้ดูง่ายขึ้น

แต่จริงๆ แล้วมันก็ดึงมารันบนหน้า ที่ include เลยครับ (ไม่แน่ใจ)


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 10 กรกฎาคม 2009, 22:40:06
แล้วผมควรจะเริ่มศึกษาจากตรงไหนดีอ่ะคับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: SeoMania ที่ 10 กรกฎาคม 2009, 23:45:56
นี่แหละเหตุผลที่ต้องมี server แรง ๆ แต่ต้องควบคู่จัดการ Query Analyzer ให้ดีครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: etgsgroup ที่ 10 กรกฎาคม 2009, 23:54:37
แค่ตามอ่านดูก็มึน ๆ แล้ว อ่ะครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: thenetxx ที่ 11 กรกฎาคม 2009, 16:15:11

1.ใช้ cache ช่วย แบ่งเบาการทำงานของ db
2.ทำการ optimize ตัว code และ  query ให้กิน resource น้อย ๆ
3.ถ้าสุดท้ายมันไม่ไหว ก็ต้องใช้เครื่องเพิ่ม เพื่อน load balance  ::)


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: SmileHost ที่ 11 กรกฎาคม 2009, 16:18:15
ขนาด DB คงมหาศาล ผมแนะนำว่าอย่าเช่าพวก share Hosting เลยครับ หากพวก VPS หรือ Dedicated หรือว่าทำ db server มา 1 เครื่องเลยครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: sunkoster ที่ 11 กรกฎาคม 2009, 16:23:07
index
fulltext
cache ของสคริป
cache เป็ไปได้ ทำที่ mysql ด้วย


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: ttuunn ที่ 11 กรกฎาคม 2009, 22:03:58
ทำ index sql  + เขียนโค้ดดีๆ + เอา sql เขียนลง Html ไม่ต้องเขียนหมด เขียนเฉพาะ Record ที่จะโชว์ แล้ว include เข้ามา ( หลักการ cache ) + บลาๆแล้วแต่วิธีท่านอื่นๆ
100000 แสน เช่นเอามาโชว์ 20 record

select*from where หน้าแรกเยอะ เว็บเน่าเลย

แชร์กันครับดีๆ

 


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: banban ที่ 11 กรกฎาคม 2009, 23:05:38
อีกเทคนิคนึง ที่น่าสนใจ กรณีข้อมูลนั้นไม่จำเป็นต้องค้นหามาแสดงเท่าไร เช่นพวก สถิติต่างๆในเวบ, ฐานข้อมูลรายการรูปภาพ upload ฯลฯ อาจแยกเก็บเป็น เดือนละ 1 table หรืออาทิตย์ละ 1 table แล้วแต่ว่าข้อมูลจะเพิ่มเร็วแค่ไหน

วิธีเขียน ลองค้นคำว่า CREATE TABLE IF NOT EXISTS

ส่วนการเรียกใช้ ก็เขียนระบบให้แยกแยะได้ว่า ผู้ดูต้องการข้อมูลเดือนใด ก็ไปเรียกมาจาก table เดือนนั้น

ก็จะลดภาระโหลด DB หนักไปได้อีกแรง....


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: aofarashizaa ที่ 11 กรกฎาคม 2009, 23:25:05
น่าจะใช่ 6-8 ตารางที่จะดึงข้อมูลมาอ่ะครับ


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: SeoMania ที่ 12 กรกฎาคม 2009, 00:15:29
อีกเทคนิคนึง ที่น่าสนใจ กรณีข้อมูลนั้นไม่จำเป็นต้องค้นหามาแสดงเท่าไร เช่นพวก สถิติต่างๆในเวบ, ฐานข้อมูลรายการรูปภาพ upload ฯลฯ อาจแยกเก็บเป็น เดือนละ 1 table หรืออาทิตย์ละ 1 table แล้วแต่ว่าข้อมูลจะเพิ่มเร็วแค่ไหน

วิธีเขียน ลองค้นคำว่า CREATE TABLE IF NOT EXISTS

ส่วนการเรียกใช้ ก็เขียนระบบให้แยกแยะได้ว่า ผู้ดูต้องการข้อมูลเดือนใด ก็ไปเรียกมาจาก table เดือนนั้น

ก็จะลดภาระโหลด DB หนักไปได้อีกแรง....

งั้นถ้าจะไปดึงข้อมูลข้อมูลจากเดือนนั้น ๆ ต้องทำยังไงครับ

select * from (......)


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: sunkoster ที่ 12 กรกฎาคม 2009, 04:06:46
รู้สึก mysql
NOT EXISTS จะใช้ไม่ได้มั้ง

เพราะผมเขียนใช้ใน ออราเคิลใช้ได้ แต่ ใช้ใน mysql ไม่ได้ซะงั้น


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: thenetxx ที่ 13 กรกฎาคม 2009, 22:18:59
ก็เขียน สคริป ทำก็ได้นิ

- getdate เอา เดือนกะปีมาต่อเป็น string เช่น $tname = $year.$month; เพื่อตั้งชื่อ table
- query ง่าย ๆ อะไรก็ได้ เช็คดูก่อนว่ามี table นี้รึยัง ถ้าไม่มีก็ create ใหม่ซะ
- select ... from $tname where ....

Idea นี้ดีครับ จะลองเอาไปปรับใช้ดู น่าสนใจทีเดียว แต่เอาไปใช้กับพวก session หรือพวกสถิติต่าง ๆ ก็คงจะดี แต่คงไปใช้กับข้อมูล content ไม่ได้ ไม่งั้นเวลาจะหาข้อมูลที คงต้องไล่หาทีละตาราง  :P


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: vii ที่ 13 กรกฎาคม 2009, 22:33:20
เห็นด้วยให้ทำ db server อีกตัวเลย


หัวข้อ: Re: ถ้าฐานข้อมูลเว็บมี เป็นแสน เรคคอร์ด
เริ่มหัวข้อโดย: ohmohm ที่ 19 กรกฎาคม 2009, 13:10:07
มันมีเหมือนกัน ระบบฐานข้อมูล แบบที่รองรับจำนวนข้อมูลมากๆ หลายๆ record เช่น Apache HBase หรือ Amazon web services ก็มี Amazon SimpleDB ( http://www.webappiphone.com/blognone/node.php?content=9790 )