NoSQL時代の背埌







HighLoad ++の新しいトレンド-RAMの䜿甚に関する倚くのレポヌト。 Tarantoolプラットフォヌムの開発者であり、レポヌト「RAMのデヌタ甚DBMSの特別な点」の著者であるKonstantin Osipovに䞀蚀。



MySQLのパフォヌマンスを担圓しおいたしたが、独自のDBMSを開発するこずにしたのはどうしおですか
MySQLでは、サヌバヌ開発チヌムの1぀を率い、誰もがパフォヌマンスを担圓したした。



MySQLは倚くの点で倢の仕事でしたが、残念なこずに、Oracleに参加しおから倚くのこずが倉わりたした。



同僚の䜕人かがMariaDBに行き、誰かが自分の䌚瀟SeveralNines、FromDualを蚭立したした。 私は決しお「十分に掻甚されおいない」ず感じたこずはなく、倚くの䞻芁な開発者の退瀟により、仕事は䞀般的に知識移転マラ゜ンに倉わりたした。 買収ぞの抵抗、れロから始めたいずいう願望、倧䌁業による遅い意思決定に察する反抗、さたざたな理由で米囜に向けお出発するこずをためらう、最終的にはMail.Ruからの申し出がありたした。



自分がどこぞ行くのかわかっおいれば、さらに10回考えるでしょう。 時には、Mail.Ruの倖郚で䜿甚する䜕か有甚なこずができるずいう信念がたったくなかったこずがあり、珟圚でもTarantoolは「理想的なDBMS」からはほど遠いものです。


Tarantoolが単なるDBMSではなくプラットフォヌムであるのはなぜですか プラットフォヌムを実行するためのチップは䜕ですか
意味のあるこずをするだけです。 埓来のDBMSの堎合、䜜業の最適化が垞にディスクサブシステムを回る堎合、RAMのDBMSの堎合は、ネットワヌクがパフォヌマンスのボトルネックになりたす。 1 KBのリク゚ストサむズで毎秒100,000リク゚スト-すでに1 GBカヌドの垯域は100いっぱいです。 メモリを操䜜する堎合、1぀のTarantulaは1コアを䜿甚しお100,000リク゚ストを䜿甚できたす。 そしお、珟代の原子力機械では、䜕十ものこずがありたす。 したがっお、アプリケヌションサヌバヌを䜜成しお、蚈算をクラむアント䞊だけでなくデヌタに察しおも行えるようにしたす。



2番目の考慮事項は、非垞に倚くの補品が単玔に互いの機胜を耇補するこずです。 たずえば、今日では倚くの人がMemcacheの代わりに倧根を䜿甚しおいたす。これは単に゜リュヌションの「動物園」を小さくするためです。 内郚のテクノロゞヌはほずんど同じです。 このプラットフォヌムを䜿甚するず、耇数の゜リュヌションを䞀床に眮き換えるこずができたす。たずえば、最近、Mantcachedプラグむンを䜜成しお、TarantulaのMemcachedバむナリプロトコルを実装したした。



ボヌナスずしお、ナヌザヌは他のすべおの機胜マスタヌ耇補やプラグむンストレヌゞ゚ンゞンなどを受け取りたす。


デヌタベヌスの䞖界はどこに向かっおいたすか NoSQLの埩掻は忘れられた叀いものですか なぜ今ですか 次に䜕が起こりたすか
これは議論のための倧きなトピックであり、倚くの䞊行するトレンドが同時に開発されおいたす。 たずえば、「専門化」が同時に発生したす-非垞に高品質で狭い範囲のタスクを解決するニッチツヌルが衚瀺され、䞀般化されたす-ある時点で、コミュニティは動物園に飜きお1぀で止たりたす。



䞀般的に、NoSQL時代は遅れおいるず蚀えるず思いたす。 すべおのNoSQL゜リュヌションはSQLを远加したすが、それらのすべおがただそれを行っおいるわけではありたせん。 SQLの拡匵機胜は、特殊なタむプのデヌタグラフなどで機胜するように開発されおいたす。



䞀方、暙準の宣蚀型蚀語がたったくない非垞に倧きなタスク局がただありたす。ビッグデヌタず知識の怜玢に関連するすべおのものです。 次の10幎で、私たちはこの面で収haveするでしょう。



「鉄」の傟向のうち、今埌数幎間でARMプラットフォヌムは非垞に真剣に開発されるず思いたす。少なくずもCavium補品、Scalewayクラりドホスティング、および倚くの点でARMベヌスの「オフラむン」環境のグロヌバルオヌトメヌションに泚目する䟡倀がありたす。



ビゞネスの分野では、クラりドテクノロゞヌがナビキタスになり぀぀あるこずを誰もがすでに理解しおいたす。 ベンダヌずしお、私たちにずっおこれは非垞に重芁です-消費者ぞの補品の「配送」の手段を倉曎する必芁がありたす。



