Mysql水平分表_MySQL
bitsCN.com
Mysql在数据量大的情况下,会遇到水平分表的情况。
1. 根据业务属性拆表
这种分表方式的算法大致是取模,hash,md5等。
用业务属性拆表,业务关系复杂的情况下,如果要根据其他条件查询,其他的条件都必须和这个属性关联起来,查询条件必须带有这个属性。
例子:
用户profile表根据用户ID取模进行水平拆分。
社区里有群组,群组里有应用,应用有各种类型。可以用群组ID,应用ID拆表。
问题:
根据某个条件查询时无法获取拆表的属性
1) 条件中含有分表的信息
比如用户在某网站下了订单,我们根据用户ID对订单进行了分表,这样用户可以方便地查询他所关联的订单。但用户投诉时,客服需要根据订单号查询订单,订单号中可以含有分表的信息,比如订单拆分成100张表,订单号中可以有两位用来表明该订单处于哪张表中
2) 用key-value store存储对应关联
原理是用key value store做索引表
3) 数据冗余
需要关联的表可以进行数据冗余。避免了查询。
例子:
购买礼品。购买虚拟礼品时,我们根据了购买者的ID进行了拆表,同时订单号中也含有了分表信息。但是用户还可能根据被赠送方进行查询,这时我们可以在购买成功后为被赠送方冗余生成一条记录。
4) 缓存,NOSQL
和数据冗余类似。例子中提到的群组应用的拆表例子,我们已经按照群组ID和应用类型进行了分表。但是当我要查询最近所有类型的应用时,就遇到困难了。我们需要把该群组的所有应用类型都查询一遍,而且还要再进行排序,分页等等。其实,可以用缓存的方式存储最近几百条应用。
2. 根据时间拆表
当表的关系比较复杂时,无法根据某个维度进行分表。但是有明显的时效性。
例子:
想必大家都用微薄,某人发的微薄,会被推送到千家万户。所以某条微薄是无法根据用户ID进行分表查询。而微薄是有很强的时效性的。一年前的默认的动态信息是不会再关心的。我们把微薄按时间分表,三个月一张表。而行级缓存(memcached)只存储了一个月。用户微薄收件箱(微薄ID列表)一般都是限长的。当缓存服务器重启或不命中时,需要查询Mysql,mysql按时间分表,缓存不命中的情况下,大部分情况下都是查近三个月的微薄。所以近1年的微薄我们可以存储在物理资源比较好的数据库服务器上。
3. 根据自增长ID拆表
这种分割法不是取模分,而是每张表存指定量的数据。如果数据量到了,就存放到新表中。这样可以完全控制每张表的数据量。关系非常简单并且有时效性的情况下可以用。
4. 数据迁移的方式
当一些很久之前的数据,很少再查询。比如员工工资表,我们可以只存今年的工资情况。而历史数据我们可以迁移到一张salary_old表中,保证数据不会丢失。但也可以用来查询。
分库的原理也类似。
by 第零空间 bitsCN.com

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











MySQL과 TiDB: 어느 것이 귀하의 비즈니스에 더 좋습니까? 인터넷과 빅데이터의 급속한 발전으로 인해 데이터 저장 및 관리는 기업 비즈니스의 중요한 부분이 되었습니다. 적합한 데이터베이스 솔루션을 선택할 때 많은 기업은 MySQL과 TiDB라는 두 가지 선택을하게 됩니다. 이 기사에서는 MySQL과 TiDB의 기능과 장점을 비교하여 어느 것이 귀하의 비즈니스에 더 적합한지 결정하는 데 도움을 드립니다. MySQL은 1995년에 탄생한 오픈 소스 관계형 데이터베이스 관리 시스템입니다.

서문: ChatGPT는 최근 정말 큰 인기를 끌고 있으며, ChatGPT와 관련된 AI 서비스도 본격적으로 연구되고 있습니다. 오늘은 ChatGPT를 코딩에 적용하는 방법을 살펴보겠습니다. 최근 ChatGPT 기술을 통합한 "AI Coding Assistant"라는 IntelliJ IDEA 플러그인이 실제로 작동하는지 살펴보겠습니다. 미래에는 이것이 우리 프로그래머의 작업을 대체할 수도 있습니다. 플러그인 설치 플러그인 사용을 시작하려면 OpenAI 토큰이 있어야 합니다. 어디서 찾을 수 있는지 모르신다면 https://platform.openai.c에서 찾으실 수 있습니다.

통합 통신 서비스는 통신 기술과 정보 기술을 통합하여 중국 모바일 휴대폰 사용자, IMS 유선 사용자 및 기존 유선 사용자에게 음성, 팩스, 화상 통화, 단일 번호 연결 및 기타 서비스를 제공할 수 있음을 의미합니다. , 세 가지 서비스를 통합할 수 있습니다. 클래스 사용자는 통합 V 네트워크 서비스를 제공하기 위해 네트워크로 통합되어 사용자가 네트워크 간, 지역 간, 터미널 간 통합 통신을 달성할 수 있습니다.

