ขอคำแนะนำเรื่องการเก็บข้อมูลเยอะๆ --> เก็บเป็นหลายๆไฟล์, MySQL, SQLite

เริ่มโดย nuvatchai, 20 ธันวาคม 2013, 21:23:56

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

nuvatchai

- เก็บเป็นหลายๆไฟล์
- MySQL
- SQLite

ระยะยาวใช้อะไรดีครับ ข้อมูลไม่ได้สำคัญอะไรแต่เก็บเยอะมากๆ 1 Record ประมาณ 7-8Kb ครับ รวมๆ แล้วอยากเก็บประมาณซัก 400-500Mm ต่อตาราง แต่ 1 ฐานข้อมูลก็มีแค่ตารางเดียวที่เก็บเยอะครับ

ตอนนี้ใช้ MySQL รู้สึกไม่ประทับใจเท่าไรครับอืดๆ อาจเป็นเพราะมีหลายฐานข้อมูลด้วยครับ

ตอนนี้คิดไว้คือ
- SQLite  --> กลัวมีปัญหาอืดๆ แบบ MySQL แต่จะง่ายเวลา backup เพราะเก็บไว้ในไฟล์เดียว
- เก็บเป็นหลายๆไฟล์ --> น่าจะมีปัญหาใช้ เวลา backup นานเพราะมีหลายไฟล์ แต่พอรับได้ครับ

ตอนนี้ใช้ MySQL ต้องใช้ server แรงๆ หน่อยหมดรายเดือนเยอะครับก็เลยอยากแก้ปัญหาตรงนี้ให้จบ

siammbk

ใช้ mysql ก็น่าจะไหวนะคับ

ว่าแต่ข้อมูลอะไรเหรอคับถึงได้ 7-8 KB ต่อ record
รับออกแบบเว็บไซต์ ทุกรูปแบบ งานใหญ่ๆ ระบบยากๆ ราคาแรงๆ คุยกันคับ
line : siammbk
tel : 095-675-8614


MapTwoZa

ถามก่อนว่า ข้อมูลเก่าๆ archive ไปเก็บได้มั๊ยครับ
ซึ่งเมื่อ archive ข้อมูลจะไม่ online ในระบบ นะครับ

ถ้าทำแบบนี้ได้ก็ให้ใช้ rdbms ตัวไหนก็ได้ครับ
ถ้าข้อมูลที่อยากให้ live ในระบบเยอะ ก็ไปใช้ mssql db2 oracle
หรือถ้าตัวฟรี แต่ต้องดีลกับปัญหาที่จะเกิดขึ้นแล้วอาจจะ solve ยากหน่อย ก็ไปใช้ postgreSQL


แต่ถ้าอยากให้ข้อมูลเก่าๆ live ด้วยแล้วอยากให้เก็บได้ไม่จำกัด ต้องไปใช้ nosql ครับ ซึ่งตรงกับจุดดีของมัน
จะใช้ตัวไหนก็เลือกเอาครับ แต่่ละตัวเหมาะกับข้อมูลคนละแบบ
เช่น
แบบ document db ก็ mongodb
แบบ map-reduce ก็ hadoop
หรือแบบ key-value ตัวนี้มีอะไรให้ใช้มั่ง ไม่รู้เหมือนกันครับ
Good code quality Developer :D

nagis

อ้างถึงจาก: max30012540 ใน 20 ธันวาคม 2013, 22:01:09
MongoDB :wanwan023:

อ้างถึงจาก: nuvatchai ใน 20 ธันวาคม 2013, 21:23:56
- เก็บเป็นหลายๆไฟล์
- MySQL
- SQLite

ระยะยาวใช้อะไรดีครับ ข้อมูลไม่ได้สำคัญอะไรแต่เก็บเยอะมากๆ 1 Record ประมาณ 7-8Kb ครับ รวมๆ แล้วอยากเก็บประมาณซัก 400-500Mm ต่อตาราง แต่ 1 ฐานข้อมูลก็มีแค่ตารางเดียวที่เก็บเยอะครับ

ตอนนี้ใช้ MySQL รู้สึกไม่ประทับใจเท่าไรครับอืดๆ อาจเป็นเพราะมีหลายฐานข้อมูลด้วยครับ

ตอนนี้คิดไว้คือ
- SQLite  --> กลัวมีปัญหาอืดๆ แบบ MySQL แต่จะง่ายเวลา backup เพราะเก็บไว้ในไฟล์เดียว
- เก็บเป็นหลายๆไฟล์ --> น่าจะมีปัญหาใช้ เวลา backup นานเพราะมีหลายไฟล์ แต่พอรับได้ครับ

