กลับไปหน้าบทความ

อ่าน 7 นาที

ไฟร์เบิร์ด (เซิร์ฟเวอร์ฐานข้อมูล)

Firebird เป็น ระบบจัดการฐานข้อมูลเชิงสัมพันธ์ SQL แบบโอเพนซอร์ส ที่รองรับ Linux , Microsoft Windows , macOS และแพลตฟอร์ม Unix อื่นๆ [ 2 ] ฐานข้อมูลนี้ แยกมา จาก InterBase...

ไฟร์เบิร์ด (เซิร์ฟเวอร์ฐานข้อมูล)

( เรียนรู้วิธีและเวลาในการลบข้อความนี้ )

นกไฟ
ผู้เขียนต้นฉบับบอร์แลนด์
นักพัฒนามูลนิธิไฟร์เบิร์ด
ปล่อย2000 ( 2000 )
เวอร์ชันเสถียร
5.0.4 [ 1 ] แก้ไขข้อมูลนี้บนวิกิดาต้า / 17 เมษายน 2026 ( 17 เมษายน 2569 )
รุ่นทดลองใช้งาน
Firebird 5.0 รุ่นทดสอบก่อนวางจำหน่าย 1 / 26 กันยายน 2023
เขียนเป็นซี++ , ซี
ระบบปฏิบัติการข้ามแพลตฟอร์ม
แพลตฟอร์มIA-32 , x86-64
พิมพ์ระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS)
ใบอนุญาตไอพีแอล , ไอดีพีแอล
เว็บไซต์firebirdsql.orgแก้ไขข้อมูลนี้ได้ที่วิกิดาต้า
ที่เก็บข้อมูล
  • github.com/FirebirdSQL

Firebirdเป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์SQL แบบโอเพนซอร์ส ที่รองรับLinux , Microsoft Windows , macOSและแพลตฟอร์มUnix อื่นๆ [ 2 ]ฐานข้อมูลนี้แยกมาจากInterBaseเวอร์ชันโอเพนซอร์สของBorlandในปี 2000 แต่โค้ดส่วนใหญ่ได้รับการเขียนใหม่ตั้งแต่ Firebird 1.5 [ 3 ]

ประวัติศาสตร์

ภายในหนึ่งสัปดาห์หลังจากที่Borlandเผยแพร่ซอร์สโค้ดInterBase 6.0 เมื่อวันที่ 25 กรกฎาคม พ.ศ. 2543 [ 4 ] [ 5 ]โครงการ Firebird ก็ถูกสร้างขึ้นบนSourceForge [ 6 ] [ 7 ] Firebird 1.0 ได้รับการเผยแพร่สำหรับ Linux, Microsoft Windows และMac OS Xเมื่อวันที่ 11 มีนาคม พ.ศ. 2545 [ 8 ]โดยมีการพอร์ตไปยังSolaris , FreeBSD 4และHP-UXในอีกสองเดือนต่อมา[ 9 ]

งานในการย้ายโค้ดเบสจากCไปเป็นC++เริ่มขึ้นในปี 2000 เมื่อวันที่ 23 กุมภาพันธ์ 2004 Firebird 1.5 ได้รับการเผยแพร่[ 10 ]ซึ่งเป็นเวอร์ชันเสถียรแรกของโค้ดเบสใหม่ เวอร์ชัน 1.5 มีคุณสมบัติปรับปรุงตัวเพิ่มประสิทธิภาพการสืบค้นนิพจน์เงื่อนไขSQL-92 จุดบันทึกSQL:1999 และการสนับสนุนการล็อกแบบชัดเจน[ 11 ] Firebird 2.0ได้รับการเผยแพร่เมื่อวันที่ 12 พฤศจิกายน 2006 [ 12 ]โดยเพิ่มการสนับสนุน สถาปัตยกรรม 64 บิตตารางที่ซ้อนกันในข้อความ FROMและ การหมดเวลา การล็อก ที่ตั้งโปรแกรมได้ ในธุรกรรมแบบบล็อก[ 13 ]

เวอร์ชัน 2.1.6 เพิ่มคุณสมบัติใหม่ ได้แก่ทริกเกอร์เชิงกระบวนการแบบสอบถามแบบเรียกซ้ำและการสนับสนุนคำสั่งMERGE ของ SQL:2003 [ 14 ]

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