좋은 소프트웨어는 프로그램 분석이나 오류 감지로 발견되는 것이 아니라 올바른 사람이 만드는 것입니다. 그래프는 점점 더 중요한 컴퓨팅 개체가 되었습니다. 그래프 구조는 그룹 관계를 추상화한 것이며 풍부한 개체와 관계를 설명할 수 있습니다. 그래프 컴퓨팅의 핵심은 데이터를 그래프 구조로 모델링하는 방법과 문제의 해를 그래프 구조에서 컴퓨팅 문제로 변환하는 방법입니다. 문제에 상관 분석이 포함된 경우 그래프 컴퓨팅이 자연스럽게 문제에 대한 솔루션을 만들 수 있는 경우가 많습니다. 그래프 구조에 대한 일련의 연산과 계산으로 표현됩니다. 예를 들어, 웹 페이지 링크의 그래프 구조를 기반으로 하는 페이지랭크(PageRank) 알고리즘은 웹 페이지의 가중치를 구하는 데 사용되며, 이는 검색 엔진 순위의 기준으로 사용됩니다. 그래프 구조의 사용자 행동 데이터는 정확한 값을 구하는 데 사용됩니다. 집단 선호도 분석 및 개인화된 상품 추천 결과를 제공합니다. 1. 플로팅이란 무엇인가?

1. 문제점과 과제 그림에서 볼 수 있듯이 2017년부터 vivo의 머신 규모와 서비스 수가 크게 늘어났다. 머신 규모 측면에서는 2017년부터 2022년까지 약 5배 증가했고, 서비스 수도 기본적으로 10배 이상 늘어났다. 규모가 커짐에 따라 과제와 복잡성은 확실히 증가할 것입니다. 생체 내 일반적인 과제는 주로 변경 과제와 실패 과제로 구분됩니다. 1. 변경 과제 변경에는 여전히 다소 수동 변경 시나리오가 있습니다. 단일 릴리스 시간은 상대적으로 길며 Google SRE에는 다음과 같은 개념이 있습니다. 70% 실패는 변경으로 인해 발생합니다. . vivo에서는 이러한 상황이 존재합니다. 이 변경 사항은 온라인 안정성에 영향을 미칩니다.

ChatGPT가 실제로 인간을 대체하기 시작했습니다! 미국 포춘(Fortune) 잡지 웹사이트는 최근 직업 조언 플랫폼인 Resumebuilder.com이 ChatGPT를 사용하고 있거나 사용할 예정인 비즈니스 리더 1,000명을 대상으로 설문 조사를 실시했다고 보도했습니다. 결과에 따르면 미국 기업의 거의 50%가 ChatGPT를 사용하기 시작했습니다. 약 절반은 ChatGPT가 회사의 직원을 교체했다고 말했습니다. 물론, 오기로 되어 있던 것이 왔습니다! 미국 기업의 절반이 ChatGPT를 사용하고 있습니다. 이러한 비즈니스 리더를 대상으로 한 설문 조사에 따르면 ChatGPT는 회사 비즈니스의 거의 모든 수준을 포괄합니다. 기업이 ChatGPT를 사용하는 이유는 코드 작성에 66%, 카피라이팅에 58%, 고객 사용에 57%로 다양합니다.

제목: ByteDance는 비즈니스에 Golang을 사용합니까? 탐색 및 사례 분석 현재 인터넷 산업에서 Golang은 효율적이고 간결하며 우수한 동시성 프로그래밍 언어로서 점점 더 많은 회사에서 선호되고 있습니다. 그중 콘텐츠 공유와 짧은 동영상을 주요 사업으로 하는 ByteDance도 기술 스택에 Golang을 사용합니까? 이 기사에서는 비즈니스에서 ByteDance의 Golang 사용을 살펴보고 특정 코드 예제를 통해 이를 분석합니다. ByteDance의 Golang

이 기사는 AI New Media Qubit(공개 계정 ID: QbitAI)의 승인을 받아 재인쇄되었습니다. Silicon Valley Bank의 붕괴로 영향을 받은 기술 기업들은 조금 더 숨을 쉴 수 있게 되었습니다. 한편으로는 기술 업계의 부유한 사람들이 도움을 주기 위해 나섰습니다. ChatGPT를 운영하는 OpenAI의 CEO인 Sam Altman은 급여를 지불할 수 없는 회사에 총 100만 달러 이상의 재정 지원을 제공한 것으로 드러났습니다. 실리콘 밸리 은행 때문입니다. 그리고 차용증이나 서류도 요구하지 않고 “돈이 생기면 갚아주겠다”고만 하더군요. 반면 미국 규제당국은 이를 보류하겠다는 입장이다. 미국 재무부와 연방준비제도(Fed), 연방예금보험공사(FDIC)가 공동으로 발표한 공동성명에 따르면 실리콘밸리은행은
