อยากทราบระยะเวลาที่ควรจะเป็น ของ Access ค่ะ
กระทู้เก่าบอร์ด อ.Yeadram

 2,169   5
URL.หัวข้อ / URL
อยากทราบระยะเวลาที่ควรจะเป็น ของ Access ค่ะ

ขอเรียนถามท่านผู้มีประสบการณ์ การใช้ Access ทุกท่านค่ะ ว่า ระยะเวลาในการใช้ Access นั้น ขนาดไหน จึงเรียกว่า ปกติ และขนาดไหนจึงเรียกว่า ช้าผิดปกติ
เช่น การเปิดฟอร์มหรือเปิดรายงานแต่ละหน้านั้น ควรใช้เวลาไม่เกินกี่วินาที

คือหนู อยากทราบว่า เขาดูหรือสังเกตจากตรงไหนกันบ้าง ว่า

" เนี่ย...มันเริ่มทำงานช้าผิดปกติแล้วนะ จะต้องรีบแก้หาสาเหตุ หรือถึงเวลาต้องขยับขยายไปใช้ฐานข้อมูลระบบอื่นได้แล้ว "

หนูจะได้นำมาเทียบเคียงกับโปรเจ็คที่หนูทำอยู่ ว่า มันยังอยู่ในเกณฑ์ปกติสบายดีอยู่หรือเปล่า แบบว่าจะได้ไม่อายเขาอะค่ะ

อีกอย่างก็คือ ขนาดของไฟล์แต่ละโปรเจ็ค นั้น ไม่ควรจะเกินกี่ MB. คะ

ขอบคุณค่ะ


5 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R05344
ถ้าไม่ติดเรื่องค่าใช้จ่ายในการขยับขยายไปใช้ฐานข้อมูลที่ใหญ่กว่าอย่าง MySQL, MS SQL, SQL Anywhere หรืออื่นๆ ก็แนะนำว่าให้เริ่มทำได้เลย เพราะยิ่งระบบเรายังเล็กเท่าไหร่ ก็จะยิ่งง่าย ถ้ารอให้ระบบใหญ่แล้ว การ upsizing จะยากขึ้นเรื่อยๆ นอกจากนี้ยังต้องพบปัญหาระหว่างการทำด้วย ยิ่งต้องใช้เวลาในการทดสอบและแก้ไขเพิ่มขึ้นไปอีก

ไฟล์ .mdb มีขนาดได้ไม่เกิน 2 GB แต่ขนาดของไฟล์ที่ใหญ่ขึ้นไม่ได้เป็นตัวบ่งบอกเสมอไปว่าจะทำให้ performance นั้นช้า มันขึ้นกับปัจจัยอื่นๆเยอะแยะ ระบบที่ลูกค้าผมใช้อยู่ตอนนี้มีไฟล์ใหญ่เกือบเต็ม 2 GB ทุกปีต้องทำการย้ายข้อมูลเก่าออก ก็จะทำให้ลดลงมาเหลือที่ 1.3 GB ซึ่งก็ไม่ได้ช้าอะไร ในกรณีที่แย่มากๆ เวลาเปิดฟอร์มที่มีเป็นเรคอร์ดเป็นหลายหมื่นเรคอร์ดก็ยังใช้เวลาไม่เกิน 10 วินาที โดยทฤษฏี(อะไรก็ไม่รู้จำไม่ได้แล้ว)เขาบอกว่าคนเราจะยอมรอได้ถ้าไม่เกิน 7 วินาที ถ้าช้ากว่านั้น มักจะบอกว่าช้าแล้ว แต่ก็ขึ้นกับประเภทงานด้วยนะครับ งานที่เป็น Real Time จริงๆ แค่รอ 2 วินาทีก็แย่แล้ว ดังนั้นควรมีการคุยกันแล้วกำหนดว่า ระบบงานที่ใช้อยู่นั้น แค่ไหนถึงเรียกว่า ยอมรับได้และทำได้จริงด้วย

ลองอ่าน http://www.granite.ab.ca/access/performancefaq.htm ดูครับ จะเห็นว่ามีเรื่องที่ต้องทำเพื่อปรับปรุงให้ระบบมันมี performance ที่ดีอยู่เยอะแยะมากเลย
2 @R05347
อ. แดน แนะนำว่าลอง design การจัดเก็บข้อมูล หรือ การเรียกดูข้อมูลแบบใหม่
หนูรบกวน อ. แดน ช่วยขยายความนิดนึงค่ะว่า แนวการออกแบบควรเป็นอย่างไร ควรระวังส่วนไหนบ้าง
text size หนูได้ fit ตามขนาดข้อมูลจริงอยู่แล้วค่ะ

