JanusGraph でグラフ操作 - Groovy

TinkerPop の API と互換性があり Cassandra 等をストレージとして使用できる JanusGraph というグラフデータベースがあります。 JanusGraph 0.1.1 今回は、「TinkerPop でグラフ操作 - Groovy」 のサンプルコードを JanusGraph 用に変更してみます。 ソース…

TinkerPop でグラフ操作 - Kotlin

前回 の処理を Kotlin で実装してみました。 Kotlin 1.1.3-2 Apache TinkerPop ソースは http://github.com/fits/try_samples/tree/master/blog/20170724/ a. ビルド定義・設定ファイル 今回は Gradle のサブプロジェクトとして実行します。 build.gradle (…

TinkerPop でグラフ操作 - Groovy

前回、Neo4j の Cypher を使って実施したグラフ操作を Apache TinkerPop を使って Groovy (@Grab を使用)で実装してみました。 Groovy 2.5.0 beta1 Apache TinkerPop 3.2 Apache TinkerPop はグラフ処理のためのフレームワークで、Neo4j 等の様々なグラフ …

アクセス制御リストをグラフDBで構築 - Neo4j

柔軟性のあるアクセス制御を考えた際に、アクセス制御リスト(ACL)を有向グラフで表現すればどうだろうかと思い、グラフDBの Neo4j を使って試してみました。 Neo4j Community Edition 3.3.0-alpha02 概要 アクセス制御リストを有向グラフで表現し、アクセ…

Docker で F# アプリケーションを作成

Microsoft による .NET Core の公式 Docker イメージを使って、単純な F# のコンソールアプリケーションを作成してみました。 microsoft/dotnet 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170619/ (1) Docker コンテナの実行 …

Docker で Haskell アプリケーションを作成 - MongoDB 利用

MongoDB へ接続する Haskell アプリケーションを Docker で作成してみました。 以下の Docker イメージを使用します。 mongo haskell ビルドツールは stack を使って、MongoDB への接続には以下のライブラリを使います。 MongoDB driver for Haskell 今回の…

D3.js で HAR ファイルから散布図を作成

前回、HAR (HTTP ARchive) ファイルから Python で作成した散布図を D3.js を使って SVG として作ってみました。 D3.js 4.8.0 ソースは http://github.com/fits/try_samples/tree/master/blog/20170515/ はじめに Node.js で D3.js を使用するために d3 と…

Python で HAR ファイルから散布図を作成

Web サイトの構成を可視化するため、Python で HAR (HTTP ARchive) ファイルをパースし散布図を試しに作ってみました。 今回作成した散布図の内容は以下の通りです。 横軸は time (処理時間 (ミリ秒)) 縦軸は bodySize (レスポンスボディのサイズ) MIM…

Go で Kafka の Consumer クライアント

下記ライブラリをそれぞれ使って Go 言語で Apache Kafka の Consumer クライアントを作成してみました。 sarama sarama-cluster 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170506/ Sarama の場合 まずは sarama を使ってみま…

Groovy で Kafka を組み込み実行

Groovy で Apache Kafka を組み込み実行してみました。 Apache Kafka 0.10.2.0 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170410/ Kafka 組み込み実行 Kafka の実行には ZooKeeper が必要なため、ZooKeeper と Kafka の両方を…

Java で Apache Beam を使用

前回 と同等の処理を Apache Beam を使って実装してみます。 Apache Beam 0.6.0 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170327/ サンプルアプリケーション Beam では Pipeline の apply メソッドで処理を繋げるようですので…

Java 8 で Apache Flink を使用

前回 と同様の処理を Java8 のラムダ式を使って実装してみました。 Apache Flink 1.2.0 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170313/ サンプル 前回 の処理をラムダ式を使って Java で実装すると以下のようになりました。…

Groovy で Apache Flink を使用

「Groovy で Apache Spark を使用」と同様の処理を Apache Flink で試してみました。 Apache Flink 1.2.0 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170311/ サンプルスクリプト 今回はローカルで実行するだけなので Execution…

