タグ

ブックマーク / qiita.com/piroor (6)

  • Droongaの分散処理を支える技術:マスター無しでのクラスタ管理 - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 18日目は、16日目に引き続きDroongaの解説です。 Droongaを題材にした過去4回の記事(6日目、7日目、9日目、13日目)では、分散処理の初歩の初歩を解説しました。 それに続くDroongaの基盤部分を紹介するシリーズとして、16日目はノード間の通信プロトコルについて紹介しました。 今回はその続きとして、ノード間でのメッセージ転送における転送先の決定方法と、そのために必要となるクラスタ構成の情報をDroongaではどのように扱っているのかを紹介します。 転送先を決めるのは誰か? 「検索リクエストをレプリケーション内でランダムに転送する」や「更新リクエストを適切なパーティションに転送する」といった動作を行う時、Droongaノードはどのようにして転送先を決定しているのでし

    Droongaの分散処理を支える技術:マスター無しでのクラスタ管理 - Qiita
    kasumani
    kasumani 2014/12/18
    Droongaの分散処理を支える技術:マスター無しでのクラスタ管理 Droongaを題材にした過去4回の記事(6日目、7日目、9日目、13日目)では、分散処理の初歩の初歩を解説しました。 Tags: feedly, ifttt, recently read, saved for later from Pocke
  • Droongaの分散処理を支える技術:通信プロトコル - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 16日目は、13日目に引き続きDroongaの解説です。 Droongaを題材にした過去4回の記事(6日目、7日目、9日目、13日目)では、Droongaの動作の紹介を交えつつ、分散処理の初歩の初歩を解説しました。 今回は、Droongaにおいてそれらの分散処理をつつがなく実行するための基盤となっている、分散データ処理エンジンとしての部分に焦点を当てて、設計や実装の概要を紹介したいと思います。 Droongaクラスタ内での通信の基 これまでの説明の中で何度か、「検索リクエストをランダムに転送する」や「更新リクエストを適切なパーティションに転送する」といったフレーズが出てきたと思います。 これは、実際にはどのような事が起こっているのでしょうか? Droongaの通信プロトコルとメッ

    Droongaの分散処理を支える技術:通信プロトコル - Qiita
    kasumani
    kasumani 2014/12/16
    Droongaの通信プロトコルとメッセージ形式 大量のメッセージを効率よく送れるという理由と、当初はfluentdのプラグインとして実装されていたという歴史的経緯から、Droongaクラスタ内のノード同士はfluentdプロトコルでメッセ
  • Droongaで理解する、分散処理の基本のキ:検索クエリの分散と結果の集約 - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 13日目は、9日目に引き続き、Droongaを肴にした分散処理の初歩の初歩の解説です。 ここまで、分散の3つのメリットを解説してきました。 負荷の分散により、1台のマシンの性能の限界を超えた処理が可能になる。 リスクの分散により、可用性が高まる。 データの分散により、今までは扱いきれなかった量のデータを扱えるようになる。 1つ目のメリットについては6日目の記事、2つ目のメリットについては7日目の記事で解説しました。 最後の3つ目のデータの分散については、9日目の記事で大まかな概念を解説しました。 この記事ではその後半として、検索クエリの分散と結果の集約について解説したいと思います。 検索結果の集約 前回の記事では、Droongaではデータを分散して格納しているパーティション群を対象

    Droongaで理解する、分散処理の基本のキ:検索クエリの分散と結果の集約 - Qiita
    kasumani
    kasumani 2014/12/14
    Droongaで理解する、分散処理の基本のキ:検索クエリの分散と結果の集約 こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 13日目は、9日目に引き続き、Droongaを肴にした分散処理の初歩の初歩の解説です。
  • Droongaで理解する、分散処理の基本のキ:データの分散 - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 9日目は、7日目に引き続き、Droongaを肴にした分散処理の初歩の初歩の解説です。 最初に、分散には以下の3つのメリットがあると述べました。 負荷の分散により、1台のマシンの性能の限界を超えた処理が可能になる。 リスクの分散により、可用性が高まる。 データの分散により、今までは扱いきれなかった量のデータを扱えるようになる。 1つ目のメリットについては6日目の記事、2つ目のメリットについては7日目の記事で解説しました。 この記事では最後の3つ目のデータの分散について解説したいと思います。 データの分散が必要になる場面 前の記事で、Groongaには一定時間内に処理できるリクエスト数(スループット)に上限があるという話をしましたが、実はもう1つの上限があります。 それは、扱えるデータ

    Droongaで理解する、分散処理の基本のキ:データの分散 - Qiita
    kasumani
    kasumani 2014/12/09
    データの分散 パーティション単位でのデータの格納 レプリケーションが行われているクラスタ(前の記事で解説したような構成)では、更新リクエストはすべてのノードに転送されていました。 一方、パーティショニング
  • Droongaで理解する、分散処理の基本のキ:リスクの分散 - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 7日目は、昨日に引き続き、Droongaを肴にした分散処理の初歩の初歩の解説です。 前回の記事では、分散には以下の3つのメリットがあると述べました。 負荷の分散により、1台のマシンの性能の限界を超えた処理が可能になる。 リスクの分散により、可用性が高まる。 データの分散により、今までは扱いきれなかった量のデータを扱えるようになる。 このうちの負荷の分散については、前回の記事で解説しました。 この記事では、「リスクの分散により、可用性が高まる」という点について解説します。 前日の記事では「負荷の分散によって処理能力の限界を超えられる」という事を述べました。 ということは、逆に言えば、「処理能力に余裕がある状況ならば分散する必要は無い」とも言えます。 しかし、分散にはもう1つのメリット

    Droongaで理解する、分散処理の基本のキ:リスクの分散 - Qiita
    kasumani
    kasumani 2014/12/07
    リスクの分散 前日の記事では「負荷の分散によって処理能力の限界を超えられる」という事を述べました。 ということは、逆に言えば、「処理能力に余裕がある状況ならば分散する必要は無い」とも言えます。 Tags: feedly, i
  • Droongaで理解する、分散処理の基本のキ:負荷の分散 - Qiita

    こんにちは。Droonga開発チームの結城(Piro)です。 2014年の11月29日(いい肉の日)に行われた「全文検索エンジンGroongaを囲む夕べ5」では、Droongaの現状について発表をさせて頂きました。 イベントまで足をお運び頂いた皆様、当にありがとうございます。 先の発表では、なるべくDroongaのキャッチーな面をお見せしてアピールしたい!という思いの基、今何ができるのか・どう使えるのか・どの程度の性能なのかということに重点を置いたため、それ以外の事についてはほとんど解説しないままとなってしまいました。 そこで、先の発表で端折った実装面の話を、Groonga Advent Calendar内で補完していきたいと思っています。 といっても、筆者自身、Droongaプロジェクトに関わるまで分散処理という物には馴染みがありませんでした。 ですので、Groonga Advent

    Droongaで理解する、分散処理の基本のキ:負荷の分散 - Qiita
    kasumani
    kasumani 2014/12/06
    負荷の分散 筆者の手元で、少しずつリクエスト数を増やしていってGroongaがどこまでの負荷に耐えられるかを調べる、というベンチマークを実施しました。 結果を見てみましょう。 Tags: feedly, ifttt, recently read, saved for later from
  • 1