ฟังก์ชัน DBMS หลัก
ฟังก์ชัน DBMS หลัก

วีดีโอ: ฟังก์ชัน DBMS หลัก

วีดีโอ: ฟังก์ชัน DBMS หลัก
วีดีโอ: เอาอะไรไปโกรธเธอ - SOLOIST【Official Audio】 2024, อาจ
Anonim

ระบบจัดการฐานข้อมูลสมัยใหม่ถูกใช้ในหลายๆ ไซต์ แต่ทุกคนไม่ทราบว่าระบบเหล่านี้คืออะไร และคุณจะใช้งานฟังก์ชันของ DBMS ได้อย่างไร เครื่องมือดังกล่าวมีความเป็นไปได้มากมาย ดังนั้นหากต้องการใช้งานอย่างเต็มที่ คุณควรทำความเข้าใจว่าสามารถทำอะไรได้บ้างและมีประโยชน์ต่อผู้ใช้อย่างไร

การจัดการข้อมูล

ก่อนอื่น หน้าที่ของ DBMS รวมถึงการประมวลผลข้อมูลในหน่วยความจำภายนอก และฟังก์ชันนี้เพื่อให้โครงสร้างพื้นฐานของ VI ซึ่งจำเป็นไม่เพียงแต่เพื่อเก็บข้อมูลที่รวมอยู่ในฐานข้อมูลโดยตรง แต่ยัง เพื่อดำเนินการบริการต่าง ๆ เช่น การเข้าถึงไฟล์ใด ๆ ในกรณีต่าง ๆ อย่างรวดเร็ว ในการปรับเปลี่ยนบางอย่าง ความสามารถของระบบไฟล์ต่างๆ จะถูกใช้งานอย่างแข็งขัน ในขณะที่ส่วนอื่นๆ มีไว้สำหรับการทำงานแม้ในระดับอุปกรณ์หน่วยความจำภายนอก แต่ในกรณีนี้ เป็นที่น่าสังเกตว่าในหน้าที่ของ DBMS ที่พัฒนาอย่างสูง ผู้ใช้จะไม่ได้รับแจ้งว่าใช้ระบบใดในกรณีใด และถ้าเป็นเช่นนั้น จะจัดไฟล์อย่างไร โดยเฉพาะอย่างยิ่ง ระบบรักษาลำดับการตั้งชื่อของตัวเองสำหรับอ็อบเจ็กต์ที่รวมอยู่ในฐานข้อมูล

ฟังก์ชั่นย่อย
ฟังก์ชั่นย่อย

การจัดการบัฟเฟอร์แรม

ในกรณีส่วนใหญ่ เป็นเรื่องปกติที่จะใช้ฟังก์ชัน DBMS ในฐานข้อมูลที่ค่อนข้างใหญ่ และขนาดนี้อย่างน้อยก็มักจะใหญ่กว่า RAM ที่มีอยู่มาก แน่นอน ถ้าในกรณีของการเข้าถึงแต่ละองค์ประกอบข้อมูล ทำการแลกเปลี่ยนกับหน่วยความจำภายนอก ความเร็วของส่วนหลังจะสอดคล้องกับความเร็วของระบบเอง ดังนั้น ทางเลือกเดียวสำหรับการเพิ่มจริง ๆ ก็คือการบัฟเฟอร์ ข้อมูลในแรม ยิ่งไปกว่านั้น แม้ว่า OS จะทำบัฟเฟอร์ทั้งระบบ เช่น UNIX ก็ไม่เพียงพอที่จะทำให้ DBMS มีจุดประสงค์และฟังก์ชันพื้นฐาน เนื่องจากมีข้อมูลจำนวนมากขึ้นมากเกี่ยวกับคุณสมบัติที่เป็นประโยชน์ของการบัฟเฟอร์สำหรับแต่ละรายการ เฉพาะส่วนของฐานข้อมูลที่ใช้ ด้วยเหตุนี้ ระบบขั้นสูงจึงรักษาชุดบัฟเฟอร์ของตนเอง ตลอดจนระเบียบวินัยเฉพาะสำหรับการแทนที่

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

การจัดการธุรกรรม