Firebird 3.0 เปิดตัวเมื่อวันที่ 19 เมษายน 2559 โดยเน้นที่ประสิทธิภาพและความปลอดภัย การปรับโครงสร้างโค้ดครั้งใหญ่ทำให้สามารถรองรับ เครื่อง SMP ได้อย่างสมบูรณ์ เมื่อใช้เวอร์ชัน SuperServer [ 16 ]

ผ่านโครงการGoogle Summer of Code 2013 งานได้เริ่มต้นขึ้นในการบูร ณาการ Firebird เพื่อใช้แทนHSQLDBในLibreOffice Base [ 17 ] [ 18 ]

ความขัดแย้งชื่อ Mozilla Firefox

ในเดือนเมษายน พ.ศ. 2546 องค์กร Mozillaประกาศเปลี่ยนชื่อเว็บเบราว์เซอร์จากPhoenixเป็นFirebirdหลังจากข้อพิพาทเรื่องเครื่องหมายการค้ากับPhoenix Technologies [ 19 ]

การตัดสินใจนี้ทำให้เกิดความกังวลภายในโครงการฐานข้อมูล Firebird เนื่องจากสมมติฐานที่ว่าผู้ใช้และเครื่องมือค้นหาอินเทอร์เน็ตจะสับสนหากทั้งฐานข้อมูลและเว็บเบราว์เซอร์ใช้ชื่อ Firebird เหมือนกัน[ 20 ] [ 21 ]นักพัฒนา Mozilla ได้ออกแถลงการณ์[ 22 ]โดยชี้แจงให้ชัดเจนว่าแพ็กเกจซอฟต์แวร์ของพวกเขาเรียกว่า "Mozilla Firebird" ไม่ใช่ "Firebird" [ 23 ] [ 24 ]แถลงการณ์ยังระบุด้วยว่าชื่อ Mozilla Firebird เป็น ชื่อ รหัส โครงการ

ข้อพิพาทได้รับการแก้ไขเมื่อวันที่ 9 กุมภาพันธ์ พ.ศ. 2547 เมื่อ Mozilla เปลี่ยนชื่อเบราว์เซอร์เป็นMozilla Firefoxจึงยุติความขัดแย้ง[ 25 ] [ 26 ] [ 27 ]

คุณสมบัติหลัก

  • รองรับขั้นตอนการจัดเก็บและทริกเกอร์ อย่างเต็มรูปแบบ [ 28 ]
  • ธุรกรรมที่สอดคล้องกับACIDอย่างสมบูรณ์
  • ความสมบูรณ์ของการอ้างอิง
  • สถาปัตยกรรมหลายรุ่น (บางครั้งเรียกว่า MVCC) [ 29 ]
  • รองรับฟังก์ชันภายนอก ( UDFs )
  • การทำงานของ SQL สามารถส่งเหตุการณ์แจ้งเตือนแบบอะซิงโครนัสไปยังไคลเอ็นต์ได้
  • เครื่องมือจากผู้พัฒนาภายนอก รวมถึงเครื่องมือบริหารจัดการแบบ GUI และเครื่องมือจำลองข้อมูล
  • การเขียนข้อมูลอย่างระมัดระวัง - กู้คืนได้รวดเร็ว ไม่จำเป็นต้องใช้บันทึกธุรกรรม
  • วิธีการเข้าถึงหลายวิธี: เนทีฟ/API, ไดรเวอร์ dbExpress/FireDAC [ 30 ] , ODBC, OLE DB, ผู้ให้บริการ .NET, ไดรเวอร์ JDBC เนทีฟประเภท 4, โมดูล Python, [ 31 ] PHP, Perl
  • การสำรองข้อมูลแบบเพิ่มทีละส่วน
  • การใช้งานเคอร์เซอร์แบบเต็มรูปแบบในPSQL

เทคโนโลยีการจัดเก็บและจัดทำดัชนี

สถาปัตยกรรมหลายรุ่น (MGA)

