EC2上のAerospikeでycsbを実行
先日AerospikeをEC2(もちろん無料Tierのt2.micro)で試してみました。
takumats.hatenablog.com
今回は、そこにycsbを入れてみますが、手順は先日Windows上のVirtualboxでやったのと同じなので割愛。ちなみにAerospikeのページをよく読むと、ycsbをインストール済みのaerobenchというAMIが公開されているとのことだが、見当たらなかった。(と思ったら、N. Californiaにありました。後から気づきました。)
takumats.hatenablog.com
基本的にはAerospikeのサイトにある以下の手順に従えば実行できます。
Documentation | Aerospike
が、ここで問題。マシンのサイズが小さすぎるので、デフォルトのworkload-shortloadが動きません。なので、workload-shortloadをコピーしてworkload-shortload2を作成し、最初のrecordcountと、operationcountを適当に10分の1(=100000)にしました。
これで見事実行できます。ちなみにloadは2回やろうとすると、キー重複のエラーになるので、今はメモリのみモード(永続化なしモード)なのでサービスを都度再起動すると楽勝です。runは何回でも実行可能です(でした)。
[ec2-user@ip-xxx-xx-xx-xx YCSB]$ bin/ycsb load aerospike -s -threads 100 -P workloads/workload-shortload2 -p as.host=127.0.0.1 [WARN] Running against a source checkout. In order to get our runtime dependencies we'll have to invoke Maven. Depending on the state of your system, this may take ~30-45 seconds (中略) [OVERALL], RunTime(ms), 6793.0 [OVERALL], Throughput(ops/sec), 14721.036360959812 [CLEANUP], Operations, 100 [CLEANUP], AverageLatency(us), 43.14 [CLEANUP], LatencyVariance(us), 629.1203999999998 [CLEANUP], MinLatency(us), 27 [CLEANUP], MaxLatency(us), 238 [CLEANUP], 95thPercentileLatency(us), 0 [CLEANUP], 99thPercentileLatency(us), 0 [CLEANUP], 0, 100 [CLEANUP], 1, 0 [CLEANUP], 2, 0 (中略) [INSERT], Operations, 100000 [INSERT], AverageLatency(us), 6032.59377 [INSERT], LatencyVariance(us), 3.942717181160718E7 [INSERT], MinLatency(us), 27 [INSERT], MaxLatency(us), 197585 [INSERT], 95thPercentileLatency(us), 16000 [INSERT], 99thPercentileLatency(us), 24000 [INSERT], Return=OK, 100000 [INSERT], 0, 3173 [INSERT], 1, 807 [INSERT], 2, 995 [INSERT], 3, 8158 (後略)
ちなみに、たくさん出てくる以下の列はヒストグラム情報。
[INSERT], 0, 3173 [INSERT], 1, 807 [INSERT], 2, 995 [INSERT], 3, 8158
以下のようなグラフを描けます(実際には1000分割してるけど、グラフが見づらいので上位100のみで描画)
なお、このヒストグラム出力の細かい設定は、ycsbのworkload設定ファイルで可能な模様です。
runの場合も、workload-shortrunが大きすぎるので、workload-shortrun2を作って、10分の1サイズにします。
ちなみに、このaerospikeのworkload-shortrunの中身で、operationcountが0になっています。ただ、ここが0でも実際にはオペレーションが全くないということではなさそうなので、よくわかりません。
Aerospike Webinar "2017 DB Trends for Powering Real-Time Systems of Engagement" 聴講 (2016/12/15)
Aerospike Webinarを日本時間2016/12/15 4amから見ていました。
Aerospikeは高速性を売りにしたNoSQLデータベース。
特徴は、
- SSDをネイティブサポートすることによる高速性
- 応答速度の安定性
- スケールアウトが用意
CassandraやRedisの置き換えを想定しています。
であることがあげられます。
Adtechなどでの採用が日本でも進んでいます。
Sapporo Tech Bar #5開催 (2016/12/19@札幌)
おなじみのSapporo Tech Bar #5を開催しました。
www.db-tech-showcase.com
今回はMariaDB/MySQLスペシャルということで、PerconaからColinさんと、ストレージエンジンSpiderの開発者であるスパイラルアーム社の斯波さんに講演いただくことができました。お二方とも、なかなか札幌でお目にかかるのは難しい方々です。
www.percona.com
www.spiderformysql.com
ColinさんはMariaDBで働かれていて、つい最近Percona社に移られた方で、MySQL、MariaDB、Perconaに対してのバックグラウンドが豊富です。講演ではMySQL(とその仲間たち)の歴史から将来まで俯瞰いただくことができました。
www.percona.com
www.percona.com
www.publickey1.jp
www.percona.com
斯波さんはストレージエンジンSpiderの開発者です。
MySQLはストレージエンジンを選択できるのが特徴の一つです。
thinkit.co.jp
Spiderはフェデレーション、シャーディングをMySQLで実現するエンジンでMariaDBには現在バンドルされています。
d.hatena.ne.jp
Spiderは海外でいうと、中国テンセント社での利用が有名です。
日本だとSansan社が使っていたようです。
今回忘年会スペシャルということで、初めて、Sapporo Tech Bar終了後に懇親会を催しました。
予想以上の方々に来ていただいて、非常に感謝しております。
来年もどうぞSapporo Tech Barをよろしくお願いいたします。
「VR(仮想現実)AR(拡張現実)最新医療技術ビジネスセミナー」に参加(2016/12/16@札幌)
おなじみのビズカフェのイベント
「VR(仮想現実)AR(拡張現実)最新医療技術ビジネスセミナー」に参加してきました。
bizcafe » 【ご案内】VR(仮想現実)AR(拡張現実)最新医療技術ビジネスセミナー
最初の講演はH以下のoloEyes Inc.にも携わっている杉本さん。
holoeyes.jp
ちょうど先日のSapporo Tech Barで、医療情報とディープラーニングに関する話を聞いたので、そういう意味でも興味深かった。両方ともCTの画像を情報ソースとしつつ、片方はAIで診断サポート、片方はVRで可視化。
takumats.hatenablog.com
仕事の都合で途中からの参加となってしまいましたが、パネルトークの方は全て聞くことができました。
VRということで、ビジュアル的に面白いので、プレゼンもやはり面白かったです。ビジュアル的に面白いものはやはりいいですね。
そしてパネルトークの後には、体験会というものがあったのですが、確かに面白かった。
でも、想像したほどは没入感はなかったです。
コンテンツが、医療というちょっとなじみがないものだったためか?そのあたりはちょっと不明。
同時に、Infinite Loopさんが展示していたVR内で、中に表示される女の子に触る(もちろん触った感覚はない)コンテンツを体験展示。
実際に髪の毛あたりを触ると、髪の毛がゆさゆさしたりと、二つの位置関係が認識されている。
しかも、中の女性は、キネクトで別人の動作が認識されて動作しているもの。
ビジネスの使い道としてはちょっと不明ですが、楽しめました。
VR界隈、何かとてもおもしろそうだけど、何をやればビジネスになるのか、というのはすごく悩みそう。
ただ、北海道には、自然という実写コンテンツはたくさんあるのだから、それが生かせるのではないか、
と最後に誰かがおっしゃっていたのは、確かにあるかもしれない。
Aerospike用のAMIから作ったVMにCassandraを入れる(問題未解決)
以下のページに従ってみます。
http://www.aerospike.com/docs/benchmarks/cassandra/simple_ycsb/cassandra_install.html
前回までは、まずAerospikeのワークロードを落とすのに追加できるようになりました。
で、今度は比較対象になるはずのCassandraを試してみます。
基本は、いかに従いますが、現在のCassandraはバージョン3.9でした。
http://www.aerospike.com/docs/benchmarks/cassandra/simple_ycsb/ycsb_cassandra.html
他の箇所に記載によると、以下のようにCassandraがセットアップ済みであるかのようなことも書かれていますが、
全然そんなことはありませんでした。
The Aerospike Benchmark AMI already has Cassandra installed in the directory /opt/cassandra/apache-cassandra-3.5. Most of the changes to the configuration have already been made. You will still need to do the following:
ただ、Manual Installの記述に従いました。
YCSBがどうしても実行できなくていろいろ調べたところ、以下を発見。
github.com
うーん、でもまだエラーが解消しない・・・。上記とエラーメッセージは同じ。
AerospikeをEC2で試す
先日AerospikeをWindows上のVirtualBoxに入れてみました。
takumats.hatenablog.com
takumats.hatenablog.com
今度は、以下に従って、AWS(EC2)上に入れてみようと思います。
http://www.aerospike.com/docs/deploy_guides/aws/install
久々にAWSを使うので、まずは家のアカウントで、AWSに登録し、無料Tierを使えるようにします。
aws.amazon.com
そして、Aerospikeのページあるよう、以下のような感じでAMIイメージが提供されています。
そして、「Launch with EC2 Console」を選びます。
次にインスタンスタイプを選択しますが、まずは、初めてなので、もちろんt2.micro!(r3.2xlargeが推奨)
Aerospike社のページによると、Amazon VPC内に作ることを推奨、と言っているが、
とりあえず何も考えないことにします。
ストレージもデフォルトの8GBとしてみます。
セキュリティグループもとりあえず推奨通りでトライ!!(Teratermのポートフォワーディングでもできそうだけど)
インスタンスが起動したらそれに接続するのですが、私はWindowsユーザーで、今までAWSもWindowsしか使ってなかったのでちょっと戸惑いました。
そこで、以下を参考にします。
dev.classmethod.jp
すると・・・、無事接続されました。
そして、手順に従って起動し、AMCにも接続できました。
ユーザー名AMC、パスワードはインスタンスIDとのこと。
http://www.aerospike.com/docs/deploy_guides/aws/install
とりあえず、AMCにも接続できたみたいなので、次回やいよいよycsbをインストールしてみたい。
まずは、作ったインスタンスをシャットダウンだ。(Linuxについてはこんなことも調べるレベル・・・)
eng-entrance.com
i-think-it.net
千歳科学技術大学を訪問
用事があって千歳科学技術大学を訪問!
www.chitose.ac.jp
初めて伺いましたが、自然に囲まれた、いいところ。
研究棟と本部棟(授業で使うところ)があれだけ離れている理由はちょっと不明なのですが。。。
南千歳駅から大学まではシャトルバスが出ています。
南千歳駅には、アウトレットモールrera。
www.outlet-rera.com
大学ができたての頃、教室が足りなくて、南千歳駅付近にある、アルカディアで授業することもあったとか・・。
ちなみに、千歳と札幌の間は、快速エアポートに乗ったのですが、外国人だらけでした!