>  기사  >  백엔드 개발  >  PHP mysql 분산 데이터베이스를 구현하는 방법은 무엇입니까?

PHP mysql 분산 데이터베이스를 구현하는 방법은 무엇입니까?

WBOY
WBOY원래의
2016-10-22 00:14:152258검색

최근에는 수요자의 요구 사항에 따라 분산 데이터베이스 아키텍처를 고려해야 하는 새로운 프로젝트 요구 사항을 작업하고 있습니다. 하지만 저는 이 부분에 대해서는 잘 모릅니다.
분산 데이터베이스는 여러 데이터베이스 서버를 참조하고 비즈니스 코드는 테이블 분할 작업과 유사하게 특정 위치 지정 방법을 사용하여 하나의 데이터베이스에 기록합니까? 아니면 마스터-슬레이브 분산 데이터베이스인가요? 전자라면 서버 위치는 어떻게 정하나요?

답글 내용:

최근에는 수요자의 요구 사항에 따라 분산 데이터베이스 아키텍처를 고려해야 하는 새로운 프로젝트 요구 사항을 작업하고 있습니다. 하지만 저는 이 부분에 대해서는 잘 모릅니다.
분산 데이터베이스는 여러 데이터베이스 서버를 참조하고 비즈니스 코드는 테이블 분할 작업과 유사하게 특정 위치 지정 방법을 사용하여 하나의 데이터베이스에 기록합니까? 아니면 마스터-슬레이브 분산 데이터베이스인가요? 전자라면 서버 위치는 어떻게 정하나요?

  1. 현재 완전하게 사용 가능한 오픈 소스, 무료 MYSQL 분산 데이터베이스 서비스는 없습니다.

  2. 해시, 범위 등을 통해 구현되는 다중 샤딩을 샤딩 기술이라고 합니다.

데이터베이스를 찾는 것은 실제로 매우 간단합니다.

<code class="php">$dbs = array(
    array("host"=>"127.0.0.1:3306"),
    array("host"=>"127.0.0.2:3306") 
);

$choose_db = $dbs[$data["id"] % count($dbs)]; //hash型sharding
//更多的还有range(按自增区间),date(按天,按月等)
//本质上来说,就是把不同的数据路由到不同的服务器。</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.