そごうソフトウェア研究所

SOA、開発プロセス、ITアーキテクチャなどについて書いています。Twitterやってます@rsogo

Flutterのチュートリアルをやるのとメモ

1日目 この辺までやった。 docs.flutter.dev docs.flutter.dev codelabs.developers.google.com 久しぶりにFlutterを触ったらビルドが通らなかったが、Flutterのバージョンを最新にしたら大丈夫だった。 MaterialAppって何者なのというのが疑問だったので、…

Minecraft Pi EditionをPythonから操作する

最近、Raspberry Piクックブック 第3版を読んでいます。 「レシピ7.20 Minecraft Pi Edition でPythonを使う」で、PythonからMinecraft Pi Editionでブロックを置いたり、チャットを送ったりができるのを試してみました。 ScratchとMinecraftをやっている小…

ExecutorServiceを利用して、並列処理を行うサンプル

今やっているアプリケーションの高速化を行うために並列処理を取り入れました。 やっている内容はレポートを作るのですが、APIで取得した100枚以上の画像をレポートに貼り付けるのですが、画像を取得する部分は並列化しています。 サンプルを作ったので、Git…

Raspberry piのセットアップ備忘録

いろいろ実験用に使っていたラズパイにMinecraftのサーバーを入れてマルチを遊べるか試そうとしてます。 CUIでセットアップしていく。 キーボードの設定 キーボードはUSBで日本語レイアウトのものを接続した。 デフォルトは英字レイアウトで|などが入力でき…

AWS SNSを使ったEメールの送信

最終的にはAWS SNSを使ってスマホにPush通知を送信する方法を確認したいですが、その前に簡単にEメールを送信すうる手順を確認したいと思います。 Topicの作成 以下の設定ができます。 暗号化 アクセスポリシー 配信再試行ポリシー 配信ステータスのログ記録…

DynamoDBの勉強をしています

AWS Lambda + DynamoDBの組み合わせで サーバレスなアプリケーションを作ろうとしています。 DynamoDB をはじめとするNoSQLデータベースをちゃんと使ったことがなかったので今回改めて勉強しようと思います。 こちらのAWSで資料をお勧めしてもらいました。 A…

AWS Lambdaで必要な外部Jarも含めて一つのJarにする

AWS Lambdaでアプリを作っている時に必要となる外部のクラスが見つからずにjava.lang.NoClassDefFoundErrorが発生するケースがあります。 ビルド時は依存関係は解決できていてコンパイルエラーはでていんですが、これは外部のライブラリがパッケージングの際…

homebrewでmysqlを8から5.7にバージョンを落としたときの対応

趣旨 Macにhomebrewで入れたMySQLを8から5.7にダウングレードした時の話をします。 事の発端は新しいMacBook Proに開発環境を移行しようとしたんですが、 homebrewでMySQLを入れるとバージョン8が入りました。 で、いろいろ変わっているようなので、今やりた…

Mule ESBのフロー定義中にでGroovyスクリプトでカスタムのロジックを埋め込む

そういえば、Salesforce.comによるMulesoftの買収が発表されましたね。今後、どのようになっていくのか注目したいと思います。 www.mulesoft.com さて、今回はMuleのフロー定義にGroovyのスクリプトを埋め込んでみたいと思います。 これができるとMuleで予め…

AWS Lambdaの何が嬉しかったか。Excel生成WebサービスのLambda関数化

AWS Lambdaを使った開発をやってみて何が嬉しかったのかを書いておこうと思います。 Lambda関数化したのは以下のようなWebサービスでした SPAなWebアプリからJSONでリクエストを受け取る JavaのExcelを扱うライブラリであるPOIでExcelのテンプレートファイル…

Lambda関数をAPI Gatewayで公開する(シンプル版)

先日、JavaでLambdaを作るエントリを書きましたが、今回、API Gatewayを使って、Lambdaで実装した処理をWebサービスとして公開したいと思います。 API GatewayはRESTfulなAPIを簡単に作れます。 RESTfulなので、まずはリソースを定義して、そのリソースに対…

Install Node.js v8 and npm 5.6 for macOS High Sierra

以前、Node.js v5をMacにインストールする手順を書きましたが、MacBook Proを新調したので、新しくセットアップした手順をメモします。 begirama.hatenablog.com 公式サイト Node.js からMac用のpkgファイルをダウンロードします。2018/5/14時点で安定版の最…

JavaでAWS Lambdaの実装をやってみる

各種情報 開発者ガイド docs.aws.amazon.com AWS Lambdaには設計書と呼ばれるテンプレートが用意されていて、テンプレートをカスタマイズすることでいろいろな機能を試すことができます チュートリアル チュートリアルへのリンクが公開されています。 aws.am…

Apache ActiveMQ ArtemisのLibrary artemis-native-64 not foundメッセージは問題あるのか調査

