
Last Updated (Sunday, 09 August 2009 14:37) Tuesday, 13 January 2009 14:20
นอกจากปีนี้ จะเป็นปีที่ oracle ฉลองครบรอบ ก่อตั้งมา 30 ปีแล้ว ยังเป็นปีที่ oracle มีกำหนดปล่อย oracle version ใหม่ คือ oracle 11g เวบ oracleskill.com จึงขอย้อนตำนาน ทำความรู้จัก oracle database เริ่มตั้งแต่ oracle version แรก จนมาล่าสุด oracle 10g ว่าในแต่ละ version มีฟีเจอร์ และที่มายังไงบ้าง ก่อนที่เราจะก้าวต่อไป ในยุค oracle 11g ที่จะเปิดตัวในวันที่ 11 กรกฎาคมนี้
Database Management System เริ่มมีใช้ใน ทศวรรษ 1960 ซึ่งยังเป็นฐานข้อมูลที่มีโครงสร้างแบบ ลำดับชั้น ( hierarchies ) และ แบบ network อยู่ ซึ่งยากลำบากในการเขียน Application จนกระทั่ง Dr.Ted Codd ซึ่ง ทำงานอยู่ที่ บริษัท IBM ในขณะนั้น มีความคิดในการ จัด organize data ใหม่ ซึ่ง Dr.Codd เรียกมันว่า “Relational Model”
Relational Model นี้ ใช้ ตาราง 2 มิติ ประกอบด้วย แถว (row) และ คอลัมน์ (column) โดย ข้อมูลในตาราง สามารถ เชื่อมความสัมพันธ์ (relationship) ระหว่างตารางกันได ้ แต่ช่วงนั้น relational model ของ Codd ก็ยัง ไม่ม ีการเอาไปทำ ในเชิงพาณิชย์ และ บริษัท IBM เองก็ไม่มีแผนเอา ไอเดีย ของ Dr. Codd ไปใช้งาน
ในปี ค.ศ. 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 ออกมา
Portability (ความสามารถในการติดตั้งโดยไม่ขึ้นกับ platform) เป็นความต้องการที่สำคัญของลูกค้า เพราะ สามารถ เลือกที่จะ ติดตั้งบน Hardware และ Operation System platform ที่ลูกค้าต้องการได้ เพื่อที่จะให้ database สามารถ portable ได้ จึงเขียนโค้ดใหม่ด้วยภาษ C เพื่อให้ database หน้าตาเหมือนกันไม่ว่าจะ run บน platform ไหน
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) โดยอัตโนมัติ
ในปี ค.ศ. 1985 Oracle RDBMS เริ่มสนับสนุนสถาปัตยกรรมแบบ client/server และเริ่มสนับสนุน distributed database
ในช่วงปีทศวรรษ 1960 ตลาดฐานข้อมูลเฟื่องฟู มีคู่แข่งหน้าใหม่หลายเจ้า ทำให้ Oracle ต้องมีการปรับปรุง performance และ เพิ่มฟีเจอร์ใหม่ๆ ผลที่ออกมา คือ Oracle RDBMS version 6 ซึ่งเป็นการ redesigned database โดย วิศวกรของ Oracle เขียนโค้ดใหม่ เพื่อตอบสนองต่อ disk I/O, concurrency control, scalability, และ backup&recovery ที่จะทำให้ระบบ สามารถขยายขนาด (scalable) ได้ และ มีความสามารถใช้งานได้ตลอดเวลา (high availability)
เพื่อที่จะสามารถ รองรับข้อมูลจำนวนมหาศาล เช่น text, รูปภาพ,ข้อมูลทางการแพทย์,ข้อมูลด้านแผนที่ Oracle version 8 ได้มีการแบ่งซอยข้อมูล เป็น partition เมื่อจัดการกับตารางที่มีขนาดใหญ่มากๆ
Oracle 8 มีจุดมุ่งหมาย สองประการ คือ ต้องการปรับปรุง infrastructure ที่สนับสนุนฐานข้อมูล ที่มีขนาดใหญ่มากๆ เพื่อที่จะ เป็นจุดแข็งในธุรกิจ data warehouse และ ต้องการเพิ่มความจุของ database ดังนั้น Partitioning เป็น key technology ที่ จะทำให้องค์กร สามารถเก็บข้อมูลปริมาณมหาศาลใน oracle database
Oracle เป็นหนึ่งในบริษัทแรกๆ ที่เห็นว่า “internet เปลี่ยนแปลงทุกอย่าง ” เพื่อที่จะพร้อมรับ ความเปลี่ยนแปลงนี้ oracle 8i ได้พัฒนาให้ มีความสามรถ รองรับการขยายขนาดได้มากขึ้น และ สนับสนุน internet protocols
Oracle 8i database สามารถ run บนสถาปัตยกรรม แบบ multitier ซึ่ง internet ก็ถูกออกแบบให้เป็นเช่นนั้น และยังใช้ภาษา java เป็น database engine
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 ได้
Grid Computing เป็นการทำให้ resource เช่น storage , database server , application server เป็นแบบ virtualization ซึ่งทำให้องค์กร สามารถจัดการหลายๆ node ได้ง่าย เหมือนมีแค่หนึ่ง node ดังนั้น workload สามารถ ย้าย จากที่หนึ่ง ไปอีกที่หนึ่ง ตามความต้องการของ business requirement
oracle database table oracle database data using pl/sql index oracle tutorial password oracle thailand oracle training thailand database administrator oracle thai oracle dba oracle training oracle consulting oracle consultance thai oracle consultance oracle consulting thailand mysql tuning indexes statistics join column migration rman tables production