reveno でイベントソーシング

「sourcerer でイベントソーシング」 等と同様の処理を reveno で実装してみました。 reveno 1.23 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170306/ はじめに 使用する Gradle ビルド定義ファイルは以下の通りです。 build.gr…

Groovy で Cassandra を組み込み実行

Groovy で Apache Cassandra を組み込み実行してみました。 Apache Cassandra 3.10 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170227/ 組み込み実行 まずは、設定ファイルを用意しておきます。 今回は実行に必要な最小限の設定…

Groovy で Elasticsearch を組み込み実行

Groovy で Elasticsearch を組み込み実行してみました。 Elasticsearch 5.2.0 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170203/ (a) クライアント接続しない場合 まずは、クライアント接続が不可な Elasticsearch を起動して…

Akka の FileIO でファイルを読み書き

Akka (akka-stream) の FileIO を使ってファイルの読み書きを行ってみます。 Akka 2.5-M1 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170131/ はじめに akka-stream では Java 用の API は akka.stream.javadsl パッケージに…

Sourcerer でイベントソーシング

「Axon Framework でイベントソーシング」 や 「es4j でイベントソーシング」 と同様の処理を Sourcerer で実装してみました。 Sourcerer v4.0.1 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170110/ はじめに 以下のような Grad…

es4j でイベントソーシング

「Axon Framework でイベントソーシング」 と同様の処理を es4j (Eventsourcing for Java) で実装してみました。 es4j 0.4.5 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20170107/ はじめに 今回はイベントをインメモリで保持する…

RxJava2 で並列処理

前回 と同じような並列処理を RxJava 2.0 で試してみました。 RxJava 2.0.3 ソースは http://github.com/fits/try_samples/tree/master/blog/20161226/ はじめに まずは、map の処理と subscribe の処理を順番に 3回繰り返す処理です。 前回の Reactor との…

Reactor で並列処理

Reactor の並列処理を試してみました。 reactor-core 3.0.3 ソースは http://github.com/fits/try_samples/tree/master/blog/20161208/ はじめに Reactor で以下のようなコードを実行すると、map の処理と subscribe の処理を順番に 3回繰り返します。(repe…

Spring Web Reactive を試す

Spring 5 で導入される Spring Web Reactive を試してみました。 本来なら Spring Boot で実行する事になると思いますが、今回は Spring Boot を使わずに Undertow で直接実行してみます。 ソースは http://github.com/fits/try_samples/tree/master/blog/20…

Java で行列の演算 - nd4j, commons-math, la4j, ujmp, jblas, colt

Java で以下のような行列の演算を複数のライブラリで試しました。 (a) 和 (b) 積 (c) 転置 とりあえず今回は、更新日が比較的新しめのライブラリを試してみました。 ND4J 0.6.0 Commons Math 3.6.1 la4j 0.6.0 UJMP 0.3.0 jblas 1.2.4 Colt Blazegraph 版 2.…

Lucene API で Solr と Elasticsearch のインデックスを確認

Groovy で Lucene の API を使用して Solr や Elasticsearch のインデックスの内容を確認してみました。(Lucene 6.2.1 の API を使用) ソースは http://github.com/fits/try_samples/tree/master/blog/20161024/ (a) ドキュメントの内容を出力 まずは、ド…

Deeplearning4J で MNIST を分類

「Deeplearning4J で iris を分類」 に続いて、畳み込みニューラルネットを使った MNIST の分類を試します。 Deeplearning4J 0.6.0 Deeplearning4J のバージョンが上がって、@Grab を使った Groovy 上での実行が上手くいかなかったので、今回は Kotlin で実…

Keras で MNIST を分類

「Keras で iris を分類」 に続き、今回は Keras で畳み込みニューラルネットを使った MNIST の分類を試してみました。 Keras 1.0.8 Python 3.5.2 ソースは http://github.com/fits/try_samples/tree/master/blog/20160920/ 準備 Docker で実行するための Do…

