실현의 MyCat MySQL은 서브 라이브러리 서브 테이블

의 하위 라이브러리 하위 테이블 MyCat 달성

하위 라이브러리 하위 테이블 프리젠 테이션

서브 라이브러리 해결하기 때문에 서브 테이블 과도한 데이터베이스 성능을 데이터 리드 큰 데이터 테이블로 구성된 여러 별도의 데이터베이스 원본 데이터베이스에 문제 분할하는 이러한 단일 데이터베이스 것으로, 데이터 테이블들로 분할되고, 하나의 데이터 테이블 그래서 같은 적은 양의 데이터는 데이터베이스 성능 향상의 목적을 달성한다. 이 서비스의 마이크로 아키텍처의 상승으로, 우리는 독립적으로 서비스를 제공 할 수 많은 작은 응용 프로그램에 큰 컷의 응용 프로그램에서 전체 응용 프로그램이 있습니다. 각 응용 프로그램은 자체 데이터베이스가 있습니다.

두 데이터 포인트로 절단 :

수직 분할 : 서비스 모듈에 따라 분할 될 다른 데이터베이스로 절단 테이블의 다른 모듈.

수평 분할 : 특정 분할 규칙에 따라 큰 테이블, 다른 테이블 또는 다른 라이브러리로 광고 컷 따른한다.

수직의

세로 테이블 정의 : 필드의 일부를 각각 저장하는 복수의 테이블로 필드에 따라 상기 테이블 .
그것이 가져다 업그레이드 :
1. 위해 경쟁을 피하기 위해 서로 독립적으로 사용자의 세부 정보와 제품 정보 찾아보기를 볼 수 IO 잠금 테이블의 기회를 줄일 수있다.
2. 작업 효율의 전체 동작은 핫 상품 정보 데이터는 고효율 비효율적 상품 설명 부담하지 않는다.

수직 라이브러리 서비스 분류에 따라 테이블을 참조는 위 다른 데이터베이스에 분산, 각 은행은 다른 서버에 넣어 수 있습니다

그것이 가져다 업그레이드 있습니다 :

명확한 사업 운영 수준을 결합 해결 (1)

2. 다른 비즈니스 데이터 관리, 유지 보수, 모니터링, 확장 등을 위해 등급 수

수평

레벨 하위 테이블이 동일한 데이터베이스에 특정 규칙에 따라 동일한 데이터의 테이블이 여러 테이블로 분할합니다.

그것이 가져다 업그레이드 있습니다 :

하나의 성능 문제에 의해 생성 된 대량의 데이터 표 1. 최적화

2. IO 피할 경쟁 및 잠금 테이블의 기회를 감소
단일 테이블의 과도한 데이터의 문제를 해결하기 위해 내부의 수준 하위 테이블, 하위 테이블에서 데이터의 작은 부분 만이 포함되도록 단일 테이블에 대한 작은 양의 데이터, 검색 성능을 향상시킬 수 있습니다.

레벨 하위 라이브러리를 다른 데이터베이스로 분할 일정한 규칙에 따라 동일한 데이터의 테이블, 각 은행은 다른 서버에 배치 할 수 있습니다.

1. 단일 라이브러리는 빅 데이터, 높은 동시 성능 병목 현상을 해결합니다.

시스템의 안정성과 가용성을 향상합니다.
IO 안정성 충돌의 감소에 반영 감소 잠긴 가용성 부분적 가능한 라이브러리 문제를 말한다.

MyCAT 소개

간단히 말해, myCat입니다 :

· 완전히 오픈 소스, 기업 중심의 응용 프로그램 개발 "큰 데이터베이스 클러스터."

트랜잭션, ACID 지원, MySQL 데이터베이스의 향상된 버전을 대체 할 수

· 엔터프라이즈 급 데이터베이스가 "MySQL의"클러스터로 볼 수있다, 오라클 클러스터웨어는 비싼 대체하는 데 사용

· 퓨전 메모리 캐시, NoSQL이 기술은 많은 새로운 SQL Server 데이터를 HDFS

· 새로운 분산 엔터프라이즈 급 데이터베이스 제품의 기존 데이터베이스와 데이터웨어 하우스 세대의 조합

· 새로운 데이터베이스 미들웨어 제품

MyCAT의 목표는 : 저렴한 비용으로는 "구름"측에 기존의 독립형 데이터베이스 및 애플리케이션의 마이그레이션을 원활하게 할, 비즈니스 상황의 빠르게 성장하는 데이터 저장 및 규모에 해결 데이터 병목 현상.

  MyCAT 아키텍처

 

 

 핵심 개념

L 스키마 : 논리적 데이터베이스를 지정합니다

L 표 : 논리 테이블

L 데이터 노드 : 실제 스토리지 노드

L DataHost : 실제 데이터베이스 호스트

 

 

1.1.1  myCat 문제

리터의  데이터베이스 간은 문제를 가입

비즈니스 분석을 통해 , 다른 라이브러리는 다수의 선택에 쿼리를 조인

글로벌 테이블의 설립 (각 라이브러리는 동일한 테이블을 갖는다)

중복 필드 (데이터베이스가 세 가지 패러다임을 충족하지 않음)

* ER 슬라이싱은 (관계 레코드 라이브러리에 저장되어있는)

라이브러리에서 두 개의 테이블에서 최대 지원 참여

L 분산 트랜잭션 (거래 약한)

강한 일관성 사변 (동기)

최종 일관성 업무 (비동기 생각)

L 분산 기본 키

레디 스 명령 증분

데이터베이스 (생성 된 기본 키)

* UUID

눈송이 알고리즘

Mycat 문제

L의  대용량 데이터 스토리지

쿼리 최적화

  여러 데이터베이스에 대한 Mycat 지원

추천

출처www.cnblogs.com/wu-yi/p/12133353.html