편집자 참고 사항: 클라우드 컴퓨팅 개인적인 경험에서 몇 년 동안 업계에에서 종사 하는 리 우 빌 기여 (마이크로 블로그 @ 리 우 빌 생활 로드)에서이 문서와 일부 Google Jingdong 및 다른 회사 클라우드 컴퓨팅 건축가 무엇입니까 "공유 데이터베이스." 분석을 위한 요약의 경험을 공유 하
공유 데이터베이스는 무엇입니까
"공유 데이터베이스"에 대 한 이야기, 가장 혼란 스러운 것은 "공유" 세 단어. "공유" 우리가 생각 하는 반대말 "독점"의 수 있습니다. 네, 공유 데이터베이스는 사용자의 소유권을 기반으로 데이터베이스 명칭의 종류 리소스. 그것은 동반 구름 오는 후 목적, 그리고 일반적으로, 그들의 자신의 서버에 대 한 리소스를 저장 하는 데이터베이스 혁신의 밖으로 또는 컴퓨터에 설치 하는 것은 공유 데이터 라는 "독점 데이터베이스." 하지 많은 사람들이 공유 데이터베이스의 특성을 이해 하지 않는 그 후에 간단히 소개 합니다.
공유 데이터베이스와 독점 데이터베이스 간의 특성의 비교
공유 데이터베이스를 도입 하기 전에 분석 "독점 데이터베이스." 라고 전용 데이터베이스는 이름에서 알 수 있듯이, 독점은 그들의 자신의 데이터베이스 모든 데이터베이스 전용 데이터베이스 호출 해야 비교, 이므로 작은 전용 데이터베이스 개념을가지고 우리는 구름 밖으로 나온, 전에.
"독점 데이터베이스" 예, 우리는 한 조각의 토지 (이것은 주소와 같은 데이터베이스와 포트 번호), 토지의이 작품에서 집을 지을 때 창 고 (우리가 만든 데이터베이스와 유사), 우리를 사용 하 여 방 (방식과 유사 하 게 테이블을 만들 수 있습니다 우리가) 집에 있는 것 들을 저장.
및 "공유 데이터베이스" 자원을 저장, 출생, 많은 사람들이 함께 사용 하는 건물, 개발자의 비용을 절감 하 이지만이 건물은 특정 개인 고용주의 자산입니다. 클라우드 플랫폼 세계에서 고용주는 클라우드 데이터베이스 제공자 및 그들을 사용 하는 사람들 "거주자" 라고 데이터베이스를 사용 하는 우리가 함께,이 건물은 모두, 혼자, 당신과 당신, 한 세 입자 때문에 테이블을 만드는, 테이블의 사용 권한 수정 하지만 하지 데이터베이스 만들기, 데이터베이스 사용 권한 수정 권한이 있는.
물론, 당신의 방을의 일부 레이블, 이름을 걸릴 줄 것 이다, 아무개 (이름은 나중에 데이터베이스를 사용 하는 이름), 그리고 귀하의 객실은 완전히 다른 사람들 로부터 격리, 문제의 개인 정보 노출 없이.
공유 데이터베이스의 거주자는 그들에 부과 됩니다 때문에 임대 저렴 또는 심지어 무료입니다. "주문형" 일반적인 기능은 클라우드 플랫폼의 데이터베이스 테이블은 전용 데이터베이스를 사용 하 여 과거에서 데이터를 저장 하는 데 사용 됩니다 같은 것 들을 저장 하기 위한 객실 이므로 당신은 클라우드 데이터베이스를 구입, 일회성 투자 처럼 집을, 구매 절감의 평생을 보낼 하지만 당신이 정말 당신의 물건을 저장 공간이 필요 합니까?
만약 당신이 음식, 당신은 당신이 얼마나 많은 것 들 알 수 없습니다. 공유 데이터베이스의 탄생 해결이 문제가, 일반적으로, 얼마나 많은 것 들을 당신이, 얼마나 많은 방 임대, 집주인 얼마나 당신을 청구. 이 수요에 지불을 이라고 합니다. 등 바이 배, 시 나의 성폭력, 베이징 동쪽 클라우드 같은 서비스와 많은 클라우드 플랫폼을 확인 하 고 있습니다. 현재 데이터베이스는 공간에, 또한 유량 계 요금에 따라 공간 결제에만 따라 아닙니다.
현재, 다른 회사 공유 데이터베이스 기술 구현의 치료에서 회사는 다른 기술 및 아키텍처, 그래서 수 없습니다 채택 하나 난 단지 짧게 그것의 수용의 공유 데이터베이스의 일반적인 특징 정리:
(참고:이 내 손으로 그린 건축의 지도, 문제를 설명 하 고 그릴에 데이터베이스 실제 스키마를 대표 하지 않는다)
1 거주자 격리입니다. 반드시 동일한 데이터베이스 인스턴스를 공유 하는 여러 명의 거주자는 효과적인 절연 구성표를 다른 사용자 액세스에 영향을 미치는 사용자가 느린 쿼리 요청 또는 악의적인 요청을 방지 하기 위해 필요 합니다. 여기에 구현 된 격리 사전 계약 요청을 실행 하 고 악의적인 요청을 차단 하 고 다른 사용자의 요청에는 영향을 사용자가 필요한 리소스에 사용자가 액세스 하는 데이터 테이블의 인덱스 정보 jproxy 레이어를 통해 모든 사용자의 액세스를 차단 하는. 정확 하 게 각 사용자의 리소스, 연결, 메모리 사용, 수를 사용 하 여 사용자에 대 한 전체 시스템의 사용을 제어 하기 위해 동시에 디스크 공간 사용량, 대역폭 흐름, 등 효과적인 기록 및 모니터링 및 제어 할 사용자의 할당량에 따르면.
2 높은 일관성 클러스터 라우팅 정보 보호입니다. 전체 클러스터 고전 약하게 중앙된 클러스터 구조를 채택 하 고 클러스터의 고성능에 맞게 동시에 충분 한 제어력을가지고, Jmanager 전체 클러스터 라우팅 정보를 관리 하 고 라우팅 변경, Jmanager는 먼저 자신에 게 라우팅 변경 정보를 동기화 하는 경우 여러 명의 슬레이브를 통해 실패의 단일 지점에서 방지 노예, 및 모든 jproxy 다음 그들은 삭제 됩니다 때 라우팅 변경의 jmanager를 피하고 동기화 됩니다.
3 높은 가용성 보호입니다. 전반적으로 모든 클러스터 노드는 단일 지점, 사용자의 데이터베이스 됩니다 높은 가용성, 동물원의 사육 담당자는 라이브러리의 소유자 끊지, 도서관, 그리고 바인드 IP를 라이브러리에서 부동에서 자동으로 전환 됩니다, 사용자의 서비스에는 영향을 미치지 것입니다. (유동 IP 어떤 의미를 알고, 건축가 친구를 검색할 수 있습니다, 그리고 여기 피곤 문을 만들지 않습니다 되 고 싶어요)
4 사용자 데이터베이스 원활한 업그레이드 확장입니다. 사용자의 데이터베이스 데이터는 지정 된 할당량을 넘어 성장 때 사용자 데이터베이스를 업그레이드 하도록 선택할 수 있습니다 그리고 시스템 자동으로 리소스 풀 사용에 따라 더 많은 유휴 인스턴스에 사용자 데이터베이스를 마이그레이션합니다 마이그레이션 중 사용자의 서비스 영향을 주지 않습니다. 사용자의 자동 스냅의 타이밍을 통해 데이터베이스, 데이터베이스 사용자가 증분 백업, 마이그레이션 달성 있도록 Binlog 동기화 도구와 함께 작업을 완료 하려면 이러한 도구에의 지 이기도 합니다.
사용 외에이 집 언급 하지 데이터베이스 사용 하 여 만들기, 5 형 데이터베이스 데이터베이스 작업 구문의 잠재적인 보안 위험을 jproxy 통해 보안 고려 사항에 따라 제한 됩니다, 다른 사람 또한 사용 되 고, 이러한 몇 가지 또는 객실 수십만 그냥, 당신은 당신은 속일 수에 몇 가지 또는 객실 수십, 당신은 다른 사람의 방에 갈 수 없어!
클라우드 컴퓨팅, 기업, 기업 팀, 가져 개인의 편의 위해 컴퓨터 룸의 건물의 출현을 구입 하거나 임대 서버 환경, 미들웨어, 응용 프로그램, 도메인 이름의 배포를 빌드하고 시대의 자원과 인력을 많이 낭비를, 난 가까운 장래에 있습니다 점차적으로 멀어지; 편리 하 고 빠른 인터넷 서비스 클라우드 플랫폼의 소프트웨어 서비스 시장, 미래 및 공유 데이터베이스는 점차적으로 새로운 내일에 맞게 해당 값을 반영, 관련 재능 필요 따라 것입니다. 난 중국의 클라우드 컴퓨팅 개발에 대 한 광대 한 공간, 서비스에 대 한 더 많은 사람들이!
(책임 편집기: Mengyishan)