『初めてのSpark』を読み始めた (5)

アクション アクションの例. データの全体, 一部をドライバプログラムに返すもの collect(): RDD の内容全体を通常のコレクションとしてドライバに返す count(): RDD の要素数を返す countByValue(): RDD の各要素の要素数を返す take(num): RDD の先頭から …

『初めてのSpark』を読み始めた (4)

変換の例. 基本的な変換 map(): 関数を RDD の各要素に適用した新しい RDD を返す filter(): 関数が真になる要素のみを含む RDD を返す distinct(): 重複する要素を取り除く. ネットワーク上ですべてのデータをシャッフルするため, コストのかかる処理である…

『初めてのSpark』を読み始めた (3)

RDD(Resilient Distributed Dataset)について. RDD(Resilient Distributed Dataset) イミュータブルな分散された要素のコレクション 複数のパーティションに分割されていて, それぞれに対する演算処理がクラスタの各ノード上で行われる 下記の 2 種類の方法…

『初めてのSpark』を読み始めた (2)

次はスタンドアローンアプリケーションの構築. 下記の GitHub リポジトリで色々練習する予定. https://github.com/qwerqwer1111/spark-example 作業内容 SBT のビルドファイルに dependency を追加. libraryDependencies ++= Seq( "org.apache.spark" %% "sp…

『初めてのSpark』を読み始めた

とりあえず, ローカルの開発環境構築から. 環境 OS X El Capitan 10.11.3 作業内容 Mac だと, Homebrew でもインストールできた. $ brew install apache-spark spark-shell を動かしてみる. $ spark-shell ... scala> val lines = sc.textFile("/usr/local/C…

Emacs で Markdown のテーブルを整形する

https://github.com/qwerqwer1111/md-table-formatter Atom の markdown-table-formatter みたいなものが Emacs でも欲しかった. Emacs Lisp で全部実装するのは厳しかったので, shell-command-on-regionで Python のスクリプトを呼び出すようにした. 各行の…

C++でforの多重ループを抜ける

C++

C++(もしくはC)で多重ループを抜けるにあたって, 面白い方法があることを知ったのでメモしておく. フラグを使ったり関数を作ったりするよりも, 場合によっては便利かも知れない. #include <cstdio> int main() { int i_max = 4; int j_max = 2; int k_max = 3; for (</cstdio>…

Microsoft Sculpt Ergonomic Keyboard を Mac で使う

Mac

先日, Sculpt Ergonomic Desktop の US 配列を個人輸入した. Mac で使うにあたっていくつか設定をしたのでメモ. 環境 OS X Mavericks v10.9.3 設定内容 システム環境設定からの設定 Caps Lock を Control に変更 Control が A の左にあったほうが便利なので…

プロンプトの表示が遅い

Mac

いつの間にか, ターミナルを起動してからプロンプトが表示されるまでに数秒かかるようになっていた. ASLログの破損などが原因のようなので, 下記コマンドを実行してすべて削除した後, 再起動して初期化した. $ sudo rm -f /private/var/log/asl/*.asl

Emacs 24.3 のインストール

環境 OS X Mavericks v10.9.2 準備 autoconfのインストール $ brew install autoconfダウンロードと展開 $ wget http://ftp.gnu.org/pub/gnu/emacs/emacs-24.3.tar.xz $ tar xvf emacs-24.3.tar.xz インラインパッチの適用 $ svn checkout http://svn.source…

Flymakeが落ちる

あるソースファイルを読み込むとFlymakeがエラーとなり, 再度開こうとすると今度はEmacs全体が落ちるといったようなことが多々あった. 設定ファイルに以下のように書いてとりあえず解決. (defadvice flymake-post-syntax-check (before flymake-force-check-…

Boost.Python

環境 OSX 10.8.2 clang 4.1 Python 2.7.2 インストール $ brew install boost サンプル /* bpy.cc */ #include <boost/python.hpp> int add(int lhs, int rhs) { return lhs + rhs; } BOOST_PYTHON_MODULE(bpy) { boost::python::def("add", add); } BOOST_PYTHON_MODULE()の引</boost/python.hpp>…

はじめに

メモ用のブログ.