TcaplusDB10周年記念浮き沈み

TencentのクラウドデータベースTcaplusDBは、需要が見つからずにほぼ停止されてから、数十億のDAUでデータベース業界のベンチマークをサポートするまで、10年間にわたって風雨にさらされてきました。太陽と月が風と波を突破し、1本の剣が10年で9日間突破しました。数百万行のコードは、うがいをするデータストリームのようなもので、10年後にようやく乗り越えられない堀に収束します。

出発する

2010年頃、QQスペースが非常に人気になり、SNSベースのインタラクティブページゲーム(WebSNS)の人気が高まり、Tencentはページゲームを社内で行う方法を検討し始めました。また、Webゲームの基本技術システムの構築も開始しており、最も重要な成果は、独自の分散データベースTcaplusDBの開発です。MMOGゲームとは異なり、WebSNSゲームは通常、地域全体で提供され、データは一元的に保存されます。一方、ゲームロジックサーバーはピアツーピアであり、Webクライアントは短い接続を介してサーバーと通信します。 、プレーヤーのゲームプロセスとバックエンドの相互作用論理サーバーはいつでも変更される可能性があります。これらの特性により、論理レイヤーでユーザーデータをキャッシュするのは不便です。
さらに、WebSNSゲームには、プレイヤー間の社会的関係に基づいたインタラクティブなシーンがたくさんあります。プレイヤーのインタラクティブな操作には、それに関連付けられた他の複数のプレイヤーのデータの読み取りと変更が必要です。つまり、データの読み取りと書き込みのアクセスの頻度はウェブゲームは高いです。同時オンラインの数に関して、アクセス頻度は実際にはオンラインの数のN倍です。100万のオンラインウェブゲームの場合、プレーヤーの1%がトリガーすると、各プレーヤーには平均50人の友達がいます。同時に友達のアクション、それは500,000のデータアクセスをトリガーする可能性があります。言い換えれば、そのようなシナリオに基づいて、Webゲームのデータベース層は従来のMMOGゲームよりもはるかに高いアクセス頻度をサポートする必要があります。従来のデータベース管理システム(MySQLなど)がまだ使用されている場合、そのような大規模なサポートのコストアクセス頻度が非常に高い。
したがって、ゲームロジックレイヤーと従来のデータベース管理システムの間に高速キャッシュシステムを設定することは、Webゲームにとって非常に重要です。
当時、業界にはすでに高速データアクセスを提供するNoSQL製品が数多くありました。これらのNoSQL製品が特定のシナリオでの使用に優れていることは否定できませんが、サポートされていない、または良くないシナリオや要件がいくつかあります。十分-メモリによって引き起こされる完全なコストの問題や、非同期データの読み取りと書き込みの不十分なサポートなど。
2011年以来、Tencentは独自の分散型ゲームデータベースシステムであるTcaplusDBの開発を開始しました。これはとても美しいビジョンです。しかし、データベースを最初から開発するのはどれほど簡単ですか?2009年以降、多数の新しいNoSQLデータベースが登場し、業界全体でNoSQL革命が始まりました。今では有名なRedisとMongoDBがその年に誕生しました。TcaplusDBの開発は高層ビルの問題であり、外部製品を調査しながら、ゲーム業界の特定のシナリオとニーズを把握し、最小限の製品検証を実行しました。継続的な検証の後、最初のバージョンは2012年の初めにようやくリリースされました。

機会

2012年4月、TcaplusDBは初めて正式にサービスを提供し、Tencentの自社開発Webゲーム「TheKingofNightclubs」をサポートしました。「KingofNightclubs」は、ファッションナイトクラブをテーマに、ナイトクラブの運営を中核に、吸血鬼の要素を取り入れて、テンセントが独自に開発したビジネスソーシャルゲームのシミュレーション版です。
ここに画像の説明を挿入

当時、ほとんどのゲームは「ディビジョンサーバー」の形で、各エリアのプレイヤーが自分でプレイしていました。しかし、ソーシャルシナリオに基づくWebSNSでは、すべての友達が一緒に遊ぶ必要があります。「キングオブナイトクラブ」はその典型的なシーンであり、TcaplusDBの高性能と低コストがプロジェクトチームの支持を得ました。TcaplusDBデータベースを含む新技術の使用のおかげで、「地区全体のフルサービス」を通じた「King of Nightclubs」により、プレイヤーはプールで「戦い」、リアルタイムのパーティーを通じて友人を招待して体験することができます。「TheKingof Nightclub」は、QQgameゲームロビー、宇宙、ゲームライフ、友達など、多くのチャンネルを通じて非常に良い結果を達成しています。
開発プロセスでは、挫折がないわけではありません。2013年9月、Tencentのモバイルゲーム「DailyCool Run」がホットパブリックベータ版になり、QQとWeChatのデュアルプラットフォームログインが開始され、QQとWeChatの友達と遊ぶことができます。いつでも。オンラインになった後、1日足らずですぐにApple AppStoreのベストセラーリストのトップに到達しました。
ここに画像の説明を挿入

