네 가지 주요 오픈소스 데이터베이스는 무엇인가요?
오픈 소스 세계의 무료 데이터베이스
게시 시간: 2011-11-22 09:34:30 출처: CSDN 댓글: 0 클릭수: 1476 글꼴 크기: 크게, 중간 , Small
QQ Space, Sina Weibo, Tencent Weibo, Renren Network, Douban Network, Baidu Space, Baidu Collection, Kaixin Network Copy More 0
오픈 소스 데이터베이스 MySQL MySQL은 오픈 소스 데이터베이스입니다. 소스 소규모 관계형 데이터베이스 스웨덴 MySQL AB가 개발한 데이터베이스 관리 시스템입니다. MySQL은 현재 인터넷상의 중소규모 웹사이트에서 널리 사용되고 있습니다. 작은 크기, 빠른 속도 및 낮은 총 소유 비용, 특히 오픈 소스로 인해...
오픈 소스 데이터베이스 MySQL
MySQL은 오픈 소스 소규모 관계형 데이터베이스 관리 시스템입니다. 개발자는 스웨덴 MySQL AB 회사입니다. 현재 MySQL은 인터넷상의 중소규모 웹사이트에서 널리 사용되고 있습니다. 작은 크기, 빠른 속도, 낮은 총 소유 비용, 특히 오픈 소스의 특성으로 인해 많은 중소 웹 사이트에서는 웹 사이트 총 소유 비용을 줄이기 위해 MySQL을 웹 사이트 데이터베이스로 선택합니다.
인벤토리: 오픈 소스 커뮤니티의 무료 데이터베이스 소프트웨어
MySQL은 C, C++, C#, Delphi, 에펠, Java, Perl, PHP를 포함한 다양한 프로그래밍 언어에 대한 API를 제공합니다. , Python, Ruby 및 Tcl 등 C 및 C++로 작성되었으며 다양한 컴파일러를 사용하여 테스트되었으므로 MySQL은 소스 코드의 이식성이 높다는 것을 보장할 수 있습니다. 이러한 데이터베이스는 AIX, BSDi, FreeBSD, HP-UX, Linux, Mac OS, Novell Netware, NetBSD, OpenBSD, OS/2 Wrap, Solaris, SunOS를 포함하여 Unix, Linux부터 Windows까지 거의 모든 운영 체제를 자연스럽게 지원할 수 있습니다. Windows 및 기타 운영 체제. 가장 중요한 점은 수천만 개의 레코드를 처리할 수 있는 대규모 데이터베이스입니다.
동시에 MySQL은 데이터베이스의 많은 분기 버전도 생성했는데, 이는 역시 적극 권장됩니다.
첫 번째는 Maria 스토리지 엔진을 사용하는 MySQL의 분기 버전인 MariaDB입니다. MySQL의 원작자인 Michael Widenius가 설립한 회사에서 개발한 무료 오픈소스 데이터베이스 서버입니다. MySQL에 비해 MariaDB는 Maria 스토리지 엔진, PBXT 스토리지 엔진, XtraDB 스토리지 엔진 및 FederatedX 스토리지 엔진을 포함하여 더 많은 엔진을 가지고 있다는 점에서 더 강력합니다. 쿼리 처리를 더 빠르게 복제하고 더 나은 기능 테스트를 실행할 수 있으며 유니코드 정렬을 더 빠르게 지원할 수 있습니다. , 등.
두 번째는 rcona로, MySQL 데이터베이스 서버에 맞게 개선되어 MySQL에 비해 기능과 성능이 크게 향상되었습니다. 이 버전은 부하가 높은 조건에서 InnoDB의 성능을 향상시키는 동시에 DBA를 위한 매우 유용한 성능 진단 도구를 제공하며 서버 동작을 제어하기 위한 많은 매개변수와 명령을 제공합니다.
세 번째는 google-mysql-tools, Proven Scaling, Open Query와 같은 도구를 사용하여 MySQL을 변환하는 Percona Server입니다. 또한 이는 MySQL의 서버 버전만 포함하고 있으며 MySQL의 커넥터 및 GUI 도구에 대한 해당 개선 사항을 제공하지 않습니다.
비관계형 데이터베이스 NoSQL
NoSQL의 문자 그대로의 의미에서 NoSQL은 단순한 SQL이 아닙니다. 업계에서는 이를 완전히 새로운 혁명적인 데이터베이스 운동으로 간주합니다. 2009년 초에 이를 제안한 이후 추세는 점점 더 높아졌습니다. NoSQL 옹호자들은 비관계형 데이터 저장소의 사용을 옹호합니다. 현재의 압도적인 관계형 데이터베이스 적용과 비교하면 이 개념은 의심할 여지 없이 새로운 사고의 주입입니다.
인벤토리: 오픈 소스 커뮤니티의 무료 데이터베이스 소프트웨어
물론 NoSQL은 인터넷상의 Web 2.0 웹사이트의 등장과 함께 큰 발전을 이루었습니다. 핵심 요구 사항은 전통적인 관계형 데이터베이스가 Web2.0 웹 사이트, 특히 초대형 및 고도로 동시 발생하는 SNS 유형의 순수 동적 Web2.0 웹 사이트에 대처할 수 없다는 것입니다. 이는 극복할 수 없는 많은 문제를 노출시킵니다. 그 자체의 특성상 매우 빠르게.
첫 번째 추천은 커뮤니티 에디션인 Oracle NoSQL Database입니다. 오라클의 NoSQL 데이터베이스는 지난 10월 4일 Oracle Global Encyclopedia에 출시된 Big Data Appliance의 구성 요소 중 하나입니다. Big Data Appliance는 Hadoop, NoSQL 데이터베이스, Oracle Database Hadoop 어댑터, Oracle Database Hadoop 로더 및 R 언어 시스템이 통합된 것입니다.
두 번째 추천은 멤베이스(Membase)입니다. Membase는 NoSQL 제품군의 새로운 헤비급 멤버입니다. Membase는 오픈 소스 프로젝트이며 소스 코드는 Apache2.0 라이센스를 채택합니다. 프로젝트는 GitHub.Source tarball에서 호스팅되며 현재 Linux 바이너리 패키지의 베타 버전을 다운로드할 수 있습니다. 이 제품은 주로 온라인 게임 및 커뮤니티 네트워킹 공간의 대규모 제공업체인 Zynga와 NHN이라는 두 주요 기여업체의 엔지니어도 포함된 North Scale의 memcached 핵심 팀 구성원에 의해 개발되었습니다.
또한 Membase는 설치 및 운영이 쉽고 단일 노드에서 클러스터로 쉽게 확장할 수 있으며 개발자에게 제공되는 memcached(유선 프로토콜 호환성)에 대한 플러그 앤 플레이 기능도 구현합니다. 연산자는 상대적으로 낮은 임계값을 제공합니다. Memcached는 캐싱 솔루션으로서 다양한 분야(특히 대용량 웹 애플리케이션)에서 널리 사용되고 있습니다. Memcached의 기본 코드 중 일부는 Membase 서버의 프런트 엔드에 직접 적용됩니다. Membase는 여러 프로그래밍 언어 및 프레임워크와 호환되므로 재사용성이 뛰어납니다. 설치 및 구성 측면에서 Membase는 구성 가능한 경보 정보를 포함하여 효과적인 그래픽 인터페이스와 프로그래밍 인터페이스를 제공합니다.
Membase의 목표는 클러스터 용량을 늘리기 위해 통합 노드에 대한 복제를 포함한 외부 선형 확장 기능을 제공하는 것입니다. 또한 저장된 데이터의 재할당도 여전히 필요합니다.
세 번째 추천은 히바리입니다. Hibari는 일본어로 "종달새"를 의미합니다. 높은 신뢰성과 빅데이터 저장을 위해 설계된 데이터베이스 엔진으로 웹메일, SNS 등 T/P 수준의 데이터 저장이 필요한 환경에서 사용할 수 있습니다. 동시에 Hibari는 Java, C/C++, Python, Ruby 및 Erlang 언어의 클라이언트도 지원합니다.
네번째 추천은 memcachedb입니다. 이는 Sina 개발자가 오픈한 오픈 소스 프로젝트로, Memcached 분산 캐시 서버에 Berkeley DB의 영구 저장 메커니즘과 비동기식 기본 및 보조 복제 메커니즘을 추가하여 Memcached에 트랜잭션을 복구하고 유지하며 자동 복제 기능을 제공합니다. 기능을 갖추고 있으며 초고성능 읽기 및 쓰기 속도가 필요하지만 엄격한 트랜잭션 제약이 필요하지 않고 지속될 수 있는 애플리케이션 시나리오에 매우 적합합니다. 예를 들어 memcachedb는 Sina Blog에서 사용됩니다.
다섯 번째 추천은 Leveldb입니다. 이는 Google에서 구현한 매우 효율적인 kv 데이터베이스입니다. 현재 버전 1.2는 10억 수준의 데이터 볼륨을 지원할 수 있습니다. 좋은 디자인, 특히 LSM 알고리즘 덕분에 이 수준에서는 여전히 매우 높은 성능을 발휘합니다. LevelDB는 4개의 Q6600 CPU 머신에서 초당 쓰기 데이터가 400,000을 초과하는 반면, 무작위 읽기 성능은 초당 100,000을 초과하는 매우 높은 성능을 갖춘 단일 프로세스 서비스입니다.
XML 데이터베이스의 장점
XML 데이터베이스는 XML 형식의 문서에 대한 저장, 조회 등의 작업을 지원하는 데이터 관리 시스템입니다. 시스템에서 개발자는 지정된 형식으로 XML 문서를 쿼리하고, 내보내고, 직렬화할 수 있습니다. 현재 XML 데이터베이스에는 세 가지 유형이 있습니다. XML을 처리할 수 있는 데이터베이스인 XMLEnabledDatabase(XEDB), 순수 XML 데이터베이스인 NativeXMLDatabase(HXD).
관계형 데이터베이스에서 XML 지원의 1세대는 관계형 테이블에 맞게 문서를 분할(또는 분해)하거나 문서를 문자 또는 CLOB 또는 BLOB(Binary Large Object)으로 그대로 저장하는 것이었습니다. 두 방법 모두 XML 모델을 관계형 모델로 강제 변환하려고 시도합니다. 그러나 두 방법 모두 기능과 성능 면에서 상당한 제한이 있습니다. 하이브리드 모델은 DOM과 유사한 모델에 XML을 저장합니다. XML 데이터는 빠른 탐색 및 쿼리 실행은 물론 단순화된 인덱싱을 위해 버퍼링된 데이터 페이지로 형식화됩니다.
여기서 가장 먼저 추천해드릴 XML 데이터베이스는 Sedna입니다. 영구 스토리지, ACID 트랜잭션, 인덱싱, 보안, 핫 백업, UTF8 등을 포함하여 모든 기능을 갖춘 핵심 데이터베이스 서비스를 제공하는 원본 XML 데이터베이스라고 주장합니다. W3C XQuery 사양을 구현하고 전체 텍스트 검색 및 노드 수준 업데이트 작업을 지원합니다.
두 번째 XML 데이터베이스는 BaseX입니다. 이 데이터베이스는 압축된 XML 데이터를 저장하는 데 사용되며 효율적인 XPath 및 XQuery 구현을 제공하는 동시에 프런트 엔드 작업 인터페이스도 제공합니다.
인벤토리: 오픈 소스 커뮤니티의 무료 데이터베이스 소프트웨어
세 번째 권장 사항은 XMLDB입니다. 이 데이터베이스는 관계형 데이터베이스를 사용하여 임의의 XML 문서를 저장하므로 문서 검색 속도가 매우 빠르며 XSL 변환 실행도 매우 빠릅니다. XMLDB는 웹 애플리케이션에서 사용할 수 있는 PHP 모듈도 제공합니다.
네번째 추천은 X-Hive/DB입니다. 이는 고급 XML 데이터 처리 및 저장 기능이 필요한 소프트웨어 개발자를 위해 설계된 강력한 독점 XML 데이터베이스입니다. X-Hive/DB Java API에는 XML 데이터를 저장, 쿼리, 검색, 변환 및 게시하는 방법이 포함되어 있습니다.
전통적인 관계형 데이터베이스와 비교하여 XML 데이터베이스는 다음과 같은 장점이 있습니다. 첫째, XML 데이터베이스는 반구조화된 데이터에 효과적으로 액세스하고 관리할 수 있습니다. 예를 들어, 웹 페이지 콘텐츠는 일종의 반구조화된 데이터이며 기존 관계형 데이터베이스는 웹 페이지 콘텐츠와 같은 반구조화된 데이터를 효과적으로 관리할 수 없습니다. 둘째, 레이블과 경로에 대한 작업을 제공합니다. 전통적인 데이터베이스 언어는 데이터 요소의 값에 대한 작업을 허용하지만 요소 이름에 대한 작업은 허용하지 않습니다. 반구조적 데이터베이스는 경로 작업을 포함하여 태그 이름에 대한 작업을 제공합니다. 셋째, 데이터 자체가 계층적 특성을 갖는 경우, XML 데이터 포맷은 데이터의 계층적 특성을 명확하게 표현할 수 있으므로 계층적 데이터의 운용을 용이하게 한다. XML 데이터베이스는 복잡한 데이터 구조를 가진 데이터 세트를 관리하는 데 적합합니다. 정보가 XML 형식으로 저장된 경우 XML 데이터베이스는 문서 저장 및 검색에 도움이 되며 편리하고 실용적인 방법으로 문서를 검색할 수 있으며 고품질의 전체 정보를 제공할 수 있습니다. -텍스트 검색 엔진. 또한 XML 데이터베이스는 이기종 문서 구조를 저장 및 쿼리할 수 있으며 이기종 정보 액세스를 지원합니다.