วันเสาร์ที่ 11 สิงหาคม พ.ศ. 2555

#10 Oracle application development


Oracle version 1 : จุดกำเนิดของ Oracle 
ในปี ค.ศ. 1977 Larry Ellison , Bob Miner , และ Ed Oates ได้จัดตั้ง Software Development Laboratories ( ซึ่งต่อมา ได้เปลี่ยนชื่อเป็น “Oracle”) เพื่อพัฒนาระบบงานที่ได้รับ contract อยู่ หลังจากที่ได้อ่าน paper ที่เขียนโดย Dr. Codd ใน “IBM Journal of Research and Development” แล้ว เห็นโอกาสในอนาคต จึงทำการพัฒนา ฐานข้อมูล SQL relational database เพื่อการค้า เป็นเจ้าแรก พวกเขาได้เรียกชื่อ ฐานข้อมูลของพวกเขาว่า “Oracle” ตาม code name ของ โปรเจ็คที่ได้รับเงินทุนสนับสนุนจาก CIA ที่พวกเขาร่วมงานด้วยอยู่ ทว่า version แรก นี้ ไม่ได้ปล่อย release ออกมา  

Oracle version 2 : Oracle Database ตัวแรก 
Oracle version 2 นี้ เป็น commercial relational database เป็น database ที่ใช้ ภาษา SQL ในตลาดฐานข้อมูลเป็นเจ้าแรก 

Oracle version 3 : Portable Oracle Database 
Portability (ความสามารถในการติดตั้งโดยไม่ขึ้นกับ platform) เป็นความต้องการที่สำคัญของลูกค้า เพราะ สามารถ เลือกที่จะ ติดตั้งบน Hardware และ Operation System platform ที่ลูกค้าต้องการได้ เพื่อที่จะให้ database สามารถ portable ได้ จึงเขียนโค้ดใหม่ด้วยภาษ C เพื่อให้ database หน้าตาเหมือนกันไม่ว่าจะ run บน platform ไหน

Oracle version 4 : The Reliable Oracle Database 
Version 4 ของ Oracle RDBMS ได้ใส่ความคิดที่สำคัญ เกี่ยวกับ concurrency control คือ multiversion read consistency ที่ทำให้ user ผู้อ่าน data กับ ผู้เขียน data สามารถไป access data เดียวกันได้ โดย ไม่มีการ บล็อก ซึ่งกันและกัน นั่นหมายความว่า user สามารถเรียกดู data ได้โดยไม่ต้องไปกังวลกับ ข้อมูลที่ยังไม่ได้ commit (dirty data)
Multiversion Read Consistency ไม่เพียงแต่จะให้ throughput ที่สูง แต่ยังทำให้การเขียน application ง่ายขึ้น เพราะไม่ต้องไปกังวล กับการเกิด deadlock และ ไม่ต้องไปติดกับข้อจำกัดของ system เพราะ oracle จะจัดการให้ transaction มี performance ที่ดี และ ข้อมูลมีความสอดคล้อง (data consistency) โดยอัตโนมัติ 

Oracle version 5 : the distributed Oracle Database
เริ่มสนับสนุนสถาปัตยกรรมแบบ client/server และเริ่มสนับสนุน distributed database 

Oracle version 6 : the scalable Oracle Database 
Oracle RDBMS version 6 เป็นการ redesigned database โดย เขียนโค้ดใหม่ เพื่อตอบสนองต่อ disk I/O, concurrency control, scalability, และ backup&recovery ที่จะทำให้ระบบ สามารถขยายขนาด (scalable) ได้ และ มีความสามารถใช้งานได้ตลอดเวลา (high availability)

Oracle version 7 : the programmable Oracle Database 
Oracle 7 เป็น release ที่สามารถฝัง stored procedure ที่เขียนด้วย PL/SQL ซึ่งถูกออกแบบ สำหรับสภาพแวดล้อม ที่ซับซ้อน และ มี scale ที่ใหญ่ เสริมด้วย database trigger ที่ implement ให้ทำงานได้เมื่อเกิดเหตุการณ์ insert, update, และ delete เพื่อสนับสนุน business rule.
นอกจาก นี้ Oracle 7 ยังสามารถ implemented distributed transaction management ทำให้สามารถ update กระจายพร้อมกันหลาย database ได้ 