パブリックベータの時点で、新しいゲーム「Daily Cool Run」には、内部に100台のサーバーが装備されていました。新しいゲームの場合、これは明らかに非常に豊富な構成です。しかし、「デイリークールランニング」がそんなに人気があるとは誰も思っていなかったし、用意された100台のサーバーがまもなく大容量になるだろう。最後に、複数の部門の調整の下で、拡張された50台のサーバーがまもなく棚に置かれます。ハードウェアが棚にあり、ネットワークが接続され、オペレーティングシステムが適切にインストールされ、TcaplusDBのシステムソフトウェアが迅速に展開されます。
しかし、次のステップは、データの一部を再配置することにより、データベースの収容力の拡張を実現することです。通常のロジックでは、サーバーがメンテナンスのために停止している場合でも、通常の拡張では事前に準備のプロセスがありますが、今回は速すぎました。古いデータベースがストレージ制限に近づいていることを確認すると、そこにプレーヤーが流入します。データ、再配置の速度は、データベースの爆発的な増加を回避するのに十分な速さである必要があります。当時、長年にわたって業界にいたダニエルは、苦笑して言った:「現在の状況によると、データベースは、24時間後に崩壊し、ゲームだけ一時的に停止することができます。」
誰あえてそのような結末に直面する。
24時間は非常に短く、一言で言えば、たくさんのことができます。
その結果、当時のクールなビジネスチームと前進し、お互いに戦いました。ユーザーの訪問の波の影響に耐えるために、再配置ツールを一晩デバッグし、早朝に起動しました。この経験により、私たちはより良いことをする決意です。次の数か月で、私たちは皆、行コードごとに1つのことを繰り返しました。最もよく見られるのは星月夜で、最も酔っているのはコーヒーです。最後に、このデータベースの自動拡張システムは、安定して効率的になるように洗練されています。

育つ

2014年2月、TcaplusDBはストレージエンジンを大幅に最適化し、フルマネージドの分散ストレージサービスを開始しました。
しかし、十分ではありません。
上記の「キングオブナイトクラブ」を覚えていますか?2年以上の開発を経て、「KingofNightclubs」は今やナンバーワンのビジネスソーシャルゲームです。ただし、「The King of Nightclubs」は、古いバージョンのTcaplusDBを使用しています。フルマネージドバージョンのTcaplusDBは、パフォーマンスを大幅に向上させ、サービスの面でプロジェクトチームの利便性を高めました。そのため、「The KingofNightclubs」TcaplusDBのフルマネージドバージョンへの切り替えが推進されました。
ここに画像の説明を挿入

「KingofNightclubs」はオンラインビジネスであり、今回はTcaplusDBを一時停止できないため、新旧のプロトコル、着陸データ形式、データ配信の違いの問題を解決する必要があります。どのチームにとっても、それは大きな課題です。
最終的に、「King of the Nightclub」チームの共同の努力により、データの二重書き込み、プロトコル変換レイヤーの追加、およびデータ整合性検証ツールを使用しました。最後に、サービスの移行が完全に実装されました。この期間に蓄積されたデータ移行計画は、TcaplusDBの非破壊レベルの拡張とロスレスデータ移行機能のその後の製品化の強固な基盤も築きました。

2015年の終わりに、「Glory oftheKing」が正式にテストされました。このゲームの人気は再び皆の想像力を打ち破りました。このゲームは決して満足できない巨大なもののようであり、さまざまな背景リソースを圧倒的に食い尽くしています。このガードゲームは、さまざまなゲームの記録を破りながら、データベースに毎秒新しい記録を作成しています。ゲームの最もクレイジーな波は、通常、週末に発生します。当時を振り返ると、週末が来るとすぐに、家のコンピューターをじっと見つめ、さまざまな数字が激しく舞い上がるのを眺めていました。ようやく初期の技術の蓄積が重宝し、戦いを待っていた技術者たちがようやく歴史を目の当たりにしました。ピークトラフィックを完全に処理する事前設定された統合スケジューリングメカニズムの下で、何千ものサーバーが停止することなく自動的に拡張されます。同年、TcaplusDBは、自動障害復旧、ノンストップサーバーアップグレード、ノンストップサーバー拡張および縮小機能を継続的に開始し、「Everyday Love Elimination」、「National Aircraft War」、「National Assault」、「CFMobile」のサポートに成功しました。ゲーム」、「ナルトモバイルゲーム」などのゲーム。2016年、TcaplusDBは、きめ細かいバックアップとリカバリ、ソフトウェアとハ​​ードウェアのアップグレード、コンピュータールームの廃止と移転、ビジネスに損害を与えないソフトウェアとハ​​ードウェアの障害などのコア機能を次々と導入しました。同時に、単一のビジネスで大量のデータにアクセスする機能を最適化し、堅牢で高性能なデータストレージサービスを提供します。
2017年のランタンフェスティバルガラでは、春節ガラのスケッチ「ゴーイングホーム」で、ホストは「栄光の王」に言及し、チームを緊張させ、興奮させました。そして、絶え間なく急上昇するQPSが眠れない夜を迎えますが、幸いなことに、結局は危険はありません。
同じ年に、TcaplusDBはprotobufデータ形式の定義とアクセスをサポートし、プロトコルはよりオープンになり、業界の使用習慣と互換性がありました。
2018年、TcaplusDBは、究極の高可用性、ロスレスの拡張と縮小を実現し、パフォーマンスを大幅に最適化してコストを削減し、Apiの多言語、マルチプラットフォーム、マルチモード、および使いやすい機能を強化します。続いて「QQSpeed」「LawofInfinity」などになります。このゲームは、高品質のデータストレージサービスを提供します。