ตอนนี้ใช้ MySQL ต้องใช้ server แรงๆ หน่อยหมดรายเดือนเยอะครับก็เลยอยากแก้ปัญหาตรงนี้ให้จบ

mongodb อีกคน

smapan

จากข้อมูลที่รับมาก็ mongodb อีกคนครับ

...แต่ไม่เคยเขียนเลย  :wanwan031:
[direct=http://cp.siamhostweb.com/cart.php?gid=1]จูมล่าโฮส สยามโฮสเว็บ[/direct] [direct=http://www.modty.com]modty.com[/direct]
[direct=http://www.apartment.in.th]รวมที่พัก เช่ารายวัน ที่พักเช่ารายเดือนมากที่สุดแจ่มจริง[/direct]
***Tel 083-757-1515 ติดปัญหา Joomla ตรงไหนรับปรึกษาฟรี โทรมาเถอะครับ ถ้าตอบได้ช่วยแน่นอน ไม่มีกั้ก. ***

kobkung

เราเป็นบริษัท รับทำเว็บไซต์ แก้เว็บเดิม เขียน Php+Mysql+jQuery+css+bootstrap  งานตามสั่ง ประสบการณ์ จะ 19 ปี ละจ้า
[direct=http://www.smilephp.com]Smilephp.com[/direct] รับทำเว็บไซต์บริษัท e-commerce + ระบบชำระเงิน paypal,ธนาคาร  เว็บบริษัท เว็บขายของ ระบบจอง เช่า เขียน PHP ได้ทุกแนว  ช่วงนี้เน้นรับงาน ERP ระบบเอกสารบริษัท ,บัญชี ,  Barcode, Stock , Warehouse , Logistic ติดต่อ 086-364-5262
[direct=http://www.sellerorder.com ระบบหลังบ้าน จัดการ Order ขายของ  ช่วงนี้หาคนทดสอบฟรี ขอได้ตามเมลในเว็บ[/direct]
งดตอบคนทำเว็บนอกลู่นอกทาง ไม่ทำเว็บ WP ปั่นแชร์ เว็บประมูล สคริปปั่นใดๆ ไม่ทำเว็บบอลและพ

prinzekung

MySQL ก็ไม่น่าอึดนะครับ อยู่ที่การตั้งค่าต่างๆ ประกอบด้วยครับ
ข้อมูลเป็นแสน Record ก็ยังรับไหวสบายๆ อยู่นะครับ

เช่าโฮสที่ไหนดี  Email Hosting VPS Cloud Server
█ แจกจุกๆ Affiliates 1,000-2,000 บาท hosting ไม่จำกัด
█ ส่วนลด 500 บาท Code "THAISEO500" Hosting

iLhay

[direct=https://bangmod.cloud/wordpress-hosting/]Wordpress Hosting

[/direct]
[direct=https://bangmod.cloud/wordpress-hosting/]Wordpress Hosting[/direct] เริ่มต้นปีละ 790 บาท NVMe SSD เร็ว 9000MB/s เร็วกว่านี้ไม่มีอีกแล้ว
[direct=https://bangmod.cloud/cloud-server]Cloud Server[/direct] เริ่มต้นเพียงเดือนละ 159 บาท พร้อมใช้ภายใน 1 นาที ผ่านระบบอัตโนมัติมีทั้ง Linux / Windows / DirectAdmin
สอบถามข้อมูลและแจ้งปัญหา 02-105-4417 ตลอด 24 ชั่วโมง

nuvatchai

อ้างถึงจาก: iLhay ใน 21 ธันวาคม 2013, 19:06:10
วิเคราะห์ก่อนมั๊ยฮะว่าช้าเพราะอะไร

มีข้อจำกัดทาง server ด้วยครับ ตอนนี้ผมใช้ Server HDD SATA ธรรมดาด้วย database ของผมรวมๆ แล้วประมาณ 10GB ครับ
ส่วน code ก็มีข้อจำกัดครับคือผมแก้ไม่ได้ ระบบเว็บก็มีข้อจำกัดคือไม่ต้องการ cache ครับ จากที่ลองใช้ mytop ดูก็เห็น performance การทำงานของ mysql แล้วครับ คือมีการเรียกข้อมูลข้ามกันไปมา แต่แก้ code ไม่ได้เพราะโดน encode ไว้ผมก็เลยต้องทำใหม่

MapTwoZa

อ้างถึงจาก: nuvatchai ใน 21 ธันวาคม 2013, 21:59:18
อ้างถึงจาก: iLhay ใน 21 ธันวาคม 2013, 19:06:10
วิเคราะห์ก่อนมั๊ยฮะว่าช้าเพราะอะไร

มีข้อจำกัดทาง server ด้วยครับ ตอนนี้ผมใช้ Server HDD SATA ธรรมดาด้วย database ของผมรวมๆ แล้วประมาณ 10GB ครับ
ส่วน code ก็มีข้อจำกัดครับคือผมแก้ไม่ได้ ระบบเว็บก็มีข้อจำกัดคือไม่ต้องการ cache ครับ จากที่ลองใช้ mytop ดูก็เห็น performance การทำงานของ mysql แล้วครับ แต่แก้ code ไม่ได้เพราะโดน encode ไว้ผมก็เลยต้องทำใหม่

ดูจากขนาดข้อมูลใช้ rdbms ก็เพียงพอครับ
ดังนั้น ปัญหาของท่านคือ performance ใช่ป่าวครับ
อันดับแรก เบสิคเลยคือ tune up database ก่อนครับ ถ้ายังไม่ work คงต้องพิจารณาเรื่อง database แล้วครับ

mysql นี่เป็นอันรู้กันครับว่าระบบการทำงานของมันมีการ optimized มามากกว่า database ตัวอื่น
ถ้าข้อมูลไม่เยอะนี่ยังไง mysql ก็ทำงานไวสุดครับ

กลับกันถ้าข้อมูลเริ่มจะเยอะ มันก็จะสู้ตัวอื่นไม่ได้
ส่วนเรื่อง database ถ้าข้อมูลมีการ write เยอะ แนะนำว่าอย่าใช้ sqlite ครับ ข้อเสียมันคือ write ช้ากว่าตัวอื่น
(ส่วนตัวผมว่า sqlite + mysql มันเหมาะกับงานเดียวกัน ซึ่งระหว่าง 2 ตัวนี้ ยังไงผมก็เลือก mysql อยู่แล้ว 55+)

ส่วนตัวที่ performance ดีแล้วพอสู้ตัวใหญ่ๆได้ ก็อย่างเช่น postgreSQL (แต่ข้อเสียมัน<สำหรับผม> คือ มันไม่มี toad for postgresql)

หรือไม่ก็ใช้ sql server ก็ได้ครับ
Good code quality Developer :D

iLhay

อ้างถึงจาก: nuvatchai ใน 21 ธันวาคม 2013, 21:59:18
อ้างถึงจาก: iLhay ใน 21 ธันวาคม 2013, 19:06:10
วิเคราะห์ก่อนมั๊ยฮะว่าช้าเพราะอะไร

มีข้อจำกัดทาง server ด้วยครับ ตอนนี้ผมใช้ Server HDD SATA ธรรมดาด้วย database ของผมรวมๆ แล้วประมาณ 10GB ครับ
ส่วน code ก็มีข้อจำกัดครับคือผมแก้ไม่ได้ ระบบเว็บก็มีข้อจำกัดคือไม่ต้องการ cache ครับ จากที่ลองใช้ mytop ดูก็เห็น performance การทำงานของ mysql แล้วครับ คือมีการเรียกข้อมูลข้ามกันไปมา แต่แก้ code ไม่ได้เพราะโดน encode ไว้ผมก็เลยต้องทำใหม่

เอ้อ ที่ผมบอกเนี่ย อยากให้รู้ว่า มัน "ช้า" ที่อะไร

คุณเปลี่ยน software ไป เสียเวลามากมาย แล้วมันเป็นไปไม่ได้ที่เปลี่ยน engine ที่กระโดดแบบนี้แล้วจะไม่รื้อ code ใหม่ ..

ที่ผมต้องย้ำคือ มันมีปัญหา หรือไป ติดลิมิต ที่อะไรครับ

ถ้าทั้งหมดทั้งมวล มันไปติดที่ disk คุณก็สลับไป ssd ครับ .. จะช่วยได้ในระยะสั้นฮะ

อยากที่บอกครับ คุณต้อง list มาครับว่ามันไปติดที่ไหน แล้วก็มันเป็นไปไม่ได้ที่จะไม่รื้อ code

การที่จะ re-design infra พวกนี้ เค้าไม่ทำกันบ่อยๆครับ แล้วการที่จะ design ให้มัน scalable เนี่ย มันไม่ใช่เล่นๆนะครับ ปรับฝ่ายเดียวไม่มีทางได้

ผมย้ำเสมอครับ ก่อนจะปรับปรุงอะไร นึกถึง W ไว้ให้ขึ้นใจครับ What and Why
[direct=https://bangmod.cloud/wordpress-hosting/]Wordpress Hosting

[/direct]
[direct=https://bangmod.cloud/wordpress-hosting/]Wordpress Hosting[/direct] เริ่มต้นปีละ 790 บาท NVMe SSD เร็ว 9000MB/s เร็วกว่านี้ไม่มีอีกแล้ว
[direct=https://bangmod.cloud/cloud-server]Cloud Server[/direct] เริ่มต้นเพียงเดือนละ 159 บาท พร้อมใช้ภายใน 1 นาที ผ่านระบบอัตโนมัติมีทั้ง Linux / Windows / DirectAdmin
สอบถามข้อมูลและแจ้งปัญหา 02-105-4417 ตลอด 24 ชั่วโมง

tdelphi

ทุก dbms จูนได้หมดนะครับ ขึ้นอยู่กับว่า คุณลงทุนพอหรือเปล่า

ผมยกตัวอย่างว่า มันมีค่าใช้จ่าย (Cost) ในการซื้อ License Software แพงๆ (Oracle, DB2, MSSQL) หรือ Human Cost ในการ convert ระบบใหม่ + MA (พวก NoSQL DBMS)

ในแง่ของการใช้ MySQL บางที cost เหล่านี้ เอามาซื้อ H/W ใหม่ที่แรงขึ้น โดยเฉพาะ IO Read/Write แรงๆ  ตรงนี้ช่วยได้มาก อาจจะจบง่ายกว่า

ตัว MySQL ยังมี Solution ระดับ Advanced ไปถึงการแยก Master/Slave สำหรับแยกการ Write/Read ออกจากกัน หรือขยายไปทำ MySQL Cluster ได้อีก  (แต่แบบนี้ก็มีค่า Human Cost + MA ในการจ้างทำเช่นกัน)

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

หรือ ยังไม่ได้ทำ Index Optmization  (ดูจาก Slow Log)

สุดท้ายแล้ว จ้างมือเก่งๆ ไปดูปัญหาก่อนครับ ว่าควรจะปรับแนวไหน ให้กระทบ code น้อยที่สุด หรือว่าต้องปรับเปลี่ยนระบบใหม่ 

MapTwoZa

หรือถ้าอยากใช้ rdbms แบบที่ไม่ต้องทำ index ไม่ต้อง tune up ต่างๆ ก็เตรียมเงินค่า license ไว้ซัก 2 ล้าน กับ server แรงๆ ram เยอะๆ ไว้ซักตัว   :wanwan004:
Good code quality Developer :D

nuvatchai

ตอนนี้เปลี่ยนจาก MyISAM เป็น InnoDB แล้วครับ ขอบคุณทุกความเห็นนะครับ แต่ความต้องการของผมตั้งแต่ต้นก็เพื่อต้องการลด Cost ลงจาก (Dedicated server RAM 32GB CPU E3-1240 v3 HDD WD RE 1TB) ลงครับไม่อยากใช้แล้ว อยากไปใช้ Share host มากกว่าไม่ก็ VPS ครับ

ตามที่ท่าน iLhay พูด ผมคงไม่กลับไปรื้อ code ครับเพราะ script ถูก encode ไว้ อีกอย่าง script นั้น มันก็มี feature มากกว่าที่ผมใช้งานจริง ถ้าจะ Optimization โดยที่ Cost เพิ่มขึ้นหรือเท่าเดิม ขอทำใหม่ดีกว่าครับส่วนตัวงานนี้ไม่เหมาะกับ MySQL ครับถึงจะมีข้อดีหลายๆ ด้านนะครับ

ระบบและข้อมูลที่ผมใช้อยู่ไม่ได้สำคัญอะไรนะครับ แค่ต้องการให้มันสะดวก
- เข้าใช้งานได้รวดเร็ว
- สำรองข้อมูลง่าย เช่าถ้าใช่ SQLite ก็ copy ไปได้เลย
- โยกย้ายได้ง่าย เช่นเปลี่ยน Server คือ Copy & Past เลย


ปล. ไม่ใช่ระบบอลังกาลงานสร้าง แค่ต้องการความเห็นว่าอันไหนเหมาะกับงานนี้ และ MySQL ผมคงตัดออกจากงานนี้ครับ (ไม่ชอบเวลา backup ครับต้องเก็บ db ด้วย) แต่ไม่ได้ Anti MySQL นะครับ :)

icez

ถ้าใช้ mysql แล้วยังช้า อย่าไปใช้ sqlite ครับ เน่าหนักกว่าอีก
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

goodwide