Mysql水平分表_MySQL

Jun 01, 2016 pm 01:43 PM
仕事

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

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQL と TiDB: あなたのビジネスにはどちらが適していますか? MySQL と TiDB: あなたのビジネスにはどちらが適していますか? Jul 13, 2023 pm 03:09 PM

MySQL と TiDB: あなたのビジネスにはどちらが適していますか?インターネットとビッグデータの急速な発展に伴い、データのストレージと管理は企業ビジネスの重要な部分となっています。適切なデータベース ソリューションを選択する場合、多くの企業は MySQL と TiDB の 2 つの選択肢に遭遇します。この記事では、MySQL と TiDB の機能と利点を比較し、どちらがビジネスに適しているかを判断します。 MySQL は、1995 年に誕生したオープンソースのリレーショナル データベース管理システムです。

なんと、ChatGPT は本当に使えるのでしょうか? なんと、ChatGPT は本当に使えるのでしょうか? Apr 13, 2023 am 08:19 AM

はじめに: ChatGPT は最近本当に人気があり、ChatGPT に関連した AI サービスも本格的に研究されています。今日は、ChatGPT のコーディングへの応用を見ていきます。最近、ChatGPT テクノロジを統合した「AI コーディング アシスタント」と呼ばれる IntelliJ IDEA プラグインを発見しました。これがどれほど賢いのか、そして将来的に本当に機能するのかを見てみましょう。プログラマーの仕事に取って代わられる可能性があります。プラグインのインストール プラグインの使用を開始するには、OpenAI トークンが必要です。どこにあるかわからない場合は、https://platform.openai.c で見つけることができます。

コンバージドコミュニケーションサービスとは何ですか? コンバージドコミュニケーションサービスとは何ですか? Oct 21, 2022 pm 03:11 PM

統合通信サービスとは、通信技術と情報技術の統合を指し、中国移動の携帯電話ユーザー、IMS固定回線ユーザー、従来の固定回線ユーザーに音声、FAX、ビデオ通話、ワンナンバーサービスなどのサービスを提供することができます。クラス利用者をネットワークに統合してコンバージドVネットワークサービスを提供することで、ネットワーク間、地域間、端末間を越えた統合通信を実現します。

グラフコンピューティングについて学び、考える グラフコンピューティングについて学び、考える Apr 11, 2023 pm 12:10 PM

優れたソフトウェアは、プログラム分析やエラー検出によって発見されるのではなく、適切な人材によって構築されます。グラフはコンピューティング オブジェクトとしてますます重要になってきており、グラフ構造はグループの関係を抽象化したものであり、豊富なオブジェクトと関係を記述することができます。グラフ コンピューティングの核心は、データをグラフ構造にモデル化する方法と、問題の解をグラフ構造上の計算問題に変換する方法です。問題に相関分析が含まれる場合、グラフ コンピューティングは多くの場合、自然に問題の解を導き出すことができます。グラフ構造に対する一連の操作と計算として表現されます。例えば、Web ページのリンクのグラフ構造に基づく PageRank アルゴリズムは、検索エンジンのランキングの参考となる Web ページの重みを取得するために使用され、グラフ構造のユーザー行動データは、正確な重みを取得するために使用されます。グループの好みの分析とパーソナライズされた製品の推奨結果。 1.プロットとは何ですか?

ビジネスは急激に成長していますが、ユーザビリティの構築はそれほど安定しているでしょうか? ビジネスは急激に成長していますが、ユーザビリティの構築はそれほど安定しているでしょうか? Jun 09, 2023 am 12:17 AM

1. 課題と課題 図からもわかるように、2017 年以降、vivo のマシン規模とサービス数は大幅に増加しました。マシン規模では2017年から2022年にかけて約5倍、サービス数も基本的には10倍以上に増加しています。規模が大きくなるにつれて、課題と複雑さは確実に増大しますが、生体内での典型的な課題は、主に変化課題と失敗課題に分けられます。 1. 変更の課題 変更には多かれ少なかれ手動による変更シナリオがまだあります。当社の 1 回のリリース時間は比較的長いです。大規模なビジネス移行のシナリオが多数あります。Google SRE には次のような概念があります。失敗の 70% は変更が原因です。 。 vivo にもこの状況は存在し、この変更はオンラインの安定性に影響します。

「米国企業の半数が ChatGPT を使用しており、従業員のほぼ半数が AI に置き換えられる可能性があります。」 「米国企業の半数が ChatGPT を使用しており、従業員のほぼ半数が AI に置き換えられる可能性があります。」 Apr 22, 2023 am 11:25 AM

ChatGPT は確かに人間に取って代わられ始めています。米国のフォーチュン誌ウェブサイトは最近、就職アドバイス プラットフォーム Resumebuilder.com が、ChatGPT を使用している、または使用する予定のビジネス リーダー 1,000 人を対象に調査を実施したと報じました。その結果、米国の企業の 50% 近くが ChatGPT を使用し始めていることがわかりました。約半数は、ChatGPT が自社の従業員を置き換えたと回答しました。案の定、来るはずのものは来ました!米国企業の半数が ChatGPT を使用しており、ビジネス リーダーへの調査によると、ChatGPT は企業のビジネスのほぼすべてのレベルをカバーしています。企業が ChatGPT を使用する理由は数多くあり、66% がコードの作成、58% がコピーライティングの作成、そして 57% が顧客の使用のためです。

ByteDance はビジネスで Golang を使用していますか? ByteDance はビジネスで Golang を使用していますか? Mar 19, 2024 pm 05:33 PM

タイトル: ByteDance はビジネスで Golang を使用していますか?調査と事例分析 現在のインターネット業界では、効率的で簡潔かつ優れた同時実行プログラミング言語として、Golang がますます多くの企業に支持されています。その中でも、コンテンツ共有とショートビデオを主な事業とする ByteDance は、技術スタックに Golang も使用していますか?この記事では、ByteDance のビジネスにおける Golang の使用状況を調査し、具体的なコード例を通じて分析します。 ByteDance の Golang

ChatGPT の責任者が企業救済に資金を投入: シリコンバレー銀行の被害に遭った企業を支援するために 100 万ドル、借用書や約束はなし、できるときに返済してください ChatGPT の責任者が企業救済に資金を投入: シリコンバレー銀行の被害に遭った企業を支援するために 100 万ドル、借用書や約束はなし、できるときに返済してください Apr 12, 2023 pm 04:07 PM

この記事はAI New Media Qubit(公開アカウントID:QbitAI)の許可を得て転載しておりますので、転載については出典元にご連絡ください。シリコンバレー銀行破綻の影響を受けたテクノロジー企業は、少しは楽になれるだろう。一方では、テクノロジー業界の富裕層が支援に乗り出している。ChatGPTを運営するOpenAI社のCEOであるサム・アルトマン氏が、給与を支払えない企業に総額100万ドル以上の財政援助を提供していたことが暴露された。シリコンバレー銀行のせいです。そして彼は借用書や書類を要求せず、「お金ができたら返してください」とだけ言いました。一方、米国の規制当局は自制を固守する構えだ。米国財務省、連邦準備制度理事会(FRB)、連邦預金保険公社(FDIC)が発表した共同声明によると、シリコンバレー銀行は

See all articles