読者です 読者をやめる 読者になる 読者になる

夢とガラクタの集積場

落ちこぼれ三流エンジニアである管理人の夢想=『夢』と、潰えた夢=『ガラクタ』の集積場です。

RCO Study Night "RCOにおける機械学習と次世代量子情報処理技術「量子アニーリング」" に参加してきました

こんにちは。最近技術的な内容は大体Qiitaに書いているので こちらは間が空いてしまっていますが、勉強会の参加記録はこちらに。RCO Study Night "RCOにおける機械学習と次世代量子情報処理技術「量子アニーリング」"に参加してきました。atnd.org正直な話、…

AWS NACLの設定をCLIから行ってみた

AWS

AWSのNACLを試してみたのですが、 ネット上を調べたところ日本語の実例情報がそれほどなかったため、 とりあえずまとめておこう、ということでまとめてみました。 1. NACLとは? 下記のページにもありますが、 「サブネットのインバウンドトラフィックとアウ…

Twitterの新ストリーム処理基盤、Heronのアーキテクチャは?(詳細

こんにちは。前回論文の前半部、Stormの問題点を読みましたが、 今回は中盤部、Twitter Heronのアーキテクチャについてです。 あと、後半部のStormとHeronの性能比較については下記のページでまとめているのの 事例が増えただけでしたので、とりあえず省略す…

Docker-Registrator(Normal/internal)でConsulに登録される内容は?

こんにちは。最近、Dockerでマルチコンテナのクラスタを組もう、ということをやっています。 で、そこで課題になってくるのがIPアドレスが一定しない、ということですよね。ですので、そのためにConsul等のサービスディスカバリの仕組みを使う形になります。…

Twitter Heronの論文でのStormの問題点は?(詳細

こんにちは。前回あーいう形でサマリ記事を読んだので、次は実際に論文を読んでみるしかないだろう・・ ということで、Twitter Heronの論文を読んでみました。 今回は前半の、Stormの問題点を記述した個所と、設計検討結果についてです。Twitter Heronただ、…

Twitter Heronの論文でのStormの問題とHeronの利点は?(サマリ

こんにちは。前回TwitterBlogのHeronの記事を読み込んでみたので、 次は論文を読むか、とはりきってみた所、有料だったので撃沈した今日この頃です。 この後開発が進んでいくことを考えると今買って読んでしまうか悩みますね・・と思っていた所、下記のPaper…

Twitter HeronはStormに比べてどう進化しているのか?

こんにちは。今月頭、TwitterがHeronという新しいリアルタイム解析基盤について発表していました。 読んでみると、StormとAPIの互換性を保ったまま新しいHeronというリアルタイム解析基盤を開発したそうな。Flying faster with Twitter Heron | Twitter Blog…

StormのコマンドはClojureを使用しているので起動が遅い?

こんにちは。では、引き続きStormのコマンドが遅い理由について確認してみます。 1.Topology起動と、他のコマンドの違いは何なのか? 前回は、単にJVMの起動が遅いのではないか、レベルでとどまってしまいましたが、それではわからない点が1つあります。 「…

Stormのコマンドが遅い理由とは?

こんにちは。とりあえず気になることができたので、しばらくStormネタです。 1.Stormを使っていて気になる所 皆さんはStormを実際に使ってみたことがあるでしょうか?私は使って最初のうちは気にならなかったのですが、最近気になってきたことがあります。 …

Storm-0.9.4のバージョンアップ内容

こんにちは。 少し間が空いてしまったのですが、 Stormが0.9.4にバージョンアップしたので、バージョンアップ内容をざっとまとめてみます。 STORM-559: ZkHosts in README should use 2181 as port. storm-kafkaにおいて、READMEにあるZooKeeperの接続設定例…

並列バッチデータ転送OSSのEmbulkをソースコードリーディングしてみる(その4:LocalExecutor概要

こんにちは。Embulkが前回の投稿から今回の投稿までの間にJava用のプラグインもサポートしていますね。 これでようやくプラグインを書けるようになった・・・のですが、 とりあえずプラグインを書くのは裏で行っておくとして、ここではソースコードリーディ…

並列バッチデータ転送OSSのEmbulkをソースコードリーディングしてみる(その3:run概要&データソース概要

こんにちは。前回で初期化部分の確認が終わったため、今回は本処理の方に入ってきます。尚、ServiceLoaderでJava製プラグインがロード出来るかについてはとりあえず一通り読んでからの方針で^^; まず、基本構造としては 上記の図にあるRunnerが起動の起点…

並列バッチデータ転送OSSのEmbulkをソースコードリーディングしてみる(その2:初期化

こんにちは。前回は起動時のさわりだけでしたので、今回からまともに中身を読む形になりますね^^; 1.クラス概要構成 JRubyによる起動処理部分が終わり、 Javaに戻ったのでまずはJavaクラスの概要構成から確認してみます。 概要の構成はこれだけです。 Emb…

並列バッチデータ転送OSSのEmbulkをソースコードリーディングしてみる(その1

こんにちは。ようやくKinesisSpoutが一段楽したので次のネタを。先日「データ転送ミドルウェア勉強会」が開催され、 そこでバルクデータロードツール『Embulk』が公開されました。データのバルクロードというと、定番のOSSというのがなくて、 HDFSにバルクデ…

kinesis-storm-spoutのソースコードを読んでみる(その4

こんにちは。前回初期化処理周りの確認が終わったので、今回はメッセージの取得→送信や、 Ack/Fail機構周りを見ていきます。 尚、実際に見てみるとわかりますが、かなり煩雑な記述です(汗ですので、とりあえず概要を知りたい方は 下記のポイントを理解でき…

kinesis-storm-spoutのソースコードを読んでみる(その3

こんにちは。とりあえず前回で大体の構造がわかったので、 今後はStormで基本となる下記の処理単位ごとに実際に行われる処理を見てみます。 今回は初期化/有効化/停止周りまで。 コンストラクタ Stormではコンストラクタと、Topologyを生成するクラスの中…

kinesis-storm-spoutのソースコードを読んでみる(その2

こんにちは、前回に引き続き、 kinesis-storm-spoutのソースコードを読んでいきます。kinesis-storm-spoutのコードを確認した所、 コンポーネント構成は大体下記のようになっていました。 #単なるエンティティ等は省いています。 尚、下記のクラスについて…

kinesis-storm-spoutのソースコードを読んでみる(その1

こんにちは。今更感はありますが、Amazon Kinesisが最近個人的に熱くなり、改めて使い方を見ています。 aws lambdaでKinesisのイベントを取得することも出来ますし、色々組み合わせて使えそうなんですよね。ただ、当然Kinesisは単体では使用できないため、 …

Stormクラスタのコンテナ化に向けて通信周りを整理してみる

こんにちは。最近Dockerをはじめとしたコンテナを用いたアプリケーションの運用が広まっている・・・ ということで、Stormクラスタをコンテナのオーケストレーションツールで 構築できないか、と考えています。出来るようになれば、よりStormがお手軽に使え…

Cludera ManagerでImpalaをインストールする

こんにちは。前回でCludera Managerが動作するようになったため、 Impalaを実際動く所までインストールしてみます。 1.OS設定実施 前回のvm.swappinessのエラーが出ていたため、それだけは解消してしまいます。各サーバで下記のコマンドを実行することで解消…

Cludera Manager導入が実はCentOS6.6日本語環境でこける

こんにちは。前回インストールに失敗してしまったので、その解決編です。 #CDH User JapanのMLでも色々サポートいただき、解決することができました。 #ありがとうございます。 1. インストール失敗した原因は? 結果から言うと、yumの結果が日本語表記に…

Cludera Manager最新版をWimpyな環境に導入してみる(失敗

こんにちは。この間Tokyo Impala Meetup 2014.10に参加してきて、実際に動きを把握したくなってきましたので、 まずは手始めとしてCludera Managerを導入してみて、環境を構築していってみます。ただ、当然ながら自宅環境ですのでWimpyな環境ではあるのです…

akka-distributed-workersの初期化処理確認

こんにちは。前回でPersistenceまで行ったので、今回はより大きなサンプルであるakka-distributed-workersを読み、 動作の確認を行ってみました。ソースコードは下記の場所から取得することができます。 typesafehub/activator-akka-distributed-workers中身…

Akka-Persistenceでイベントを保存する

こんにちは。はじめはTypedActorをやろうとも思ったのですが、 Akka-Meetupでもあったように、TypedActorは使いにくいので通常あまり使われないようです。 #実際、クラス階層も変わるためいまいち使いにくい、というのはありました。並行処理初心者のための…

Akka-RemoteでRoutingを行う

こんにちは。前回、RemoteでRoutingを行おうとして上手くいかなかったため、 それをどうやって実現するのかを試してみます。あと、Routingを行うなら異なるプロセス間を跨がないといまいち面白くないため、 名前的には微妙ですが、下記の構成にして実際にRou…

Akka-RemoteでRemoteからActorを作成する

こんにちは。前回に続き、今回はAkka-Remoteを使用してリモートからActorを作成する方法を確認します。 1. プログラム上でアドレスを定義してデプロイ まずは、プログラム上でアドレスを定義してServer側にActorを生成することを試してみます。クライアント…

Akka-Remoteでメッセージングを行う

こんにちは。今回はAkka-Remoteを用いて別プロセス同士でメッセージングを行う方法を確認してみます。参考: Remoting — Akka Documentation役割をわかりやすくするために下記のような構成で名前をつけて作ってみます。 1. 下準備 尚、定義は下記の構成にな…

ActorSystemからActorを検索し、メッセージを送信する

こんにちは。今回は生成したActorに対してメッセージを送信するのではなく、 元々存在しているActorを取得してきてメッセージを送信することを試してみます。これができるようになれば、元々存在しているActorSystemにアクセスし、 Actorに対してメッセージ…

Inboxを用いてFutureを使うよりお手軽に応答を受信する

こんにちは。以前の投稿でActorから応答を受信するための方法について確認しましたが、 1つの応答ごとにFutureを用いる必要があり、正直な話かなり使いにくいものでした。そのため、もっと簡単に応答を受信できるものが無いかな・・ と確認してみたところ、…

Akka Actorの設定を設定ファイルから読み込む

こんにちは。前回に設定ファイルの設定方法について確認したので、 今回は実際に設定ファイルからActorの定義を読み込めるか試してみます。参考: Configuration − Akka Documentation Routing − Akka Documentation 1. 設定ファイルからActor(Router)の定…

Akka Actorでの設定ファイルの読み込み方を確認してみる

こんにちは。前回でRoutingの基本をやって、次に移ろうとした所、 設定ファイルの読み込みが前提になっているような話になってきたので、 一度設定ファイルの読み込み方の確認をしてみます。参考: Configuration − Akka Documentation Routing − Akka Docum…

Akka Actor確認(Router確認)

こんにちは。前回Actorからの応答を受け取ることができたので、 今回はActorに対してメッセージを割り振るRouterの機能を確認してみます。参考: Routing − Akka Documentation上記の参考ページによると、 RouterはRoutingを行うLogicクラスとRouting先のRou…

Akka Actor確認(呼び出し元での結果取得)

こんにちは。前回、Actorからの応答を受信できないか試したところ空の結果が返ってきた・・ という結果だったのですが、これでは実際使いにくい、と調べてみたところ、案の定応答を受信する仕組みは存在しました。akka.patterns.askをインポートした上で ? …

Akka Actor確認(メッセージの応答受信)

こんにちは。今回はAkka Actorに対して送信したメッセージを受信する方法の確認をしてみます。 1. そのまま返り値は返る? まず、receiveメソッドの結果返り値を返すように修正し、 呼び出し側でメッセージを送った際に返り値をキャストするようにしてみます…

Akka Actor確認(パラメータ、初期化/終了時処理)

こんにちは。内容的にScalaの復習も兼ねていますがまぁお気になさらず。前回とりあえず最低限動作するものを作成しました。 今回はActorに対してパラメータを渡す方法と、 初期化処理/終了時処理をどう記述するかを確認してみます。Actorのソースを見ると、…

Akka事はじめ

こんにちは。前回でAkka-Streamsのソースを確認していましたが、 そもそものScalaとAkka自体に対する前提知識が不足しているため、 見事にはまってしまった感じでした^^;なので、何度かScalaを用いたAkkaの小さなアプリを作成し、 そこから広げていこうと…

Activeator-Akka-Streamのソース確認

こんにちは。前回に引き続き、Akka StreamsのコンポーネントがReactive Streamsで 定義されたコンポーネントのどれに対応しているかを見ていきます。・・・と思ったのですが、 Akka Streamsをまともに読んでも範囲が広すぎるため、 Akka Streamsの利用サンプ…

Akka StreamsとReactive Streamsの対応は?(その1

こんにちは。前回とりあえずAkka-Streamsを動かしてみたので、 今回はAkka-StreamsとReactive Streamsの対応を確認してみます。 1. Akka-Streamsのソース取得 まずはAkka-Streamsのソースがなければ始まりません。 そのため、前回のサンプルの依存性から辿っ…

Akka StreamsによるReactive Streamsって?

こんにちは。最近気になっていた「Reactive Streams」について試してみました。 1. Reactive Streamsとは? 少し前にReactive Streamという情報がWebに流れていました。 Reactive Streams 何かというと、 "Reactive Streams is an initiative to provide a s…

Apache Kafka入門を読んでみました

こんにちは。この間購入した「Apache Kafka入門」を読み終わったので、 どんな本かという概要と注意点を書いてみます。Apache Kafka入門作者: 伊橋正義,原田勝憲出版社/メーカー: リクルートテクノロジーズ発売日: 2014/04/01メディア: Kindle版この商品を含…

ツーロング再現レシピ暫定版

こんにちは。前回実は水を加えていないからまとまらなかったことに気付き、先が見えてきました。 ただ、結果香ばしさが減衰してしまったので、まとまって香ばしいを両立できるラインを確認した結果、 とりあえず下記位が暫定のレシピとなりそうです。尚、今…

ツーロングを再現再リベンジ

こんにちは。懲りずにツーロングを再現すべく画策中です。 で、この間から調べていたところ、重大な前提を見落としていたことが判明しました。 #何やってんだ農林水産省の「加工食品の表示」ページより http://www.maff.go.jp/j/fs/f_label/f_processed/一…

ツーロングを再現リベンジ→失敗・・・

こんにちは。前回ツーロングを再現しようとして色々やってみましたが、見事に失敗しました。ただ、多分下記のポイントを変えればいいのではないか、ということで再チャレンジしてみました。 全粒粉でなく、通常の強力粉を使う 強力粉とグラハム粉のバランス …

ツーロングを再現してみようと挑戦してみました→失敗・・・

こんにちは。この間自然食品店を色々回ってみて面白い食品が無いか探している時に、非常に好みなお菓子を見つけてしまいました。 #色々回ってみるのは趣味です。何かというと、「木のひげのツーロングA」というお菓子です。 下記のようなお菓子です。 甘く…

Kafka-0.8.1.1での修正点

こんにちは。RPMパッケージを作ったと思ったら元がバージョン更新されていたので、 Kafka-0.8.1.1での修正点をざっとまとめてみました。参照: https://archive.apache.org/dist/kafka/0.8.1.1/RELEASE_NOTES.html Kafka-0.8.1.1での修正点 不具合対応 [KAFK…

KafkaのRPMパッケージを作成してみました

こんにちは。前回からかなり間が空いてしまいましたが、Kafkaのインストールパッケージ(RPM)を作成しました。 特に認証等は不要な場所においてありますので、下記のコマンド1発でダウンロードも可能です。 必要としている方がどれだけいるかは微妙ですが…

Kafkaインストーラを作成してみる(下調べ

こんにちは。今までKafkaBrokerを手動でインストールしてきましたが、 さすがにそれを何度も繰り返すのは面倒になってきました。そのため、Kafkaをrpmでインストールできるようにしたいと思います。色々探してみたところ、KafkaのRPMを生成している方々はい…

SSHを通してKafkaBrokerに対するデータ送受信を行う方法(解決編

こんにちは。前回(前の投稿に非ず)SSHポートフォワーディングを行った結果Producerからの投入に失敗してしまいました(汗 今回はその解決エントリになります。 1.投入失敗した原因 メーリングリストで質問しながらログを確認したところ、 Kafka起動後に下…

ストリームを処理するグラフィカルなツールStreamtools

こんにちは。先ほど下記のニュースを見てしまい、グラフィカルなストリーム処理ツール、ということで とりあえず動かしてみました。■New York Times Labがストリーム処理ツールを公開 http://www.infoq.com/jp/news/2014/04/nyt-streamtoolsまず、リリースペ…

SSHを通してKafkaBrokerに対するデータ送受信を行う方法(失敗

こんにちは。Kafkaのようなメッセージ収集サーバを使用していると、 遠隔地からもデータの送受信を行いたい、というケースが出てきます。ですが、Kafkaって通信は基本的に生のデータをネットワークに投入するので、 それはそれで気になるところがありますよ…