ธุรกรรมคือลำดับของการดำเนินการกับฐานข้อมูลที่ใช้ ซึ่งระบบการจัดการถือว่าเป็นทั้งหมดเดียว หากการทำธุรกรรมสำเร็จอย่างสมบูรณ์ ระบบจะแก้ไขการเปลี่ยนแปลงที่เกิดขึ้นในหน่วยความจำภายนอก มิฉะนั้นการเปลี่ยนแปลงจะไม่ส่งผลต่อสถานะของฐานข้อมูล การดำเนินการนี้จำเป็นเพื่อรักษาความสมบูรณ์เชิงตรรกะของฐานข้อมูลที่ใช้ เป็นที่น่าสังเกตว่าการรักษากลไกการทำธุรกรรมที่ถูกต้องเป็นข้อกำหนดเบื้องต้นแม้ว่าจะใช้ DBMS แบบผู้ใช้คนเดียวก็ตาม จุดประสงค์และหน้าที่แตกต่างจากระบบประเภทอื่นๆ อย่างมาก

หน้าที่หลักของ subd
หน้าที่หลักของ subd

คุณสมบัติที่ธุรกรรมใด ๆ เริ่มต้นก็ต่อเมื่อฐานข้อมูลอยู่ในสถานะที่สอดคล้องกันและปล่อยให้อยู่ในสถานะเดียวกันหลังจากสิ้นสุดขั้นตอน ทำให้สะดวกมากที่จะใช้เป็นหน่วยของกิจกรรมเกี่ยวกับฐานข้อมูล ด้วยการจัดการที่เหมาะสมของการทำธุรกรรมพร้อมกันโดยระบบควบคุม โดยหลักการแล้วผู้ใช้แต่ละคนสามารถรู้สึกเหมือนเป็นส่วนหนึ่งของทั้งหมด อย่างไรก็ตาม นี่เป็นการเป็นตัวแทนในอุดมคติในระดับหนึ่ง เนื่องจากในหลาย ๆ สถานการณ์ที่คนทำงานจะยังคงรู้สึกว่ามีเพื่อนร่วมงานอยู่หากพวกเขาใช้ระบบที่มีผู้ใช้หลายคน แต่จริงๆ แล้วสิ่งนี้มีให้โดยแนวคิดของ DBMS. คุณสมบัติของ DBMS ประเภทผู้ใช้หลายคนยังเกี่ยวข้องกับแนวคิดต่างๆ เช่น แผนการดำเนินการแบบอนุกรมและการทำให้เป็นอนุกรมกับการจัดการธุรกรรม

มันหมายความว่ายังไง

การทำให้เป็นอนุกรมของธุรกรรมที่ดำเนินไปพร้อม ๆ กัน จัดให้มีการสร้างแผนพิเศษสำหรับการทำงานของพวกเขาซึ่งในผลรวมของส่วนผสมที่ได้นั้นเทียบเท่ากับผลลัพธ์ที่ได้จากการดำเนินการตามลำดับ

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

จำนวนฟังก์ชันย่อยพื้นฐาน
จำนวนฟังก์ชันย่อยพื้นฐาน

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

วารสาร

ข้อกำหนดหลักประการหนึ่งสำหรับระบบสมัยใหม่คือการตรวจสอบความน่าเชื่อถือของการจัดเก็บข้อมูลในหน่วยความจำภายนอก โดยเฉพาะอย่างยิ่ง สิ่งนี้ระบุว่าหน้าที่หลักของ DBMS รวมถึงความสามารถในการกู้คืนข้อมูลที่ตกลงไว้ล่าสุดสถานะของฐานข้อมูลหลังจากเกิดความล้มเหลวของซอฟต์แวร์หรือฮาร์ดแวร์ ในกรณีส่วนใหญ่ เป็นเรื่องปกติที่จะต้องพิจารณาสองตัวเลือกสำหรับความล้มเหลวของฮาร์ดแวร์:

  • soft ซึ่งสามารถตีความได้ว่าเป็นการปิดคอมพิวเตอร์โดยไม่คาดคิด (กรณีทั่วไปที่สุดคือไฟดับฉุกเฉิน);
  • ยาก ซึ่งมีลักษณะการสูญเสียข้อมูลบางส่วนหรือทั้งหมดที่เก็บอยู่บนสื่อภายนอก

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

วัตถุประสงค์ย่อยและหน้าที่หลัก
วัตถุประสงค์ย่อยและหน้าที่หลัก

