分散R

分散R
開発者HP
安定版リリース
1.2.0 [1] / 2015年10月22日; 10年前 (2015年10月22日
リポジトリ
  • github.com/vertica/DistributedR
書かれたC++R
オペレーティング·システムリナックス
タイプ機械学習アルゴリズム
ライセンスGNU一般公衆利用許諾契約書
Webサイトwww.distributedr.org

分散Rは、 R言語用のオープンソースの高性能プラットフォームです。タスクを複数の処理ノードに分割することで実行時間を短縮し、大規模なデータセットを分析します。分散Rは、分散データ構造、分散データ上で関数を実行するための並列処理プリミティブ、タスクスケジューラ、複数のデータローダーを追加することでRを強化しています。[2]主に機械学習タスクの分散版を実装するために使用されます。分散RはC++Rで記述されており、Rの使い慣れたルックアンドフィールを維持しています。2015年2月現在[アップデート]ヒューレット・パッカード(HP)は、 Verticaデータベースからの高速データローダーなどの独自の追加機能を備えた分散Rのエンタープライズサポートを提供しています[3]

歴史

分散Rは、2011年にIndrajit Roy、Shivaram Venkataraman、Alvin AuYoung、Robert S. SchreiberによってHP Labsの研究プロジェクトとして開始されました。[4] 2014年にGPLv2ライセンスの下でオープンソース化され、 GitHubで入手できます

2015年2月、Distributed RはHPからのエンタープライズサポートとともに最初の安定バージョン1.0に到達しました。[5]

コンポーネント

Distributed R は、R で分散アプリケーションを実装および実行するためのプラットフォームです。R のシンプルさとルック アンド フィールを維持しながら、分散コンピューティング用に R を拡張することが目標です。Distributed R は次のコンポーネントで構成されています。

  • 分散データ構造:分散Rは、配列、データフレーム、リストといったRの一般的なデータ構造を拡張し、複数のノードにデータを格納します。対応する分散Rデータ構造は、darray、dframe、dlistです。colSums、rowSums、nrowなど、Rの一般的なデータ構造演算の多くは、分散データ構造でも利用できます。
  • 並列ループ:プログラマーは、foreachと呼ばれる並列ループを使用して、分散データ構造を操作し、タスクを並列に実行できます。プログラマーはデータ構造と関数を指定してアプリケーションを表現するだけで、ランタイムがタスクをスケジュールし、必要に応じてデータの移動を行います。
  • 分散アルゴリズム: クラスタリング、分類、回帰などの一般的な機械学習およびグラフ アルゴリズムの分散バージョン。
  • データローダー:ユーザーは、Distributed R の構成要素を活用して、異なるソースからデータをロードする並列コネクタを実装できます。Distributed R は、ファイルやデータベースから分散データ構造にデータをロードするための実装を既に提供しています。

データベースとの統合

HP Verticaは、自社のデータベースとオープンソースのDistributed Rプラットフォームとの緊密な統合を提供します。HP Vertica 7.1には、VerticaデータベースからDistribute Rへの高速な並列ロードを可能にする機能が搭載されています。この並列Verticaローダーは、従来のODBCベースのコネクタを使用する場合よりも5倍以上高速です。Verticaデータベースは、データベースへの機械学習モデルのデプロイもサポートしています。Distributed Rユーザーは、分散アルゴリズムを呼び出して機械学習モデルを作成し、Verticaデータベースにデプロイして、データベース内スコアリングや予測に使用することができます。VerticaデータベースとDistributed Rの統合に関するアーキテクチャの詳細は、Sigmod 2015の論文に記載されています。[6]

参考文献

  1. ^ “リリース 1.2.0”. 2015年10月22日. 2018年7月20日閲覧
  2. ^ Venkataraman, Shivaram; Bodzsar, Erik; Roy, ​​Indrajit; AuYoung, Alvin; Schreiber, Robert S. (2013). 「Presto: 疎行列を用いた分散機械学習とグラフ処理」(PDF) .ヨーロッパコンピュータシステム会議 (EuroSys) . 2015年3月1日時点のオリジナル(PDF)からアーカイブ。
  3. ^ Gagliordi, Natalie. 「HP、最新のビッグデータプラットフォームでオープンソースRの拡張性を拡大」ZDNet . 2015年2月17日閲覧
  4. ^ Venkataraman, Shivaram; Roy, ​​Indrajit; AuYoung, Alvin; Schreiber, Robert S. (2012). 「反復処理と増分処理におけるRの使用」.クラウドコンピューティングのホットトピックに関するワークショップ (HotCloud) .
  5. ^ 「HP、ビッグデータ規模の予測分析を提供」hp.com、2015年2月17日。 2015年2月17日閲覧
  6. ^ Prasad, Shreya; Fard, Arash; Gupta, Vishrut; Martinez, Jorge; LeFevre, Jeff; Xu, Vincent; Hsu, Meichun; Roy, ​​Indrajit (2015). 「Verticaにおける予測分析の実現:高速データ転送、分散モデル作成、データベース内予測」ACM SIGMOD International Conference on Management of Data .
  • 公式サイト
「https://en.wikipedia.org/w/index.php?title=Distributed_R&oldid=1268120548」から取得