2015-01-01から1ヶ月間の記事一覧
基本 特徴 完全非同期のノンブロッキング Actor/Futureベース ハイパフォーマンス ライトウェイト モジュール テスト可能 モジュール sprayはフレームワークという扱いにはしたくないようで, sprayはライブラリのスイートと言っている. spray-xxxのように…
ScalaのWAFはいっぱいあるようだがどれがいいか調べてみた.ここを参考にGoolg Trendで検索.トレンドが皆無なものは除去してトレンドがこんな感じ. 全体トレンド play >> spray > lift >> others 最近 spray > lift 全体ボリューム play > lift >> spray >…
ooyalaの記事だと,json4sを推奨していた. パフォーマンス比較もしている. json4s jacksonとnative(pure scala)がある. json4s-jacksonを使う. Producing Json 基本的に (key -> value) ~ (key -> value) のように,kvのペアを結合していく ProcudeJsonSa…
現時点で,2.1が2系最新だが3系が出た. ここでのまとめは,2.1.0のドキュメントを参考にしている. 基本 Collection-likeにqueryを扱える.普通のSQLも扱える. サポートしてるDB 詳しくはここDriver Capabilities DB2 (via slick-extensions) Derby/JavaDB…
Cask経由でflycheckを入れるとsyntax checkerはflake8になっているよう. flake8のデフォルトの設定だと警告を出し過ぎて,目に良くないので抑制する設定. $ vi .config/flake8 [flake8] ignore = E226,E302,E303,E41,C0326,W0621,C0111,C0103,W0702,W0703,…
関数の引数に"f: => R"を入れて,関数内で名前で呼び出す( = call-by-name) こうするとブロック,値を渡せる scala> def foo(f: => String) = {println(f)} scala> foo {val x = "10"; x} scala> foo ("10")
基本 Eclipse + Scala開発で,Testをするのにどうしたらよいのか. 簡単にまとめた. Scala Test Installation Scala IDE for Eclipse この手順は,多分いらない. market placeから取得するScala IDEではScala Test Pluginがはいってないよう help -> insta…
関数リテラルを受けとる関数で,関数内で関数リテラルに引数を指定せずに,関数リテラルを実行する. val a = 2 val b = 3 val n = 10 def func(n: Int, f: (Int, Int) => Int) = {n * f(_: Int, _:Int)} プレイスホルダーを使う.関数が返ってくるのでそれ…
ScalaでLinear Algebraic操作ということでMLlibも使ってるbreezeを触った. 用語 Broadcasting column-wise, row-wiseの操作をしたい時 Linear Algebra Cheating https://github.com/scalanlp/breeze/wiki/Linear-Algebra-Cheat-Sheet を見る 注意する点 カ…
導入 Scala2.10からreflectionの機能が拡張された Scala 型とジェネリックスに対する完全な実行時リフレクション マクロ という形でコンパイル時リフレクション機能 Scala の式を抽象構文木へとレイファイ (reify) する機能 記事からの引用 他の JVM言語同様…
導入 サーバプロビジョニングにおけるOrchestration/Configurationに相当 chef/capistrano/fabric/pdshに代替可能 冪等性があるが半自動(ユーザがファイルの有無で条件付する)のモジュールもある 基本 host/playbook/moduleで構成される host ini形式でhost…
Spark on YARNのまとめ Sparkのアーキテクチャとしてクラスタマネージャーはプラッガブル. Spark Standalone 登場人物/役割の総括 Master/Slave (or Wokrer) クラスターマネジャー Driver SparkContextを持っているmainクラス Executor ワーカーで起動され…
YARN SparkのYARN-modeを使うかもしれないので基本をメモ. 1つのJob, DAG of JobsなどのApplicationをクラスターで実行させることが可能 Applicationは,MapReduceに限らない JobTrackerの役割をリソースマネジメントとスケジューリング/モニタリングに分割…
基本 http://www.slideshare.net/sifue/akka-39611889が超わかりやすい. 並列処理の基本とJavaのconcurrent packageとを引き合いにして, Akka Documentをかなり完結にまとめている. Akkaとは 状態とアドレス,MailBoxをもった1つのThreadであるActorを提…
Scala でdef main書かなくてもいいのを知らなかった.いままで object SampleApp { def main(args: Array[String]) = { // processing somthing } } あるべき姿 object SampleApp extends App { // processing somthing
Call by nameでクラスを呼ぶのは,Javaでは簡単 Class clazz = Class.forName(className); clazz.newInstance() しかし,classNameがシングルトンだったらどうなるかというと, 普通シングルトンのコンストラクタはprivateなのでException発生.ではどうする…
序論 2011の記事では,Facebook/Twitterが使っているらしい Facebook (2011) 5億人規模 150Tバイト以上のデータ量 ユーザメッセージの検索機能(Inbox Search) 150ノードのCassandraクラスタ 基本 CAP定理のAPを満たす Cに関しては,遅延とのトレードオフで…
Emacsでコード書くときのプロジェクトマネジメントツール yasnippetやflycheck等の便利ツールをバンドルで入れてくれる. 今まで知らなかったのがばかみたい. Installation (ubuntu14.04) $ curl -fsSkL https://raw.github.com/cask/cask/master/go | pyth…