FerretDB 1.0이 이미 출시되었으며 다음은 해당 소식입니다.

페렛DB

FerretDB는 사실상 MongoDB의 오픈 소스 대체품이 되기 위해 설립되었습니다.

의 출시 FerretDB 1.0 프로젝트의 새 버전, 애플리케이션 코드를 변경하지 않고 MongoDB의 문서 지향 DBMS를 PostgreSQL로 대체할 수 있습니다. FerretDB는 SQL 쿼리의 MongoDB 호출을 PostgreSQL로 변환하는 프록시 서버로 구현되어 PostgreSQL을 실제 저장소로 사용할 수 있습니다.

버전 1.0은 일반용으로 준비된 첫 번째 안정 릴리스로 표시됩니다. FerretDB의 주요 대상 고객은 응용 프로그램에서 MongoDB의 고급 기능을 사용하지 않지만 완전히 개방된 소프트웨어 스택을 사용하려는 사용자입니다.

현재 개발 단계에서, FerretDB는 MongoDB 기능의 하위 집합을 지원합니다. 일반적인 응용 프로그램에서 가장 일반적으로 사용됩니다. FerretDB를 구현해야 할 필요성은 MongoDB를 AGPLv3 라이선스를 기반으로 하지만 오픈 소스가 아닌 비자유 SSPL 라이선스로 전환하는 것과 관련하여 발생할 수 있습니다. 애플리케이션 코드 자체뿐만 아니라 클라우드 서비스 제공과 관련된 모든 구성 요소의 소스 코드도 포함합니다.

MongoDB의 키/값 데이터와 DBMS에서 작동하는 빠르고 확장 가능한 시스템 사이의 틈새를 차지합니다. 기능적이고 쿼리하기 쉬운 관계형 데이터베이스. MongoDB는 JSON과 같은 형식으로 문서 저장을 지원하고, 쿼리 작성을 위한 상당히 유연한 언어를 가지고 있으며, 저장된 다양한 속성에 대한 인덱스를 생성할 수 있고, 이진 대형 개체의 효율적인 스토리지를 제공하고, 데이터베이스에 데이터 변경 및 추가를 위한 로깅 작업을 지원하고, 작동할 수 있습니다. Map/Reduce 패러다임에 따라 복제를 지원하고 내결함성 구성을 구축합니다.

FerretDB 1.0의 주요 기능

제시된 이 새로운 버전에서는 다음과 같이 강조됩니다. createIndexes 및 dropIndexes 명령이 구현되었습니다. 명령 외에 컬렉션에 하나 이상의 인덱스를 만들고 배치하려면 가져온 결과의 새 조각을 표시하도록 getMore가 구현되었습니다. find 및 add와 같이 커서를 반환하는 명령을 실행하지 않도록 합니다.

새 버전에서 눈에 띄는 또 다른 변경 사항 $sum 집계 연산자에 대한 지원 추가 그룹 값의 합계와 추가된 값을 계산합니다. $limit 및 $skip 연산자 지원 추가할 때 개수를 제한하고 문서를 건너뛰기 위해 $count 연산자에 대한 지원이 추가할 때 개수 문서에 추가되었습니다.

이 외에도 들어오는 문서의 배열 필드를 구문 분석하고 배열의 각 요소에 대한 별도의 문서로 목록을 형성하기 위해 $unwind 연산자에 대한 지원이 추가되었으며 collStats 명령에 대한 부분 지원도 추가되었습니다. dbStats 및 dataSize 수집 및 데이터베이스 통계와 데이터 크기를 가져옵니다.

눈에 띄는 다른 변화 새 버전 :

  • Iterator는 이제 `sort`, `limit`, `skip` 및 `projection`에 사용됩니다.
  • 범프 의존성
  • 리소스 추적 개선 사항
  • `find` 및 `count의 `skip` 인수에 대한 테스트를 추가했습니다.
  • 반복자를 올바르게 닫습니다.
  • 테스트 데이터의 큰 숫자 초기화 개선

최종적으로 그것에 대해 더 많이 알고 싶다면, 당신은 세부 사항을 확인할 수 있습니다 다음 링크에서.

코드에 관심이 있는 사람들은 코드가 Go로 작성되었으며 Apache 2.0 라이선스에 따라 배포된다는 사실을 알아야 합니다.

그리고 그들은 그것을 알아야합니다 FerretDB를 테스트하는 가장 좋은 방법은 수정하여 호스트에서 실행하는 것입니다. (Linux, macOS 또는 Windows) PostgreSQL 및 Docker Compose를 통해 Docker 컨테이너 내부에서 실행되는 기타 종속성 포함.

Linux에서는 도커가 호스트에 설치되어 있어야 합니다. macOS 및 Windows에서는 Docker Desktop을 사용해야 하지만 Windows에서는 배포 없이 WSL 2를 사용하도록 구성해야 합니다. 모든 명령은 호스트에서 실행되어야 합니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.