แน่นอน ไม่ว่าในกรณีใด ในการที่จะกู้คืนฐานข้อมูลตามปกติ คุณต้องมีข้อมูลเพิ่มเติมจำนวนหนึ่ง กล่าวอีกนัยหนึ่งสำหรับการบำรุงรักษาความน่าเชื่อถือของการจัดเก็บข้อมูลในฐานข้อมูลตามปกติ จำเป็นต้องตรวจสอบให้แน่ใจว่าการจัดเก็บข้อมูลมีความซ้ำซ้อน และส่วนของข้อมูลที่ใช้ระหว่างการกู้คืนจะต้องได้รับการปกป้องอย่างระมัดระวังเป็นพิเศษ วิธีทั่วไปในการรักษาข้อมูลที่ซ้ำซ้อนนี้คือการบันทึกการเปลี่ยนแปลง

คืออะไรและใช้อย่างไร

บันทึกเป็นส่วนพิเศษของฐานข้อมูล การเข้าถึงซึ่งไม่รวมอยู่ในจำนวนฟังก์ชัน DBMS และได้รับการสนับสนุนอย่างระมัดระวัง ในบางสถานการณ์ มันยังให้การสนับสนุนสำเนาบันทึกสองชุดพร้อมๆ กัน ซึ่งอยู่บนสื่อบันทึกที่แตกต่างกัน ที่เก็บเหล่านี้ได้รับข้อมูลเกี่ยวกับการเปลี่ยนแปลงใดๆ ที่เกิดขึ้นในส่วนหลักของฐานข้อมูล และในระบบการจัดการต่างๆ การเปลี่ยนแปลงสามารถบันทึกได้ในระดับต่างๆ ในบางสถานการณ์ รายการบันทึกจะสอดคล้องกับการดำเนินการอัปเดตทางลอจิคัลที่เฉพาะเจาะจงอย่างสมบูรณ์ ในอีกกรณีหนึ่ง ซึ่งเป็นการดำเนินการภายในน้อยที่สุดที่เกี่ยวข้องกับการอัปเดตหน้าหน่วยความจำภายนอก ในขณะที่ DBMS บางตัวจัดเตรียมไว้สำหรับทั้งสองวิธีร่วมกัน

ไม่ว่าในกรณีใด กลยุทธ์การบันทึกที่เรียกว่า "เขียนล่วงหน้า" ถูกนำมาใช้ เมื่อนำไปใช้ เร็กคอร์ดที่ระบุการเปลี่ยนแปลงในออบเจ็กต์ฐานข้อมูลจะเข้าสู่หน่วยความจำบันทึกภายนอกก่อนที่อ็อบเจ็กต์จะถูกเปลี่ยน เป็นที่ทราบกันดีว่าหากฟังก์ชันของ Access DBMS จัดให้มีการใช้งานโปรโตคอลนี้ตามปกติ การใช้บันทึกจะช่วยแก้ปัญหาที่เกี่ยวข้องกับการกู้คืนฐานข้อมูลในกรณีที่เกิดความล้มเหลวใดๆ

ย้อนกลับ

สถานการณ์การกู้คืนที่ง่ายที่สุดคือการย้อนกลับธุรกรรมแต่ละรายการ สำหรับขั้นตอนนี้ คุณไม่จำเป็นต้องใช้บันทึกการเปลี่ยนแปลงทั้งระบบ และค่อนข้างเพียงพอแล้วที่จะใช้บันทึกการดำเนินการแก้ไขเฉพาะที่สำหรับแต่ละธุรกรรม จากนั้นย้อนกลับธุรกรรมโดยดำเนินการย้อนกลับ โดยเริ่มจากจุดสิ้นสุดของแต่ละ บันทึก โครงสร้างของฟังก์ชัน DBMS มักจะมีให้การใช้โครงสร้างดังกล่าว แต่ในกรณีส่วนใหญ่ บันทึกในเครื่องยังไม่ได้รับการสนับสนุน และการย้อนกลับแต่ละรายการจะดำเนินการตามธุรกรรมทั้งระบบ และด้วยเหตุนี้ บันทึกทั้งหมดของแต่ละธุรกรรมจึงถูกรวมเข้าด้วยกัน ในรายการย้อนกลับ

แนวคิดของฟังก์ชัน subd subd
แนวคิดของฟังก์ชัน subd subd

