Firebird(데이터베이스 서버)
Firebird (database server)![]() |
![]() | |
원저작자 | 볼랜드 |
---|---|
개발자 | 파이어버드 재단 |
초기 릴리즈 | 2000년 |
안정된 릴리스 | 4.0.1[1] / 2021년 12월 ; 전 ( ) |
저장소 | |
기입처 | C++ |
운영 체제 | 크로스 플랫폼 |
유형 | RDBMS |
면허증. | IPL, IDPL |
웹 사이트 | www |
Firebird는 Linux, Microsoft Windows, macOS 및 기타 Unix [2]플랫폼을 지원하는 오픈 소스 SQL 관계형 데이터베이스 관리 시스템입니다.데이터베이스는 2000년 볼랜드의 인터베이스 오픈 소스 에디션에서 분리되었지만, 코드는 Firebird 1.5 [3]이후 대부분 다시 작성되었다.
역사
2000년 [4][5]7월 25일 Borland가 InterBase 6.0 소스를 출시한 지 일주일 만에 Firebird 프로젝트가 [6][7]SourceForge에서 생성되었습니다.Firebird 1.0은 2002년 [8]3월 11일 Linux, Microsoft Windows 및 Mac OS X용으로 출시되었으며 이후 2개월 [9]동안 Solaris, FreeBSD 4, HP-UX에 대한 포트를 제공합니다.
C에서 C++로의 코드 베이스의 이식 작업은 2000년에 시작되었습니다.2004년 2월 23일 Firebird 1.5가 [10]출시되었으며, 이는 새로운 코드베이스의 첫 번째 안정적인 릴리스였다.버전 1.5에서는 향상된 쿼리 최적화 기능, SQL-92 조건식, SQL:1999 세이브 포인트 및 명시적 [11]잠금 지원이 제공되었습니다.Firebird 2.0은 2006년 [12]11월 12일에 출시되었으며 64비트 아키텍처, FROM 구에 중첩된 테이블 및 트랜잭션 [13]차단 시 프로그래밍 가능한 잠금 타임아웃 지원이 추가되었습니다.
이전의 안정된 릴리스는 2.1.6 버전이었고, 여기에는 절차 트리거, 재귀 쿼리 및 SQL:2003 MERGE [14]문 지원 등의 새로운 기능이 추가되었습니다.
Firebird 2.5는 향상된 멀티스레딩, 정규 표현 구문, 원격 데이터베이스 [15]쿼리 기능 등의 새로운 기능을 도입했습니다.
최신 안정 버전은 성능과 보안에 중점을 두고 2016년 4월 19일에 출시된 Firebird 3.0입니다.SuperServer [16]버전을 사용할 때 코드의 주요 재구축으로 SMP 머신을 완전히 지원할 수 있었습니다.
Google Summer of Code 2013을 통해 LibreOffice [17][18]Base에서 HSQLDB를 대체하는 Firebird 통합 작업이 시작되었습니다.
Mozilla Firefox 이름 충돌
2003년 4월 Mozilla Organization은 [19]Phoenix Technologies와의 상표권 분쟁 후 웹 브라우저 이름을 Phoenix에서 Firebird로 변경했다고 발표했습니다.
이 결정은 [20][21]Firebird라는 이름을 사용하는 데이터베이스와 웹 브라우저에 의해 사용자와 인터넷 검색 엔진이 혼동된다는 가정 때문에 Firebird 데이터베이스 프로젝트 내에서 우려를 야기했습니다.Mozilla 개발자들은 성명서를 [22]발표하면서 그들의 소프트웨어 패키지는 "Firebird"[23][24]가 아니라 "Mozilla Firebird"라고 불리고 있음을 분명히 했다.성명은 또한 Mozilla Firebird 이름이 프로젝트 코드명이라고 말했다.
이 분쟁은 2004년 2월 9일 Mozilla가 브라우저 이름을 Mozilla Firefox로 변경함으로써 [25][26][27]해결되었습니다.
주요 기능
- 저장 프로시저 및 트리거에[28] 대한 완전한 지원
- 풀 ACID 준거 트랜잭션
- 참조 무결성
- 멀티 제너레이션아키텍처([29]MVCC라고도 불립니다)
- 외부 기능 지원(UDF)
- SQL 액티비티는 클라이언트에 비동기 통지 이벤트를 전송할 수 있습니다.
- GUI 관리 도구 및 레플리케이션 도구를 포함한 서드파티 도구
- 신중한 쓰기 - 신속한 복구, 트랜잭션 로그 불필요
- 네이티브/API, dbExpress/FireDAC 드라이버, ODBC, OLE DB 등 다양한 액세스 방법.NET 공급자, JDBC 네이티브 타입 4 드라이버, Python 모듈,[31] PHP, Perl
- 증분 백업
- PSQL에서의 완전한 커서 실장
스토리지 및 인덱스 테크놀로지
멀티 제너레이션 아키텍처(MGA)
Firebird는 Interbase의 스토리지 아키텍처를 계승했습니다.트랜잭션의 ACID 속성을 보장하기 위해 데이터베이스 엔진은 활성 사용자에 의해 변경된 각 레코드의 다른 버전을 데이터베이스에 유지합니다.트랜잭션이 커밋되면 변경된 모든 레코드의 마지막 버전이 최종 버전으로 표시됩니다.트랜잭션이 롤백된 경우 데이터베이스 엔진은 원래 레코드 버전에 표시를 유지하고 변경되지 [32]않은 상태로 유지합니다.그 결과 기존 트랜잭션 로그 아키텍처를 사용하는 데이터베이스에 비해 Firebird Disk 쓰기가 매우 줄어듭니다.[33]트랜잭션 쓰기는 각 데이터베이스의 [34]고유한 버전을 보기 때문에 읽기를 방해하지 않으며, 그 반대도 마찬가지입니다.단점은 오래된 레코드 버전을 정리하고 디스크 [35]공간을 확보하기 위해 때때로 유지 보수('스위핑')가 필요하다는 것입니다.
멀티 제너레이션아키텍처에서는, OLTP 와 DSS/OLAP 의 조작을 동시에 실행할 수 있기 때문에, 다른 [36]제품에서 볼 수 있는 잠금 메카니즘에 의한 지연이 발생하지 않습니다.
인덱스
Firebird는 데이터베이스의 모든 인덱스를 다른 아키텍처에서 사용하는 잘 조정된 "클러스터된 인덱스"처럼 동작시킵니다.Firebird 인덱스 버킷에는 2상 잠금이 적용되지 않으며, 부울 "and" 및 "또는" 연산은 최소 비용으로 중간 비트맵에 대해 수행될 수 있으므로 옵티마이저가 대체 [37]인덱스 중에서 선택할 필요가 없습니다.
변종
- Firebird SuperServer에는 공유 캐시를 사용하여 멀티스레드된 모든 클라이언트 접속용 데몬/서버가 1개 있습니다.
- 또한 Firebird SuperClassic은 모든 클라이언트 접속에 대해 단일 데몬/서버가 있으며 별도의 캐시를 사용하여 멀티스레드됩니다.
- Firebird Classic은 inetd를 사용하여 SMP 시스템에 권장되지만 방화벽을 통해 액세스하는 경우 이벤트 알림 문제가 발생할 수 있습니다.
- Firebird Embedded로 CD-ROM 카탈로그, 단일 사용자 또는 평가판 애플리케이션 생성 가능
라이선스
Firebird 데이터베이스 엔진 및 해당 모듈은 Mozilla Public License(MPL) 버전 1.1의 변형인 초기 개발자 공용 라이센스(IDPL)로 출시됩니다.개발자가 Firebird를 사용하거나 소스 코드에서 만들어진 커스텀 파생상품을 사용하여 제품을 열 필요는 없지만 개발자가 그렇게 하기로 결정한다면 몇 가지 약관을 따라야 합니다.IDPL을 통해 개발자는 Firebird를 사용하거나 Firebird를 [38]기반으로 하는 독점적인 클로즈드 소스 애플리케이션을 만들 수 있습니다.
접속 API
저레벨 Firebird 네이티브 API, 서비스 API 및 임베디드 SQL
Firebird 네이티브 API는 Firebird 데이터베이스에 접속하는 애플리케이션 또는 미들웨어에 의해 직간접적으로 사용됩니다.Windows 시스템에서는 클라이언트라이브러리 fbclient.dll에, Unix 시스템에서는 [39]libfbclient.so에 실장되어 있습니다.
Services API는 사용자 관리, 백업/복원, 통계 수집 등의 서비스 관리 태스크에 액세스하고 제어하기 위한 특수 기능 세트입니다.
임베디드 SQL은 호스트 언어의 [40]소스 코드에 SQL 문을 직접 삽입할 수 있는 gpre라는 프리프로세서를 사용하여 C/C++ 및 COBOL Firebird 응용 프로그램의 개발을 단순화하는 기술입니다.
어워드
- 2007. Source Forge Community Choice Award: 기업 대상 최우수 프로젝트, 최우수 사용자 지원.[41]
- 2009. Source Forge 커뮤니티 초이스 어워드: 기업 대상 최우수 프로젝트.최우수 프로젝트 및 [42]정부 대상 최우수 프로젝트 최종 후보
「 」를 참조해 주세요.
레퍼런스
- ^ https://firebirdsql.org/en/firebird-4-0-1/ 를 참조해 주세요.
- ^ "Firebird: A powerful, cross platform, SQL database system". SourceForge. SourceForge Media, LLC. 25 April 2018. Retrieved 2 May 2018.
- ^ "Firebird 1.5.5 Release Notes". Retrieved 29 September 2009. Firebird 1.5.5 C에서 C++ 언어로 다시 쓰기 위한 일반 참고 사항
- ^ "Inprise/Borland Introduces InterBase 6.0 Now Free and Open Source on Linux, Windows, and Solaris". 16 July 2000. Archived from the original on 6 December 2004. Retrieved 29 January 2009.
- ^ "Borland.com: Inprise/Borland Introduces Interbase 6.0 Now Free and Open Source on Linux". Linux Today. Retrieved 29 January 2009.
- ^ "Firebird History". Retrieved 14 March 2014.
- ^ Paul Reeves. "What's happening to InterBase". Borland User Group. p. 2. Retrieved 14 March 2014.
- ^ "IBPhoenix Community News Archive". 11 March 2000. Retrieved 29 January 2009.[영구 데드링크]
- ^ "IBPhoenix Community News Archive". 11 April 2000. Retrieved 29 January 2009.[영구 데드링크]
- ^ "Firebird Relational Database 1.5 Final Out". Slashdot. 23 February 2004. Retrieved 31 January 2009.
- ^ Helen Borrie (5 October 2009). "Firebird 1.5.6 Release Notes". Firebird Project. Retrieved 10 June 2012.
- ^ Dmitry Yemanov. "Firebird 2.0 Final Release Launches in Prague". Retrieved 5 February 2009.
- ^ Helen Borrie (5 April 2012). "Firebird 2.0.7 Release Notes". Retrieved 10 June 2012.
- ^ Helen Borrie (20 July 2014). "Firebird 2.1 Release Notes". Retrieved 20 July 2014.
- ^ Helen Borrie (19 November 2015). "Firebird 2.5.5 Release Notes". Retrieved 19 November 2015.
- ^ Gray, James (29 July 2016). "The Firebird Project's Firebird Relational Database Linux Journal". www.linuxjournal.com. Linux Journal. Archived from the original on 1 March 2020. Retrieved 1 March 2020.
- ^ mariuz (14 February 2012). "Firebird Embedded and LibreOffice is the killer combination to scale from a single file application to a client/server approach". Firebirdnews.org. Retrieved 8 July 2013.
- ^ ahunt (28 May 2013). "GSOC 2013: LibreOffice Firebird SQL Connector". Retrieved 8 July 2013.
- ^ Dotzler, Asa (14 April 2003). "Phoenix and Minotaur to be renamed Firebird and Thunderbird". MozillaZine. MozillaZine. Retrieved 29 January 2016.
- ^ Mozilla browser becomes Firebird, IBPhoenix, archived from the original on 23 April 2003, retrieved 29 January 2016
- ^ Bishop, Alex (21 April 2003). "Firebird Database Project Admin Ann Harrison Interviewed". MozillaZine. MozillaZine. Retrieved 29 January 2016.
- ^ "mozilla branding". The Mozilla Organization. 25 April 2003. Archived from the original on 26 April 2003. Retrieved 31 January 2016.
- ^ Festa, Paul (7 May 2003). "Mozilla's Firebird gets wings clipped". CNET. CBS Interactive. Retrieved 29 January 2016.
- ^ Bishop, Alex (14 May 2003). "Christopher Blizzard of mozilla.org speaks on the Firebird naming conflict". MozillaZine. MozillaZine. Retrieved 29 January 2016.
- ^ Paul Festa (9 February 2004). "Mozilla holds 'fire' in naming fight". CNET. CBS Interactive. Retrieved 29 January 2016.
- ^ "Mozilla Firebird Renamed Firefox, Version 0.8 Released". MozillaZine. MozillaZine. 9 February 2004. Retrieved 29 January 2016.
- ^ "Mozilla Firefox - Brand Name Frequently Asked Questions". mozilla.org. Mozilla Foundation. Retrieved 29 January 2016.
- ^ "Get to know Firebird in 2 minutes".
- ^ Roman Rokytskyy. "A not-so-very technical discussion of Multi Version Concurrency Control". Retrieved 21 November 2011.
- ^ "Connect to Firebird (FireDAC)".FireDAC
- ^ "FDB: The Python driver for Firebird".
- ^ "Multi-generational architecture (MGA) and record versioning". HK-Software. Archived from the original on 1 October 2011. Retrieved 14 July 2011.
- ^ "Interview with Jim Starkey from InterBase World". Marina Novikova, InterBase World. Retrieved 14 July 2011.
- ^ "What is Multi Generational Architecture (MGA)?". The Firebird FAQ. Retrieved 14 July 2011.
- ^ "Database Housekeeping And Garbage Collection". The Firebird Project. Retrieved 14 July 2011.
- ^ "What is Multi Generational Architecture (MGA)?". The Firebird FAQ. Retrieved 14 July 2011.
- ^ "Interview with Jim Starkey from InterBase World". Marina Novikova, InterBase World. Retrieved 14 July 2011.
- ^ "Firebird: Initial Developer's Public License Version 1.0". Firebird Project. Retrieved 13 July 2011.
- ^ "The Firebird client library". The Firebird Project. Retrieved 14 July 2011.
- ^ "Application development". The Firebird Project. Retrieved 14 July 2011.
- ^ "SourceForge.net 2007 Community Choice Awards Winners". SourceForge.net. Retrieved 13 July 2011.
- ^ "SourceForge.net: 2009 CCA: Winners". SourceForge.net. Retrieved 13 July 2011.
외부 링크

- 공식 웹사이트
- Firebird - 개발자 포털
- 파이어버드의 대조와 차트.
- IBProvider에 의한 Firebird 문서
- 파이어버드FAQ
- Firebird News - Firebird 및 관련 프로젝트에 대한 뉴스
- Firebird 3으로의 이행 가이드 - 전자책
- Firebird Ole DB 드라이버(ODBC 대체)
- JayBird – Firebird용 JDBC 드라이버