「AppPot - 企業向けスマートデバイスアプリ開発のためのプラットフォーム」の内部では、Apache ActiveMQ Artemisを使用しています。 下記のようなメッセージが出るので調査をしてみました。 DEBUG [org.apache.activemq.artemis.jlibaio] (MSC service thre…

EXPLAINによるMySQLの実行計画の確認

担当しているソフトウェアで、運用しているとMySQL内のレコードが増えて性能が悪化するというお問い合わせをいただきました。 そこで、Indexを改善しようということになったのですが、どこにIndexを付けるべきか確認するためにMySQLの実行計画を確認しました…

macOSにTensorFlowをセットアップする (2018/04更新)

マニュアルInstalling TensorFlow on macOS | TensorFlowでオススメされているvirtualenvを使った、セットアップを行います。 このドキュメントは2018/04/29にMacBook Pro 2017年モデルに環境構築をするために、再確認して更新しています。 使用した環境 mac…

MySQL(RDS)へのデータのインポート

RDSへ、Excelでもらったマスタデータを取り込む時にいろいろとハマったので書いておこうと思います。 RDSでmysqlimportは使えない、LOAD DATA LOCAL INFILEを使う まさにこちらの記事と同じ手順を辿りました。 RDSでcsvファイルをインポートしようとして権限…

Raspberry PiにnodeとReactを入れる

冬休みの勉強でRaspberry Piにnode入れて、なんかいろいろやろうと思います。 cpuinfoでCPUの確認 pi@raspberrypi:~$ cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 4 (v7l) BogoMIPS : 38.40 Features : half thumb fastmult vfp edsp…

MacOSXへのApache Kafkaのセットアップ

kafka.apache.org 0.10.0.1を入れます。 1. Zookeeperの起動 $ bin/zookeeper-server-start.sh config/zookeeper.properties Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 [2016-10-09 22:17:15,900] INFO Reading configuration from: config/zooke…

MacOSXへのActiveMQのセットアップ

MQTTを試したいので、ActiveMQをローカルに入れたいと思います。 1. モジュールの入手 http://activemq.apache.org/ 今は5.14.1 が最新みたいです。 Windows Distributionと、Unix/Linux/Cygwin Distributionがあるので、Unix/Linux/Cygwin Distributionの方…

AppPot経由でHttpFSでREST化したHadoopとやり取りする

GetAnonymouseToken GETメソッド http://localhost:8080/apppot/api/1/apppot.TestApplication/1.0.0/anonymousTokens?appKey=40c71254aca44664b61635573085ef1d&deviceUDID=bd393116-0b47-4b9e-a186-e64ffc0fbdf2 Response { "status": "OK", "errCode": 0,…

HttpFSの検証

モバイルアプリからのリクエストをリアルタイムにHadoopに投入する方法を検討しています。 begirama.hatenablog.com MuleのHDFSコネクタを使おうと思ったけど、Mule CEではだめだったので、今回はだめ。 begirama.hatenablog.com WebHDFSはクライアントから…

WebHDFSの検証

ファイルの作成 ファイルのアクセスは2回に分けて行う必要があります。 作成するファイルの中身はこんな感じです。 $ cat sample.txt 1 aaa 2 bbb 3 ccc まず、1回目。 PUTメソッドを利用します 操作名はop=create。 上書きするoverwrite=true。 ユーザー…

Mule HDFSコネクタ5.0.0の検証(Mule EEが必要でした。途中で止めています)

MuleにはHDFSコネクタというのがあって、HDFSに接続できるみたいです。試してみたいと思います。 この検証の結果としては、Mule EEがHDFSコネクタの検証に必要だと分かったため、途中で止めています。 HDFSコネクタの情報源 リリースノート HDFS Connector R…

Hiveでファイルからデータをロードする

前記事はこれ。 begirama.hatenablog.com begirama.hatenablog.com 読み込むファイルを作成します 今回はタブ区切りの次のようなファイルを作成します。 1 aaa 2 bbb 3 ccc 読み込む先のテーブルを作成します 項目の区切りをタブ、行末を改行として、数値型…

Hiveでデータベースを準備する

前にMac上にセットアップした環境にHiveで環境を作っていきます。 begirama.hatenablog.com Hiveデータベースを作成 データベースを確認する hive> show databases; show databases OK default Time taken: 0.567 seconds, Fetched: 1 row(s) データベースを…

MacにHadoopとHiveをセットアップする

MuleからHadoopに接続するのが目的です。 今回はHadoopをセットアップしたいと思います。 環境 OS X El Capitan 10.11.6 リモートログインをONにしておきます。 Hadoop install brew install hadoop HADOOP_HOMEは/usr/local/Cellar/hadoop/2.7.1/libexecで…

Google I/O 2016。Keynote自分まとめ。Machine Learning、Google Home、Allo、Duo、Android N

Keynoteのライブ、見終わりました。 ここで録画が見られます。 www.youtube.com Keynoteのメッセージの中心にはマシンラーニングがあったのかなと思います。 AlphaGoのようなマシンラーニングを活かすために、Google Assistantと、Assistantにテキストや、声…

Google I/O 2016 Live有りAndroidセッションまとめ

いよいよGoogle I/Oが今年も始まりますね。 events.google.com ライブストリーミングがある予定の、Android関連セッションのうち、私が興味があるものをリストアップしてみました。 ちなみに私が興味があるのはAndroidの最新情報の概要と、AndroidアプリのUI…

Cordovaを6.xに、cordova-androidを5.xにバージョンアップしました

Cordovaをバージョンアップしました。 バージョンアップ前 $ cordova -version 5.4.1 バージョンアップ $ sudo npm install -g cordova@6.1.1 バージョンアップ後 $ cordova -version 6.1.1 Pluginのバージョン確認 $ cordova plugin version com.phonegap.p…