Gradle で ScalaPB を使う

前回と同様の処理を ScalaPB で行ってみました。 ScalaPB であればビルドツールに sbt を使う方が簡単かもしれませんが、引き続き Gradle を使います。 Gradle 3.0 ScalaPB 0.5.40 今回作成したソースは http://github.com/fits/try_samples/tree/master/blo…

Gradle で Protocol Buffers を使う - Java

Gradle を使って Protocol Buffers の protoc で Java ソースコードを生成し、ビルドしてみます。 Gradle 3.0 protoc-jar 3.0.0 protobuf-java 3.0.0 Gradle から protoc コマンドを呼び出す方法もありますが、今回は protoc-jar を使いました。 protoc-jar …

Axon Framework でイベントソーシング

Axon Fraework のイベントソーシング機能を軽く試してみました。 Axon Framework 3.0-M3 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20160815/ はじめに 今回は以下のような Gradle 用ビルド定義を使います。 lombok は必須ではあ…

Groovy の @Grab で Spark Framework を実行

Spark Framework - A tiny Java web framework を Groovy の @Grab を使って実行してみました。 Spark Framework 2.5 Groovy 2.4.7 今回のソースは http://github.com/fits/try_samples/tree/master/blog/20160801/ はじめに 以下のように @Grab を使った Sp…

node-ffi で OpenCL を使う2 - 演算の実行

「node-ffi で OpenCL を使う」 に続き、Node.js を使って OpenCL の演算を実施してみます。 node-ffi サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20160725/ はじめに 演算の実行には ref-array モジュールを使った方が便利なた…

Docker で OpenCL の実行環境を構築 - pocl

前回の 「node-ffi で OpenCL を使う」 では Windows 上で Node.js から OpenCL の API を呼び出してみましたが、これを Linux 上で行うために OpenCL の実行環境を Docker で構築してみました。 OpenCL の実行環境として pocl を使い、Linux は Fedora を使…

node-ffi で OpenCL を使う

Windows 環境で node-ffi (Node.js Foreign Function Interface) を使って OpenCL の API を呼び出してみました。 Node.js v6.2.2 (64bit Windows版) node-ffi サンプルソースは http://github.com/fits/try_samples/tree/master/blog/20160627/ なお、OpenC…

Keras で iris を分類

Theano・TensorFlow 用のディープラーニングライブラリ Keras を使って、階層型ニューラルネットによる iris の分類を試してみました。 Keras 1.0.3 Python 3.5.1 ソースは http://github.com/fits/try_samples/tree/master/blog/20160531/ 準備 今回は Dock…

JMX で Java Flight Recorder (JFR) を実行する

