การประมวลผลธุรกรรมออนไลน์
ในการประมวลผลธุรกรรมออนไลน์ ( OLTP ) โดยทั่วไประบบสารสนเทศจะอำนวยความสะดวกและจัดการแอปพลิเคชันที่เน้นธุรกรรม
คำว่า "ธุรกรรม" อาจมีความหมายที่แตกต่างกันสองความหมายซึ่งทั้งสองอย่างอาจใช้: ในขอบเขตของคอมพิวเตอร์หรือธุรกรรมฐานข้อมูลหมายถึงการเปลี่ยนแปลงของอะตอมในขณะที่ในขอบเขตของธุรกิจหรือการเงินคำนี้มักหมายถึงการแลกเปลี่ยนทางเศรษฐกิจ หน่วยงาน (ที่ใช้โดยเช่นการประมวลผลธุรกรรมสภาการปฏิบัติงานหรือการทำธุรกรรมการค้า . [1] ) : 50 OLTP อาจจะใช้การทำธุรกรรมของชนิดแรกที่จะบันทึกรายการที่สอง
นอกจากนี้ OLTP ยังถูกใช้เพื่ออ้างถึงการประมวลผลที่ระบบตอบสนองต่อคำขอของผู้ใช้ทันที เครื่องถอนเงินอัตโนมัติ (ATM) สำหรับธนาคารที่เป็นตัวอย่างของการประยุกต์ใช้การประมวลผลธุรกรรมเชิงพาณิชย์ แอปพลิเคชันการประมวลผลธุรกรรมออนไลน์มีทรูพุตสูงและมีการแทรกหรืออัพเดตมากในการจัดการฐานข้อมูล แอปพลิเคชันเหล่านี้ถูกใช้พร้อมกันโดยผู้ใช้หลายร้อยคน เป้าหมายหลักของแอปพลิเคชัน OLTP คือความพร้อมใช้งานความเร็วการทำงานพร้อมกันและความสามารถในการกู้คืน [2]เส้นทางกระดาษที่ลดลงและการคาดการณ์รายได้และค่าใช้จ่ายที่รวดเร็วและแม่นยำยิ่งขึ้นเป็นตัวอย่างของวิธีที่ OLTP ทำให้สิ่งต่างๆง่ายขึ้นสำหรับธุรกิจ อย่างไรก็ตามเช่นเดียวกับโซลูชันเทคโนโลยีสารสนเทศออนไลน์สมัยใหม่บางระบบจำเป็นต้องมีการบำรุงรักษาแบบออฟไลน์ซึ่งจะส่งผลต่อการวิเคราะห์ต้นทุนและผลประโยชน์ของระบบประมวลผลธุรกรรมออนไลน์
โดยทั่วไป OLTP จะตรงกันข้ามกับOLAP (การประมวลผลการวิเคราะห์ออนไลน์) ซึ่งโดยทั่วไปจะมีลักษณะการสืบค้นที่ซับซ้อนมากขึ้นในปริมาณที่น้อยลงเพื่อจุดประสงค์ทางธุรกิจอัจฉริยะหรือการรายงานแทนที่จะใช้ในการประมวลผลธุรกรรม ในขณะที่ระบบ OLTP ประมวลผลการสืบค้นทุกประเภท (อ่านแทรกอัปเดตและลบ) โดยทั่วไป OLAP ได้รับการปรับให้เหมาะสำหรับการอ่านอย่างเดียวและอาจไม่รองรับการสืบค้นประเภทอื่น ๆ ด้วยซ้ำ OLTP ยังทำงานที่แตกต่างจากการประมวลผลชุดและการคำนวณตาราง [1] : 15
นอกจากนี้ OLTP มักจะเปรียบเทียบกับ OLEP (การประมวลผลเหตุการณ์ออนไลน์) ซึ่งอิงตามบันทึกเหตุการณ์แบบกระจายเพื่อให้มีความสอดคล้องกันอย่างมากในระบบที่แตกต่างกันขนาดใหญ่ [3] ในขณะที่ OLTP เชื่อมโยงกับธุรกรรมปรมาณูสั้น ๆ OLEP ช่วยให้รูปแบบการกระจายที่ยืดหยุ่นมากขึ้นและความสามารถในการปรับขนาดที่สูงขึ้น แต่มีเวลาแฝงที่เพิ่มขึ้นและไม่รับประกันขอบเขตบนกับเวลาในการประมวลผล
ภาพรวม
ระบบ OLTP เป็นระบบประมวลผลข้อมูลที่สามารถเข้าถึงได้ในองค์กรปัจจุบัน ตัวอย่างบางส่วนของระบบ OLTP ได้แก่ การป้อนคำสั่งการขายปลีกและระบบธุรกรรมทางการเงิน [4]ระบบประมวลผลธุรกรรมออนไลน์ต้องการการสนับสนุนธุรกรรมที่ครอบคลุมเครือข่ายมากขึ้นและอาจรวม บริษัท มากกว่าหนึ่งแห่ง ด้วยเหตุนี้ซอฟต์แวร์ประมวลผลธุรกรรมออนไลน์สมัยใหม่จึงใช้การประมวลผลไคลเอนต์หรือเซิร์ฟเวอร์และซอฟต์แวร์นายหน้าซึ่งช่วยให้ธุรกรรมทำงานบนแพลตฟอร์มคอมพิวเตอร์ที่แตกต่างกันในเครือข่าย
ในแอปพลิเคชันขนาดใหญ่ OLTP ที่มีประสิทธิภาพอาจขึ้นอยู่กับซอฟต์แวร์การจัดการธุรกรรมที่ซับซ้อน (เช่นCICS ) และ / หรือกลยุทธ์การเพิ่มประสิทธิภาพฐานข้อมูลเพื่ออำนวยความสะดวกในการประมวลผลการอัปเดตพร้อมกันจำนวนมากไปยังฐานข้อมูลที่เน้น OLTP
สำหรับความต้องการมากยิ่งขึ้นระบบฐานข้อมูลกระจายอำนาจ OLTP โปรแกรมสภาวการณ์สามารถกระจายการประมวลผลการทำธุรกรรมระหว่างคอมพิวเตอร์หลายคนบนเครือข่าย OLTP มักจะถูกรวมเข้ากับสถาปัตยกรรมเชิงบริการ (SOA) และบริการเว็บ
การประมวลผลธุรกรรมออนไลน์ (OLTP) เกี่ยวข้องกับการรวบรวมข้อมูลอินพุตประมวลผลข้อมูลและอัปเดตข้อมูลที่มีอยู่เพื่อสะท้อนข้อมูลที่รวบรวมและประมวลผล ณ วันนี้องค์กรส่วนใหญ่ใช้ระบบจัดการฐานข้อมูลเพื่อรองรับ OLTP OLTP ถูกดำเนินการในระบบไคลเอนต์เซิร์ฟเวอร์
กระบวนการทำธุรกรรมออนไลน์เกี่ยวข้องกับภาวะพร้อมกันและปรมาณู การควบคุมการทำงานพร้อมกันรับประกันว่าผู้ใช้สองคนที่เข้าถึงข้อมูลเดียวกันในระบบฐานข้อมูลจะไม่สามารถเปลี่ยนแปลงข้อมูลนั้นได้หรือผู้ใช้ต้องรอจนกว่าผู้ใช้รายอื่นจะประมวลผลเสร็จสิ้นก่อนที่จะเปลี่ยนข้อมูลชิ้นนั้น Atomicity controls รับประกันว่าขั้นตอนทั้งหมดในธุรกรรมจะเสร็จสมบูรณ์เป็นกลุ่ม นั่นคือหากขั้นตอนใด ๆ ระหว่างธุรกรรมล้มเหลวขั้นตอนอื่น ๆ ทั้งหมดจะต้องล้มเหลวด้วย [5]
การออกแบบระบบ
ในการสร้างระบบ OLTP ผู้ออกแบบต้องทราบว่าผู้ใช้งานพร้อมกันจำนวนมากไม่รบกวนประสิทธิภาพของระบบ เพื่อเพิ่มประสิทธิภาพของระบบ OLTP ผู้ออกแบบต้องหลีกเลี่ยงการใช้ดัชนีและคลัสเตอร์มากเกินไป
องค์ประกอบต่อไปนี้มีความสำคัญอย่างยิ่งต่อประสิทธิภาพของระบบ OLTP: [2]
- ส่วนย้อนกลับ
- เซ็กเมนต์ย้อนกลับเป็นส่วนของฐานข้อมูลที่บันทึกการดำเนินการของธุรกรรมในกรณีที่ธุรกรรมถูกย้อนกลับ ส่วนการย้อนกลับให้ความสอดคล้องในการอ่านธุรกรรมย้อนกลับและการกู้คืนฐานข้อมูล [6]
- คลัสเตอร์
- คลัสเตอร์คือ สคีมาที่มีตารางอย่างน้อยหนึ่งตารางที่มีคอลัมน์อย่างน้อยหนึ่งคอลัมน์เหมือนกัน การทำคลัสเตอร์ตารางในฐานข้อมูลช่วยเพิ่มประสิทธิภาพของ การดำเนินการ เข้าร่วม [7]
- ธุรกรรมที่ไม่ต่อเนื่อง
- ธุรกรรมที่ไม่ต่อเนื่องจะเลื่อนการเปลี่ยนแปลงทั้งหมดไปยังข้อมูลจนกว่าธุรกรรมจะเสร็จสิ้น สามารถปรับปรุงประสิทธิภาพของธุรกรรมสั้น ๆ ที่ไม่กระจาย [8]
- ขนาดบล็อก
- ขนาดบล็อกข้อมูลควรเป็นขนาดบล็อกของระบบปฏิบัติการหลายขนาดภายในขีด จำกัด สูงสุดเพื่อหลีกเลี่ยง I / O ที่ไม่จำเป็น [9]
- ขนาดบัฟเฟอร์แคช
- คำสั่งSQLควรได้รับการปรับแต่งเพื่อใช้แคชบัฟเฟอร์ฐานข้อมูลเพื่อหลีกเลี่ยงการใช้ทรัพยากรที่ไม่จำเป็น [10]
- การจัดสรรพื้นที่แบบไดนามิกให้กับตารางและส่วนย้อนกลับ
- มอนิเตอร์การประมวลผลธุรกรรมและเซิร์ฟเวอร์แบบมัลติเธรด
- ตัวตรวจสอบการประมวลผลธุรกรรมใช้สำหรับการประสานงานบริการ เปรียบเสมือนระบบปฏิบัติการและทำงานร่วมกันในระดับความละเอียดสูงและสามารถครอบคลุมอุปกรณ์คอมพิวเตอร์หลายเครื่องได้ [11]
- พาร์ติชัน (ฐานข้อมูล)
- การใช้พาร์ติชันจะเพิ่มประสิทธิภาพสำหรับไซต์ที่มีธุรกรรมเป็นประจำในขณะที่ยังคงรักษาความพร้อมใช้งานและความปลอดภัย
- การปรับฐานข้อมูล
- ด้วยการปรับฐานข้อมูลระบบ OLTP สามารถเพิ่มประสิทธิภาพสูงสุดได้อย่างมีประสิทธิภาพและรวดเร็วที่สุด
อ้างอิง
- ^ a b Bog, Anja (2013). การเปรียบเทียบการทำธุรกรรมและการวิเคราะห์ระบบการประมวลผล: การสร้างเกณฑ์มาตรฐานภาระงานผสมและการประยุกต์ใช้ เบอร์ลิน: Springer Science & Business Media ISBN 3642380700.
- ^ ก ข "ลักษณะการทำงานของโปรแกรมประยุกต์และระบบ" . Oracle.com สืบค้นเมื่อ2018-05-02 .
- ^ "การประมวลผลกิจกรรมออนไลน์ - ACM คิว" que.acm.org . สืบค้นเมื่อ2019-05-30 .
- ^ "ฐานข้อมูล VLDB และคู่มือการแบ่งพาร์ติชัน" . Oracle.com สืบค้นเมื่อ2018-05-02 .
- ^ "ประมวลผลธุรกรรมออนไลน์สนับสนุนกับการตัดสินใจ" Microsoft.com สืบค้นเมื่อ2018-05-07 .
- ^ "การจัดการส่วนย้อนกลับ" Oracle.com สืบค้นเมื่อ2018-05-07 .
- ^ "คัดลอกเก็บ" สืบค้นจากต้นฉบับเมื่อ 2014-05-14 . สืบค้นเมื่อ2014-05-14 .CS1 maint: สำเนาที่เก็บถาวรเป็นหัวเรื่อง ( ลิงค์ )
- ^ "โหมดการทำธุรกรรม" . Oracle.com สืบค้นเมื่อ2018-05-07 .
- ^ "ข้อมูล Blocks, extents และกลุ่ม" Oracle.com สืบค้นเมื่อ2018-05-07 .
- ^ "การปรับแต่งแคชบัฟเฟอร์ฐานข้อมูล" . Oracle.com สืบค้นเมื่อ2018-05-07 .
- ^ "ตัวตรวจสอบการประมวลผลธุรกรรม" . C2.com สืบค้นเมื่อ2018-05-07 .
ลิงก์ภายนอก
- โครงการ H-Store (การเปลี่ยนแปลงทางสถาปัตยกรรมและแอปพลิเคชันที่มีผลต่อประสิทธิภาพของ OLTP)
- เว็บไซต์อย่างเป็นทางการของ IBM CICS
- สภาประสิทธิภาพการประมวลผลธุรกรรม
- สคีมา OLTP
- การประมวลผลธุรกรรม: แนวคิดและการจัดการเทคนิค