관계형 데이터베이스
처음 도입된 독립 RDBMS 는 MySQL 입니다. 대부분의 친구들은 MySQL 에 대해 이미 잘 알고 있다고 믿는다. 기본적으로 MySQL 의 성장사는 인터넷의 성장사이다. 내가 접촉한 첫 번째 MySQL 버전은 MySQL4.0 이었고, 이후 MySQL5.5 는 더욱 고전적이었다. 거의 모든 인터넷 회사들이 사용하고 있었다. MySQL 은 또한' 플러그 가능' 엔진의 개념을 보급했다. 비즈니스 시나리오에 따라 서로 다른 스토리지 엔진을 선택하는 것이 MySQL 튜닝의 중요한 방법입니다. 예를 들어 트랜잭션 요구 사항이 있는 장면에 InnoDBMyISAM 을 사용하면 장면을 동시에 읽는 데 적합할 수 있습니다. 하지만 지금은 대부분의 경우 InnoDB 를 사용하는 것이 좋습니다. 결국 5.6 이후에는 이미 공식 기본 엔진이 되었다. 대부분의 친구들은 MySQL 이 어떤 장면 (구조화 된 데이터를 지속해야 하는 거의 모든 장면) 에 적합한지 거의 다 알고 있습니다. 군더더기는 하지 않겠습니다.
또한 MySQL5.6 은 멀티 스레드 복제 및 GTID 를 도입하여 장애 복구 및 마스터-슬레이브 운영 유지 관리를 용이하게 합니다. 또한 5.7 (현재 GA 버전) 은 MySQL 의 주요 업데이트이며, 주로 읽기 및 쓰기 성능과 복제 성능이 크게 향상되었습니다 (버전 5.6 은 스키마 수준의 병렬 복제를 구현하지만 의미는 크지 않지만 MariaDB 의 멀티 스레드 병렬 복제는 화려합니다. 많은 사람들이 MariaDB 를 선택하는 것은 이 기능 때문입니다. MySQL5.7MTS 는 두 가지 모드를 지원합니다. 하나는 5.6 과 동일하며, 다른 하나는 binloggroupcommit 기반 멀티 스레드 복제입니다. 즉, 마스터 측에서 동시에 제출된 binlog 도 SLE 측에서 동시에 적용하여 병렬 복제를 수행할 수 있습니다.) 독립 실행형 데이터베이스 기술을 선택한 친구가 있다면 5.7 또는 MariaDB 만 고려하면 되고, 5.6 과 5.7 이 Oracle 에 인수된 이후 성능과 안정성이 크게 향상되었습니다.
데이터베이스 시스템
PostgreSQL 은 매우 오랜 역사를 가지고 있으며, 그것의 전신은 UCB 의 Ingres 이다. 이 프로젝트를 맡은 MichaelStronebraker 는 20 15 년 튜링상을 수상했다. 나중에 이 프로젝트는 BSDlicense 아래의 오픈 소스를 기반으로 하는 Post-Ingres 로 이름이 바뀌었습니다. 1995 년, 몇몇 UCB 학생들이 Ingres 의 SQL 인터페이스를 개발하여 PostgreSQL95 를 공식 발표한 후 오픈 소스 커뮤니티에서 한 걸음 더 성장했습니다. MySQL 과 마찬가지로 PostgreSQL 은 독립적인 관계형 데이터베이스이지만 MySQL 의 SQL 구문과 달리 PostgreSQL 의 SQL 지원은 매우 강력합니다. PL/SQL 은 내장 유형, JSON 지원, GIS 유형 및 복잡한 질의에 대한 지원이 MySQL 보다 훨씬 강력하며 코드 품질면에서 PostgreSQL 의 코드 품질이 MySQL 보다 우수합니다. 또한 PostgreSQL 의 SQL 최적기는 MySQL5.7 이전 버전에 비해 MySQL 보다 훨씬 강력하며 거의 모든 약간 복잡한 쿼리가 MySQL 보다 더 잘 실행됩니다.
최근 몇 년 동안의 추세로 볼 때, PostgreSQL 의 기세도 매우 강하다. PostgreSQL 의 단점은 MySQL 만큼 강력한 커뮤니티와 군중 기반이 없다는 것입니다. MySQL 은 수년간의 발전을 거쳐 많은 운영 및 유지 관리 도구와 모범 사례를 축적해 왔지만, PostgreSQL 은 후기의 쇼로서 디자인이 더 좋고 기능이 풍부하다. 컴퓨터 교육은 PostgreSQL9 이후 버전이 충분히 안정적이어서 새로운 프로젝트 기술을 선택할 때 좋은 선택이라는 것을 발견했다. 또한 많은 새로운 데이터베이스 프로젝트는 Greenplum 과 같은 PostgreSQL 소스 코드를 기반으로 2 차 개발됩니다.