Java Flight Recorder (JFR) は Java Mission Control (jmc) や jcmd コマンドから実行できますが、今回は以下の MBean を使って JMX から実行してみます。 com.sun.management:type=DiagnosticCommand この MBean は以下のような操作を備えており(戻り…

JDI でオブジェクトの世代(Young・Old)を判別する2

前回 の処理を sun.jvm.hotspot.oops.ObjectHeap を使って高速化してみたいと思います。(世代の判別方法などは前回と同じ) 使用した環境は前回と同じです。 Groovy 2.4.6 Java SE 8u92 64bit版 (JDK) ソースは http://github.com/fits/try_samples/tree/…

JDI でオブジェクトの世代(Young・Old)を判別する

前回、オブジェクトの age を取得しましたが、同様の方法で今回はオブジェクトが Young 世代(New 領域)と Old 世代(Old 領域) のどちらに割り当てられているかを判別してみたいと思います。 (ただし、結果の正否は確認できていません) 使用した環境は…

JDI でオブジェクトの年齢(age)を取得

HotSpot VM の世代別 GC において、オブジェクト(インスタンス)には年齢 (age) が設定されており、Minor GC が適用される度にカウントアップされ、長命オブジェクトかどうかの判定に使われるとされています。 そこで今回は、Groovy で JDI (Java Debug …

Deeplearning4J で iris を分類

Deeplearning4J (DL4J) を使って 「ConvNetJS で iris を分類」 と同様に iris を分類してみました。 Deeplearning4J 0.4-rc3.8 今回は Groovy を使って実行します。 ソースは http://github.com/fits/try_samples/tree/master/blog/20160412/ 準備 iris …

ConvNetJS で MNIST を分類2 - 畳み込みニューラルネット

前回 の続きです。 今回は畳み込みニューラルネットを使って MNIST の手書き数字を分類してみます。 Node.js 5.8.0 ConvNetJS 0.3.0 ソースは http://github.com/fits/try_samples/tree/master/blog/20160328/ 準備 誤差・正解率のグラフ化と畳み込みフィル…

ConvNetJS で MNIST を分類1 - 階層型ニューラルネット

Node.js で ConvNetJS を使って MNIST の手書き数字を分類してみます。 今回は階層型ニューラルネット、次回は畳み込みニューラルネットを試す予定です。 Node.js 5.8.0 ConvNetJS 0.3.0 ソースは http://github.com/fits/try_samples/tree/master/blog/2016…

MNIST データセットをパースする

MNIST データセットは、THE MNIST DATABASE of handwritten digits からダウンロード可能な手書き数字のデータです。 機械学習ライブラリ等に標準で用意されてたりしますが、 今回は Node.js と Java でパースしてみました。 ソースは http://github.com/fit…

D3.js による折れ線グラフ SVG の作成と PNG 変換 - Node.js

前回、(ConvNetJS による処理結果を)折れ線グラフ化した方法に関して書いておきます。 D3.js ソースは http://github.com/fits/try_samples/tree/master/blog/20160222/ 準備 Node.js で D3.js を使うには、下記モジュールを npm でインストールします。 d…

ConvNetJS で iris を分類

ニューラルネット用の JavaScript ライブラリ ConvNetJS を使って iris の分類を行ってみました。 ConvNetJS 0.3.0 ConvNetJS は Web ブラウザ上でも実行できますが、今回は Node.js で実行します。 ソースは http://github.com/fits/try_samples/tree/maste…

PureScript で DOM を操作

PureScript の下記ライブラリを使って簡単な DOM 操作を試してみました。 purescript-dom purescript-simple-dom ソースは http://github.com/fits/try_samples/tree/master/blog/20160125/ はじめに PureScript を使って実装するものと同等の処理を JavaScr…

virtual-dom のイベント処理

仮想 DOM を扱うための JavaScript 用ライブラリ virtual-dom では ev-xxx (例. ev-click) でイベント処理を扱えるようになっていますが、実際に機能させるには dom-delegator が必要なようです。 virtual-dom 2.1.1 dom-delegator 13.1.0 virtual-dom は …

pulp を使った PureScript の開発

PureScript 用のビルドツールに pulp があります。 pulp を使えば PureScript v0.7 から多少面倒になったビルドや実行が比較的容易になります。 pulp インストール Node.js の npm で purescript (コンパイラ) と pulp をインストールします。 pulp インス…

Google Cloud Print を Web API で操作 - Unirest 使用

リフレッシュトークンを使って Google Cloud Print を Web API で操作してみます。 Google Cloud Print 以前、「Google アカウントで Google API を利用 - google-api-services-gmail」 では Apache HTTPClient を使いましたが、今回は Unirest を使っていま…

Android エミュレータの hosts ファイルを編集

Android エミュレータの hosts ファイルを編集する方法です。 以下のような方法が考えられます。 (a) shell で hosts へ行を追加 (b) pull と push で hosts を変更 (a) shell で hosts へ行を追加 行を追加するだけなら以下のように shell を使うだけです。…

Swift のビルド環境を Docker で構築

Ubuntu をベースとした Swift のビルド環境を Docker で構築してみました。 Swift 使用したソースは http://github.com/fits/try_samples/tree/master/blog/20151207/ Docker イメージ作成 ubuntu:15.10 のイメージをベースに Swift をセットアップしました…