ในระหว่างที่ซอฟต์ล้มเหลว หน่วยความจำภายนอกของฐานข้อมูลอาจรวมถึงอ็อบเจ็กต์ต่างๆ ที่ได้รับการแก้ไขโดยธุรกรรมที่ยังไม่เสร็จสมบูรณ์ในขณะที่เกิดความล้มเหลว และอาจขาดอ็อบเจ็กต์ต่างๆ ที่อัปเกรดโดยผู้ที่ทำสำเร็จสำเร็จแล้ว ก่อนที่ความล้มเหลวในการใช้บัฟเฟอร์ของ RAM เนื้อหาจะหายไปอย่างสมบูรณ์เมื่อเกิดปัญหาดังกล่าว หากปฏิบัติตามโปรโตคอลเพื่อใช้บันทึกในเครื่อง อาจมีรายการในหน่วยความจำภายนอกที่เกี่ยวข้องกับการแก้ไขวัตถุดังกล่าว

เป้าหมายหลักของขั้นตอนการกู้คืนหลังจากเกิดความล้มเหลวของซอฟต์คือสถานะของหน่วยความจำภายนอกของฐานข้อมูลหลัก ซึ่งจะเกิดขึ้นหากการเปลี่ยนแปลงธุรกรรมที่เสร็จสมบูรณ์เกิดขึ้นใน VI และจะไม่มีร่องรอย ของขั้นตอนที่ยังไม่เสร็จ เพื่อให้บรรลุผลนี้ หน้าที่หลักของ DBMS ในกรณีนี้คือการย้อนกลับของธุรกรรมที่ไม่สมบูรณ์และการเล่นซ้ำของการดำเนินการเหล่านั้นซึ่งผลลัพธ์จะไม่แสดงในหน่วยความจำภายนอกในท้ายที่สุด กระบวนการนี้เกี่ยวข้องกับรายละเอียดปลีกย่อยจำนวนมาก ซึ่งส่วนใหญ่เกี่ยวข้องกับการจัดการบันทึกและการจัดการบัฟเฟอร์

ความล้มเหลวยาก

เมื่อจำเป็นต้องกู้คืนฐานข้อมูลหลังจากเกิดความล้มเหลวอย่างหนัก ไม่เพียงแต่จะใช้บันทึกเท่านั้น แต่ยังเป็นสำเนาสำรองของฐานข้อมูลด้วย หลังเป็นสำเนาที่สมบูรณ์ของฐานข้อมูลเมื่อถึงเวลาเริ่มการกรอกบันทึก แน่นอนสำหรับขั้นตอนการกู้คืนปกติจำเป็นต้องมีการเก็บรักษาวารสารไว้ดังนั้นตามที่กล่าวไว้ก่อนหน้านี้ข้อกำหนดที่ร้ายแรงอย่างยิ่งต่อการเก็บรักษาไว้ในหน่วยความจำภายนอก ในกรณีนี้ การกู้คืนฐานข้อมูลประกอบด้วยข้อเท็จจริงที่ว่า บันทึกจะสร้างธุรกรรมทั้งหมดที่เสร็จสมบูรณ์ตามเวลาที่เกิดความล้มเหลวตามสำเนาที่เก็บถาวร หากจำเป็น ก็สามารถเล่นซ้ำธุรกรรมที่ค้างอยู่และดำเนินการดำเนินการตามปกติได้หลังจากสิ้นสุดกระบวนการกู้คืน แต่ในระบบจริงส่วนใหญ่ ขั้นตอนนี้จะไม่ดำเนินการเนื่องจากการกู้คืนจากความล้มเหลวอย่างหนักนั้นเป็นขั้นตอนที่ค่อนข้างยาว

รองรับภาษา

ฐานข้อมูลสมัยใหม่ใช้ภาษาที่หลากหลาย และ DBMS รุ่นแรกๆ ซึ่งมีจุดประสงค์ ฟังก์ชัน และคุณลักษณะอื่นๆ แตกต่างอย่างมากจากระบบสมัยใหม่ ได้ให้การสนับสนุนภาษาเฉพาะทางระดับสูงหลายภาษา โดยพื้นฐานแล้ว สิ่งเหล่านี้คือ SDL และ DML ที่ออกแบบมาเพื่อกำหนดสคีมาฐานข้อมูลและจัดการข้อมูลตามลำดับ

โครงสร้างฟังก์ชันย่อย
โครงสร้างฟังก์ชันย่อย