開いた

2019年、ゲーム分散システムシナリオでの長年の蓄積と適応性により、TcaplusDBはTencentの完全に自己開発されたNoSQLデータベースとして、正式にTencent Cloud Tcaplusになり、TencentCloudを通じて外部サービスを提供しました。Tencent Cloudの利点を組み合わせた後、Tencent Cloud Tcaplusは、マルチテナンシー、セキュリティ、オープンAPI、および多言語SDKの点で大幅に改善されました。
2020年、NEXONやShanghai Shengquなどのゲームメーカーは、ゲームのコアデータベースサポートビジネスとしてTencent CloudTcaplusDBを選択し始めました。顧客のテストと使用状況のフィードバックによると、TcaplusDBのミリ秒レベルの遅延、数千万のQPS、サブデータベースサブテーブルなしの無制限の水平拡張、きめ細かいリトレースメント、サービス統合、非破壊の柔軟な構成などの機能が非常に役立ちます。 。ゲームビジネス。
Tencent Cloud TcaplusDBのコア機能はお客様に認められていますが、強力な移行サービスについて言及する必要があります。当時、Shanghai ShengquはDynamoDBを使用しており、Shanghai Shengquの技術チームは、開発者がTencent CloudTcaplusDBの使用法と既存のコード移行に慣れていないという問題を解決する必要がありました。通信を通じて、Tencent Cloud TcaplusDBインターフェースの使いやすさが顧客に十分に認識され、既存のコードをTencent CloudTcaplusDBインターフェースに移行する方法に焦点が移りました。両当事者の技術チーム間の通信の後、上海盛趣のアーキテクチャにデータアクセス適応層があります。すべてのデータベースアクセスはこの適応層を通過します。問題は明確で単純になります。Tencent Cloudは技術専門家をサイトに派遣し、Shanghai ShengquのR&Dチームとのコード移行を完了するのにわずか2週間しかかかりませんでした。この時点で、TcaplusDBはパブリッククラウドの顧客に包括的なサービスを提供し始めました。
ここに画像の説明を挿入

2020年12月14日、中国情報通信技術アカデミーは、ビッグデータ製品の機能評価結果の11番目のバッチを正式に発表しました。TencentCloudTcaplusDBは、キー値メモリデータベース機能の評価に合格した最初の分散型NoSQLデータベース製品になりました。
2021年1月に、TcaplusDBコミュニティが立ち上げられます。これは、TcaplusDBが、多数のユーザーや業界パートナーとのコミュニケーションと共同構築を通じて、国内の分散型NoSQLデータベースエコシステムの繁栄を促進し続けることを示しています。

次の10年:業界により多くの支援を提供する

Tencent Cloud TcaplusDBは、創業以来、より多くの開発者にサービスを提供することを目指しており、高性能データベースを使用するR&D担当者向けに、Tencentが社内でテストしたストレージR&Dの経験、ツール、業界リソースを共有しています。将来的には、Tencent Cloud TcaplusDBは国内データベースのリーダーとしてこの道をさらに進み、業界のトレンドに応じてプラットフォームにさらに多様な機能を導入します。同時に、Tencent Cloud TcaplusDBは、業界パートナーと協力してTencentの分散データベースでの経験を共有し続け、マルチモードおよびマルチモードに基づくワンストップの低コストデータ処理機能の研究開発に積極的に投資します。ロード機能。グローバルディストリビューションの要件を満たすため。グローバル化、グローバル同じサービス/マルチアクティブ、クロスドメインデータ移行などの主要なビジネスニーズの解決を支援する機能。
今後10年間で、ゲームで生まれたTcaplusDBは、より多くの業界向けにデータサービス機能を最適化し、独自の強みを提供し続けます。

おすすめ

転載: blog.csdn.net/weixin_44545651/article/details/112800896