Firebird สืบทอดสถาปัตยกรรมจัดเก็บข้อมูลจาก Interbase เพื่อให้มั่นใจถึง คุณสมบัติ ACIDของธุรกรรม เอ็นจินฐานข้อมูลจะเก็บเวอร์ชันต่างๆ ของแต่ละเรคอร์ดที่เปลี่ยนแปลงโดยผู้ใช้ที่ใช้งานอยู่ในฐานข้อมูล เมื่อธุรกรรมได้รับการยืนยัน เวอร์ชันสุดท้ายของทุกเรคอร์ดที่เปลี่ยนแปลงจะถูกทำเครื่องหมายว่าเป็นเวอร์ชันสุดท้าย หากธุรกรรมถูกยกเลิก เอ็นจินฐานข้อมูลจะเก็บเครื่องหมายไว้ในเวอร์ชันเรคอร์ดดั้งเดิม โดยไม่แตะต้อง[ 32 ]ด้วยเหตุนี้ การเขียนลงดิสก์ของ Firebird จึงลดลงอย่างมากเมื่อเทียบกับฐานข้อมูลที่ใช้สถาปัตยกรรมบันทึกธุรกรรมแบบดั้งเดิม[ 33 ]การเขียนธุรกรรมไม่ได้ขัดขวางการอ่าน และในทางกลับกัน เนื่องจากแต่ละธุรกรรมจะเห็นเวอร์ชันของฐานข้อมูลของตนเอง[ 34 ]ข้อแลกเปลี่ยนคือ จำเป็นต้องมีการบำรุงรักษา ("การกวาดล้าง") เป็นระยะๆ เพื่อล้างเวอร์ชันเรคอร์ดเก่าและเพิ่มพื้นที่ว่างในดิสก์[ 35 ]

สถาปัตยกรรมหลายรุ่นช่วยให้การดำเนินการ OLTP และ DSS/OLAP สามารถทำงานพร้อมกันได้โดยไม่มีความล่าช้าที่เกิดจากกลไกการล็อกที่พบในผลิตภัณฑ์อื่นๆ[ 36 ]

ดัชนี

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

ตัวแปร

  • Firebird SuperServer มี daemon/เซิร์ฟเวอร์เพียงตัวเดียวสำหรับจัดการการเชื่อมต่อของไคลเอ็นต์ทั้งหมด โดยทำงานแบบมัลติเธรดและใช้แคชร่วมกัน
  • Firebird SuperClassic ยังมี daemon/server ตัวเดียวสำหรับจัดการการเชื่อมต่อไคลเอ็นต์ทั้งหมด โดยทำงานแบบมัลติเธรดและมีแคชแยกต่างหาก
  • Firebird Classic ใช้inetdในการรันเซิร์ฟเวอร์หนึ่งชุดต่อการเชื่อมต่อไคลเอ็นต์หนึ่งราย ซึ่งแนะนำสำหรับระบบ SMP แต่Hอาจมีปัญหาเกี่ยวกับการแจ้งเตือนเหตุการณ์หากการเข้าถึงผ่านไฟร์วอลล์
  • Firebird Embedded เหมาะสำหรับการสร้างแคตตาล็อก CD-ROM, แอปพลิเคชันเวอร์ชันผู้ใช้คนเดียว หรือเวอร์ชันทดลองใช้งาน

การออกใบอนุญาต

เอ็นจิ้นฐานข้อมูล Firebird และโมดูลต่างๆ ได้รับการเผยแพร่ภายใต้ใบอนุญาตโอเพนซอร์ส Initial Developer's Public License (IDPL) ซึ่งเป็นรูปแบบหนึ่งของMozilla Public License (MPL) เวอร์ชัน 1.1 ใบอนุญาตนี้ไม่บังคับให้นักพัฒนาต้องเปิดเผยผลิตภัณฑ์ที่ใช้ Firebird หรือแม้แต่ผลิตภัณฑ์ที่สร้างขึ้นเองจากซอร์สโค้ด แต่หากนักพัฒนาเลือกที่จะทำเช่นนั้น ก็ต้องปฏิบัติตามข้อกำหนดและเงื่อนไขบางประการ IDPL อนุญาตให้นักพัฒนาสร้างแอปพลิเคชันที่เป็นกรรมสิทธิ์และปิดแหล่งที่มาซึ่งใช้ Firebird หรือมีพื้นฐานมาจาก Firebird [ 38 ]

API การเชื่อมต่อ

API ดั้งเดิมระดับต่ำของ Firebird, API บริการ และ SQL แบบฝังตัว