ดูจาก อ. สันติสุข บอกว่า ถ้าไม่เกิน 7 วินาที ก็ยังไม่ถือว่าช้า
ค่อยสบายใจหน่อย เพราะโปรเจ็คที่หนูทำขณะนี้ ยังไม่เกิน 7 วินาทีค่ะ

ขอบคุณอาจารย์ทั้งสองค่ะ
3 @R07824
มีใครพอจะรู้มั้ยครับว่าAccessสามารถBack up ไฟล์ที่มีตารางเชื่อมโยงโดยที่ไฟล์ที่ Back up ไปแล้วในส่วนของตารางเชื่อมโยงจะต้องหยุดรับข้อมูล

หรือไม่ก็พอจะมีวิธีให้Access Save เป็นไฟล์ใหม่ได้หรือไม่ครับ

ที่ต้องการแบบนี้เพราะงานที่ผมทำมันเก็บข้อมูลทุกวินาทีเลยทีเดียว

อีกอย่างนึงผมไม่ค่อยมีความรู้เกี่ยวกับเรื่องฐานข้อมูลซักเท่าไหร่เลย

ตอนนี้ตารางผมมีล้านกว่าRecordแล้วอ่าครับ แต่เวลาเปิดก็ไม่ได้ช้าอารายนะคับ

จะช้านิดหน่อยก็ตอนเปิดรายงานเนี่ยแหล่ะประมาน5วิ เพราะมี6หมื่นกว่าหน้าแหน่ะ
4 @R07858
Access ไม่มีคุณสมบัติในการทำ On-Line Backup ครับ   แต่ไม่ได้หมายถึงเขาจะป้องกันการก๊อปปี้ไฟล์ แต่การก๊อปปี้ไประหว่างการใช้งานจะทำให้ได้ชุดก๊อปปี้ที่มีข้อมูลไม่ถูกต้อง ยัง
ไงก็ต้องหยุดใช้งานถึงจะก๊อปปี้ไฟล์ไปเป็นชุดแบ็คอัพครับ แต่ฐานข้อมูลถูกใช้งานตลอด 24 เลยหรือ ปกติก็คือสั่งทำชุดแบ็คอัพตอนกลางคืนเมื่อไม่มีคนใช้งาน โดยเขียน batch command หรือ script ภาษาอะไรก็ได้ที่คุณถนัด แล้วตั้งเวลาเป็น Scheduling Task ด้วยระบบ Windows เอง ผมแนะนำว่า batch command ที่เขียนนั้นให้ Rename ชื่อฐานข้อมูลหรือชื่อโฟลเดอร์ที่ฐานข้อมูลอยู่นั้นไปเลยก่อนการแบ็คอัพ เพราะถ้าทำได้ก็แปลว่าไม่มีใครใช้ฐานข้อมูลอยู่ และเป็นการป้องกันไม่ให้ใครมาใช้ระหว่างการแบ็คอัพด้วย เมื่อแบ็คอัพเสร็จแล้วค่อย Rename ชื่อกลับครับ

แต่ถ้าถูกใช้งาน 24 ชม.เลย ก็ต้องเขียนโปรแกรมให้ก๊อปปี้เทเบิลต่างๆไปไว้ในแบ๊คอัพไฟล์เอาเอง โดยเลือกเฉพาะเรคอร์ดที่คุณคิดว่านิ่งแล้ว เช่น เรคอร์ดทั้งหมดจนถึงข้อมูลของเมื่อวาน เป็นต้น เมื่อก๊อปปี้หมดแล้ว คุณก็เก็บชุดแบ็คอัพไฟล์ไว้ที่ปลอดภัยครับ
5 @R08024
วิธี1
ตารางที่คุณเชื่อมมาน่าจะเป็น Table ที่เป็นการลิงค์นะครับ และถ้าแชร์กันในหลายๆ เครื่องในวงแลนด้วยยิ่งช้าไปใหญ่ วิธีแก้คือ สร้างตารางที่เป้นตารางที่ไม่ลิงค์
แล้วโยนข้อมูลเข้าใส่ตารางที่ไม่ได้ลิงค์ แต่ก็ไม่ควรใช้กับตารางที่ต้องเชื่อมกับฐานข้อมูลตลอดเวลา หรือข้อมูลที่มีการเคลื่อนไหวบ่อยๆ เวลาใช้ก็เขียน Macro อับเดทตอนเริ่มใช้โปรแกรม จะช่วยให้เร็วขึ้นได้

วิธีที่ 2
1. Database ที่ sql Server (ไม่ใช่ Express นะ)
2. สร้าง odbc ของ sql Server (รายละเอียดหาในเว็บ)
3. ทำการ upsizesing ที่เมนู Tool > upsizing แบบ Link กับ sql Server
    มันจะแปลง Data ไปอยู่ใน sql Server ทันที เหมือนสร้าง Table ใน sql Server
    แต่ใช้ Access เป็นหน้ากาก
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.3136s