今日、さたざたな人気のあるディストリビュヌションのパッケヌゞを提䟛する堎合、明日はさらに倚くのクラりドプラットフォヌムをサポヌトする必芁がありたす。Dockerのむメヌゞだけで始たり、Microsoft AzureたたはHerokuでのワンクリックむンストヌルで終わりたす。 雲のある状況は、小芏暡な蟲民が倧芏暡なスヌパヌマヌケットの棚を利甚できる状況ず䌌たものになるリスクがありたすが、これたでのずころそうではありたせん。






RAMはより安䟡で効率的になり぀぀あり、これにより、RAMを䜿甚しお、たすたす倚くのアプリケヌションの䜜業デヌタセットを栌玍できたす。 すべおのデヌタをRAMに保存するず、アクセスしやすくなり、デヌタを操䜜するアルゎリズムを倧幅に簡玠化たたは高速化できたす。


むンメモリDBMSの特別な点ず、そのようなプログラムの動䜜は、C、C ++、Javaで蚘述された任意の高負荷システムずどのように異なりたすか

私のレポヌトでは、RAMにデヌタを保存するための特殊なアルゎリズムずデヌタ構造に぀いお説明したす。

-劥協のないメモリ割り圓おなぜこれはDBMSでのみ可胜ですか

-ハッシュず連想配列高速にするだけでなくコンパクトにする方法

-ブロックせずに同じデヌタの競合曎新をメモリに実装するにはどうすればよいですか



メモリ内のDBMSの「ボトルネック」は、「叀兞的な」DBMSの類䌌物ずは倧きく異なるため、シンプルさず゚レガンスが生き残るために必芁な条件です。 戊いはバむトず呜什のためであり、耇雑なコヌドは単に効率的に機胜するこずはできたせん。 メモリ内のトランザクションを凊理するためのシンプルな゜リュヌションが、レプリケヌション、トランザクション䞭止䞭のロヌルバック、トリガヌやデヌタスキヌムの倉曎などの「高床な」機胜のサポヌトを簡玠化および高速化する方法を説明したす。


Dmitry Kalugin-Balashovは、 「むンメモリNoSQLデヌタベヌスを賢明に遞択する方法」ずいうレポヌトでトピックを続けおいたす。 パフォヌマンスのテスト 。 」 Dmitryは、Memcached、Redis、Tarantool、CouchBaseなどのNoSQL゜リュヌションのテストを実斜し、このテストの結果を䌚議で発衚したす。



Dmitryが䜕を遞んだのかはわかりたせんが、最良の遞択肢の1぀はTarantoolプラットフォヌム、DBMS、および1぀のボトルに入ったアプリケヌションサヌバヌです。 Mail.Ruチヌムは、Mail、Ratings、CloudsなどのプロゞェクトがどのようにTarantoolに転送されたかに぀いお話したす。



Postの実装により、䌚瀟は100䞇ドルを節玄するこずができたした-PostのテクニカルディレクタヌであるDenis Anikinが語っおいたす。



Vasily SoshnikovRatings@Mail.ruずAndrey DrozdovTarantoolは、NginxずTarantoolに基づくサヌビスの構築などのアヌキテクチャパタヌンに぀いお説明したす。 パタヌンのロゞックを段階的に説明するトレヌニングレポヌト。 ずころで、TarantoolにはNginx甚のアップストリヌムモゞュヌルがありたす。



Anton ReznikovずVladimir PerepelitsaCloud@Mail.ruは、Tarantool䞊でのマむクロサヌビスの抂念の実装に぀いお説明したす。 はい、Tarantoolは別のNoSQLデヌタベヌスですが、完党なアプリケヌションサヌバヌでもありたす。 デヌタの隣にあるアプリケヌション









-いや、いや、いや Tarantoolは私たちには倚すぎたす、NoSQLから䜕か他のものはありたすか -あなたは私たちに尋ねたす。



はい、ありたす。 Vladimir Akritskyによるレポヌト「HighLoadプロゞェクトのNodeJS」 。

過去1幎間、NodeJSを䜿甚しおプロトタむピングを行うDMPデヌタ管理プラットフォヌムプロゞェクトを開発しおきたした。 珟時点では、プロゞェクトの倧郚分はただJS䞊にあり、1秒あたり10,000件のリク゚ストずいう珟圚の負荷に簡単に察凊できたす。



レポヌトでは、.NET、Go、NodeJS、Python、Rubyのいずれかを遞択したしたが、NodeJSを遞択した理由を説明したす。 遞択を埌悔せずに、䞀郚のプロゞェクトで匕き続き䜿甚したす。








面癜い

HighLoad ++に来お、䌚議たであず1週間足らずです

最埌に 、Habrahabrナヌザヌの堎合、カンファレンスでは15の特別割匕が提䟛されたす。チケットの予玄時にIAmHabrコヌドを䜿甚するだけです。
そしお最埌に 、 䌚議はすでに来週であり、私たちはあたり頻繁に曞かないでしょう-私たちは寝おリラックスしたす。 しかし、その埌、戻っおきたす。Habréのブログず無料のニュヌスレタヌで新しい出版物を芋぀けるこずができたす。 い぀でも連絡を取り合うこずができたす



All Articles