API ดั้งเดิมของ Firebird ถูกใช้โดยตรงหรือโดยอ้อมโดยแอปพลิเคชันหรือมิดเดิลแวร์ที่เชื่อมต่อกับฐานข้อมูล Firebird โดยจะถูกนำไปใช้ในไลบรารีไคลเอ็นต์ fbclient.dll บนระบบ Windows และใน libfbclient.so บนระบบ Unix [ 39 ]

Services API คือชุดฟังก์ชันพิเศษสำหรับเข้าถึงและควบคุมงานบริหารจัดการบริการ เช่น การจัดการผู้ใช้ การสำรองข้อมูล/กู้คืน และการรวบรวมสถิติ

Embedded SQLเป็นเทคนิคที่ช่วยลดความซับซ้อนในการพัฒนาแอปพลิเคชัน C/C++ และ COBOL Firebird โดยใช้พรีโปรเซสเซอร์ที่เรียกว่า gpre ซึ่งช่วยให้สามารถฝังคำสั่ง SQL ลงในซอร์สโค้ดของภาษาโฮสต์ได้โดยตรง[ 40 ]

รางวัล

  • รางวัล SourceForge Community Choice Award ปี 2007: โครงการที่ดีที่สุดสำหรับองค์กร การสนับสนุนผู้ใช้ที่ดีที่สุด[ 41 ]
  • 2009. รางวัล SourceForge Community Choice Award: โครงการที่ดีที่สุดสำหรับองค์กรธุรกิจ เข้ารอบสุดท้ายในสาขาโครงการที่ดีที่สุดและโครงการที่ดีที่สุดสำหรับภาครัฐ[ 42 ]

ดูเพิ่มเติม

  • เว็บไซต์อย่างเป็นทางการแก้ไขข้อมูลนี้ได้ที่วิกิดาต้า
  • Firebird - พอร์ทัลสำหรับนักพัฒนา
  • การรวบรวมข้อมูล และแผนภูมิของ Firebird
  • เอกสารประกอบการใช้งาน Firebird โดย IBProvider
  • คำถามที่พบบ่อยเกี่ยวกับ Firebird
  • FirebirdNews - ข่าวสารเกี่ยวกับ Firebird และโครงการที่เกี่ยวข้อง
  • คู่มือการย้ายข้อมูลไปยัง Firebird 3 - eBook
  • ไดรเวอร์ Firebird Ole Db (ทางเลือกแทน ODBC)
  • Jaybird – ไดรเวอร์ JDBC สำหรับ Firebird (บน github.com)
  • Jaybird – ไดรเวอร์ JDBC สำหรับ Firebird (ดูได้ที่ firebirdsql.org)
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Firebird_(database_server)&oldid=1310768159 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ไฟร์เบิร์ด (เซิร์ฟเวอร์ฐานข้อมูล)

Firebird เป็น ระบบจัดการฐานข้อมูลเชิงสัมพันธ์ SQL แบบโอเพนซอร์ส ที่รองรับ Linux , Microsoft Windows , macOS และแพลตฟอร์ม Unix อื่นๆ [ 2 ] ฐานข้อมูลนี้ แยกมา จาก InterBase...

ประวัติศาสตร์

ภายในหนึ่งสัปดาห์หลังจากที่ Borland เผยแพร่ซอร์สโค้ด InterBase 6.0 เมื่อวันที่ 25 กรกฎาคม พ.ศ. 2543 [ 4 ] [ 5 ] โครงการ Firebird ก็ถูกสร้างขึ้นบนSourceForge [ 6 ] [ 7 ] Firebird 1.

ความขัดแย้งชื่อ Mozilla Firefox

ในเดือนเมษายน พ.ศ. 2546 องค์กร Mozilla ประกาศเปลี่ยนชื่อเว็บ เบราว์เซอร์ จาก Phoenix เป็น Firebird หลังจากข้อพิพาทเรื่องเครื่องหมายการค้ากับ Phoenix Technologies [ 19 ]

คุณสมบัติหลัก

รองรับ ขั้นตอนการจัดเก็บ และ ทริกเกอร์ อย่างเต็มรูปแบบ [ 28 ] ธุรกรรมที่สอดคล้องกับ ACID อย่างสมบูรณ์ ความสมบูรณ์ของการอ้างอิง สถาปัตยกรรมหลายรุ่น (บางครั้งเรียกว่า MVCC) [ 29 ] รองรับฟังก์ชันภายนอก ( UDFs ) การทำงานของ SQL...