SDL ถูกใช้เพื่อกำหนดโครงสร้างเชิงตรรกะของฐานข้อมูล นั่นคือ เพื่อรับรู้โครงสร้างเฉพาะของฐานข้อมูลซึ่งแสดงผู้ใช้ ในทางกลับกัน DML ได้รวมเอาความซับซ้อนของตัวดำเนินการจัดการข้อมูลทั้งหมดที่อนุญาตให้คุณป้อนข้อมูลลงในฐานข้อมูล ตลอดจนลบ แก้ไข หรือใช้ข้อมูลที่มีอยู่

ฟังก์ชัน DBMS ประกอบด้วยการสนับสนุนประเภทต่างๆ สำหรับภาษาเดียวที่รวมเข้าด้วยกัน ซึ่งจัดให้มีวิธีการใดๆ ที่จำเป็นสำหรับการทำงานปกติกับฐานข้อมูล เริ่มจากการสร้างครั้งแรก และจัดเตรียมอินเทอร์เฟซผู้ใช้มาตรฐาน SQL ถูกใช้เป็นภาษามาตรฐานที่ให้ฟังก์ชันพื้นฐานของ DBMS ของระบบเชิงสัมพันธ์ทั่วไปในปัจจุบัน

อะไรนะ

ก่อนอื่น ภาษานี้รวมฟังก์ชันหลักของ DML และ SDL นั่นคือ ให้ความสามารถในการกำหนดความหมายเฉพาะของฐานข้อมูลเชิงสัมพันธ์และจัดการข้อมูลที่จำเป็น ในเวลาเดียวกัน การตั้งชื่ออ็อบเจ็กต์ฐานข้อมูลต่างๆ ได้รับการสนับสนุนโดยตรงที่ระดับภาษา ในแง่ที่ว่าคอมไพเลอร์แปลงชื่ออ็อบเจ็กต์เป็นตัวระบุภายใน ตามตารางแค็ตตาล็อกบริการที่ได้รับการดูแลเป็นพิเศษ โดยหลักการแล้ว แกนหลักของระบบควบคุมจะไม่โต้ตอบกับตารางหรือแต่ละคอลัมน์แต่อย่างใด

ไม่รวมอยู่ในหน้าที่หลักของ subd
ไม่รวมอยู่ในหน้าที่หลักของ subd

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

แนะนำ:

ตัวเลือกของบรรณาธิการ

ความช่วยเหลือทางการเงินถูกเก็บภาษี: ข้อบังคับทางกฎหมายและกฎหมาย

เหตุผลและขั้นตอนในการแก้ไขรหัสภาษีของสหพันธรัฐรัสเซีย

ภาษีเกษียณ: ประเภท สิทธิประโยชน์ทางภาษี และคำแนะนำจากผู้เชี่ยวชาญ

สิทธิประโยชน์ทางภาษีสำหรับคนพิการ: กฎการอนุญาต เอกสารที่จำเป็น กฎหมาย

การชำระอากรศุลกากร: วิธีการและการคำนวณจำนวนเงิน

ฟังก์ชั่นการควบคุมภาษี: คำอธิบายและตัวอย่าง

การลงทะเบียนหลังจากได้รับ TRP: รายการเอกสาร, ขั้นตอนสำหรับขั้นตอน, เงื่อนไข

ฉันจะเปลี่ยนเป็น UTII ได้เมื่อใด: ขั้นตอน ข้อกำหนด คุณสมบัติ

ภาษีศุลกากรและภาษีศุลกากร: ชนิด คำอธิบาย การคำนวณ และขั้นตอนทางบัญชี

ผู้ประกอบการรายบุคคลรายงานต่อสำนักงานสรรพากรอย่างไร การรายงานภาษีของผู้ประกอบการแต่ละราย

ยื่นผลการตรวจสอบภาษี: ประเภท ขั้นตอน และข้อกำหนด

วิธีรับเงินคืน 13 เปอร์เซ็นต์ของการซื้อรถด้วยเครดิต: ตัวเลือกหลักและวิธีประหยัด

ประเภทของภาษีและสิทธิประโยชน์ทางภาษี: แนวคิด การแบ่งประเภท และเงื่อนไขในการได้รับ

ใครสามารถใช้ UTII ได้บ้าง: ตัวอย่างการคำนวณภาษี

ภาษีที่ดิน: สูตรคำนวณ เงื่อนไขการชำระเงิน ผลประโยชน์