Oracle version 8 : the all-your-data Oracle Database
เพื่อที่จะสามารถ รองรับข้อมูลจำนวนมหาศาล เช่น text, รูปภาพ,ข้อมูลทางการแพทย์,ข้อมูลด้านแผนที่   Oracle version 8 ได้มีการแบ่งซอยข้อมูล เป็น partition เมื่อจัดการกับตารางที่มีขนาดใหญ่มากๆ  Oracle 8 มีจุดมุ่งหมาย สองประการ คือ ต้องการปรับปรุง infrastructure ที่สนับสนุนฐานข้อมูล ที่มีขนาดใหญ่มากๆ เพื่อที่จะ เป็นจุดแข็งในธุรกิจ data warehouse และ ต้องการเพิ่มความจุของ database ดังนั้น Partitioning เป็น key technology ที่ จะทำให้องค์กร สามารถเก็บข้อมูลปริมาณมหาศาลใน oracle database 

Oracle version 8i : the internet Oracle Database 
oracle 8i ได้พัฒนาให้ มีความสามรถ รองรับการขยายขนาดได้มากขึ้น และ สนับสนุน internet protocols  Oracle 8i database สามารถ run บนสถาปัตยกรรม แบบ multitier ซึ่ง internet ก็ถูกออกแบบให้เป็นเช่นนั้น และยังใช้ภาษา java เป็น database engine 

Oracle version 9i : the extended Oracle Database 
Oracle 9i database ได้มี Oracle Real Application Clusters (Oracle RAC) ออกมาใน release 2 เพื่อให้เครื่อง server หลายตัว สามารถติดต่อ database ตัวเดียวกันพร้อมๆกันได้ ทำให้มีความสามารถ scalability และ high availability
นอกจากนี้ oracle 9i database ยังเพิ่ม Oracle XML database (Oracle XML DB) ซึ่งทำให้สามารถจัดเก็บ และ query เอกสาร XML ใน database ได้ 

Oracle Database 10g : the grid computing database
Grid Computing เป็นการทำให้ resource เช่น storage , database server , application server เป็นแบบ virtualization ซึ่งทำให้องค์กร สามารถจัดการหลายๆ node ได้ง่าย เหมือนมีแค่หนึ่ง node ดังนั้น workload สามารถ ย้าย จากที่หนึ่ง ไปอีกที่หนึ่ง ตามความต้องการของ business requirement ใน Oracle Database 10g (g หมายถึง grid) สามารถใช้ server ราคาถูก และ storage ราคาถูก มาต่อกัน แทนที่จะ ซื้อ infrastructure ที่มีขนาดใหญ่และมีราคาแพง oracle database 10g ยังมี Automatic Storage Management เพื่อทำเป็น virtualizes storage และ มี Oracle Enterprise Manager Grid Control สำหรับจัดการระบบ ที่มีหลาย node เหมือนมีแค่หนึ่ง

Oracle Database 11g Enterprise Edition
Oracle Database 11g จะช่วยให้องค์กรสามารถควบคุมข้อมูลภายในองค์กรได้อย่างมีประสิทธิภาพ พร้อมทั้งปรับปรุงข้อมูลเชิงลึกเกี่ยวกับธุรกิจ และปรับเปลี่ยนอย่างรวดเร็ว และเชื่อมั่นเพื่อรับมือกับสภาพแวดล้อม ที่เปลี่ยนไปและมีการแข่งขันอย่างรุนแรง  โดยเวอร์ชันใหม่ล่าสุดนี้ขยายขีดความสามารถทางด้านระบบคลัสเตอร์ฐานข้อมูล ระบบงานอัตโนมัติในดาต้าเซ็นเตอร์ และการจัดการเวิร์กโหลด  ด้วยระบบกริดสำหรับเซิร์ฟเวอร์และสตอเรจ ราคาประหยัดที่ปลอดภัย มีความพร้อมใช้งานสูง และปรับขนาดได้อย่างยืดหยุ่น ลูกค้าของออราเคิลจะสามารถรองรับการประมวลผลทรานแซคชั่นจำนวนมาก รวมถึงระบบคลังข้อมูล (Data Warehousing) และการจัดการคอนเทนต์ได้อย่างมีประสิทธิภาพ

อ้างอิง 




ไม่มีความคิดเห็น:

แสดงความคิดเห็น