カタカタブログ

SIerで働くITエンジニアがカタカタした記録を残す技術ブログ。Java, Oracle Database, Linuxが中心です。たまに数学やデータ分析なども。

Rails 5.2 + PostgreSQLアプリをDockerで起動してみる

はじめに Railsのサンプルアプリ作成 Dockerコンテナイメージ作成 docker-compose.yml作成 コンテナ起動 動作確認 まとめ はじめに かなり久しぶりのブログ記事。最近はDockerなどコンテナを触り始めており、いろいろ検証している。 今回はRails 5.2(6.0も…

wsimportを使ってSOAPクライアントを自動生成する

はじめに IntelliJ IDEAでクライアント・プロジェクト作成 wsimportでクライアントコード生成 生成したコードを用いてSOAPサービスにアクセス まとめ はじめに 前回、IntelliJ IDEAで簡単なSOAPサービスを公開した。 今回JAXWSのwsimport機能を使って、このS…

IntelliJ IDEA(Ultimate)でのJava・SOAPサービス開発とGradleでのwarビルドを試す

はじめに IDEAで新規WebServiceプロジェクト作成 Gradleでwarファイル作成 warファイルをGlassFishにデプロイ SoapUIでテスト まとめ 2019/3/3追記 はじめに 久しぶりにJavaでSOAP WebServiceアプリケーションを作成する機会があった(今どきSOAP、とかいう…

Mac上でDockerのPostgres 11.1を使ってRails 5.2アプリを作成したときのメモ

はじめに Dockerのpostgres準備 railsプロジェクト作成 まとめ はじめに 久しぶりにRailsアプリを作ることになり、今回はデータベースにDockerのPostgresを使おうと思ったので、そのときの構築方法をメモ。 Mac上の環境情報は以下の通り。 $ ruby -v ruby 2.…

mac上にpipenvでJupyterデータ分析用Python環境を構築する

はじめに pipenvインストール Jupyterデータ分析用環境構築 データ分析用ライブラリインストール matplotlibのimportエラーのため、設定変更 まとめ はじめに mac上にpipenvによる仮想環境を作り、Jupyterによるデータ分析用Python環境を構築してみたので、…

Ansible Localを使ってVagrant仮想マシンをプロビジョニングしてみた

はじめに Vagrantで作った仮想マシンをプロビジョニングする方法として、ansible-localというプロビジョナーがあるのでそれを使ってみた。 https://www.vagrantup.com/docs/provisioning/ansible_local.html この方法だとゲストOSにansibleがインストールさ…

Oracle Database 12c (12.1) でSPM機能を試してみた

はじめに SPM機能を有効化する ベースラインを固定化する 複数のベースラインを評価する まとめ はじめに Oracle DBでSQLの実行計画をベースラインとして管理できるSPM(SQL Plan Management)という機能がある。 今回、これを使ってSQLの実行計画の登録と固定…

Google HomeとFlask(Python)サーバでスマートスピーカーアプリを作成してみた

先日Google Homeを買ってみたので、Google Homeと簡単な会話をするためのアプリケーションを作ってみた。 Google Assistantのアプリケーションとして開発するため構成は以下の通り。 まず、Google Homeに話しかけたメッセージを入力として、応答を返すWebサ…

PowerShell エラーの詳細をログファイルに出力する

はじめに コンソールに表示されるエラーメッセージと同等の内容を取得する エラー内容の詳細を省略せずに取得する まとめ はじめに 最近、PowerShellでスクリプトをたまに書くことがあるが、エラー発生時に内容をログに記録させたい場合がある。 エラー原因…

PythonとOpenCV 3でPCのビデオカメラでリアルタイム顔認識してみた

はじめに OpenCV 3インストール OpenCVの顔認識チュートリアルをやってみる PCのビデオカメラでリアルタイム顔認識をやってみる まとめ はじめに Pythonを最近触り始めているので、いまさらながらOpenCV3を使ってPCのWebカメラから顔認識をやってみる。 環境…

PowerShell スクリプトの実行が無効となっている場合の対処法

はじめに エラーの原因 方法1: 直接実行ポリシー設定を変更する 方法2: PowerShellコマンドに実行ポリシーオプションを付与してスクリプト実行する まとめ はじめに PowerShell ISEやPowerShell対話式コンソールからは実行できるのに、スクリプトファイル化…

LinuxのNFSディレクトリをWindows Serverからマウントしユーザマッピングする

Linuxでファイル共有のためにNFSサーバをたててディレクトリを公開することはよくあるが、 今回Windows Serverからも同じフォルダにアクセスするためにLinuxのNFSディレクトリをドライブにマウントする手順を検証した。 また、その際に簡易な方法でWindowsユ…

Fluentd 2.3 + Elasticsearch 5.3 + Kibana 5.3 環境を構築してみた

以前Fluentd (td-agent 2.3.0) + Elasticsearch 2.1 + Kibana 4.3の環境を構築した。 totech.hateblo.jp2017年4月現在、ElasticsearchとKibanaが5.3となり新しくなっていたので、現在の最新版で環境を再構築してみることにした。 結果、手順に大きな変更はな…

Raspberry Pi 2にBluetoothシリアル通信でデータ送受信してみた

以前Raspberry Pi 2にUSBのBluetoothアダプタを接続し、WindowsおよびMacのPCとペアリングするところまでみた。totech.hateblo.jp今回は、Bluetoothによるシリアル通信を行い、Raspberry PiとWindows-PC間でデータ送受信をやってみる。 シリアル通信は本来、…

Windows あるフォルダ以下のファイル一覧を作成する

Windowsで特定のフォルダ以下の全ファイルを一覧化したい場合に使えるコマンドプロンプトのコマンドについてまとめた。 Linuxで言うfindやtreeコマンドのようなもので、 大量のファイルが入ったHDDにほしいファイルがあるか手軽に調べたい場合など、ファイル…

Oracle Java SE 8 Silver/Gold 合格体験記

先日、OracleのJava SE 8の資格試験を受験し、無事合格しました。 記録のために合格体験記を記します。これまでJavaは学生の頃から今の仕事でもよく使ってきたので、基本的なプログラムはある程度一人で書けるレベルでしたが、 体系的な勉強はあまりしてこな…

Java ComparableとComparatorの違いについて

今回はJavaのオブジェクト同士を比較するための以下の二つのインタフェースの違いについて、勉強したことをまとめる。 java.lang.Comparable<T>インタフェース java.util.Comparator<T>インタフェース どちらもオブジェクトを順序付けし、比較するためのインタフェ</t></t>…

Raspberry Pi 2にUSB-Bluetoothアダプタを接続しWindows・Macとペアリングさせてみた

Raspberry Pi 3ではすでにBluetoothは標準機能で搭載されているが、手元Raspberry Pi 2にはBluetooth機能がないので、 市販のUSB-Bluetoothアダプタを購入して試しにMacbookやWindows7のPCとペアリングさせてみた。 Bluetoothアダプタ選定 まず、Raspberry P…

Java ジェネリクスについて勉強したことのまとめ

Javaのジェネリクスについて理解が浅かったため、今回Effective Java第2版を読んで勉強してみたことをまとめる。 ジェネリクスはJava SE 1.5から導入されたものだが、今回はJava SE 8の環境で検証している。EFFECTIVE JAVA 第2版 (The Java Series)作者: Jos…

Raspberry Pi 2 でLチカ

Raspberry Pi 2はこれまで簡易サーバ的な使い方しかしてこなかったが、今回初めて電子工作的な使い方をしてみる。 電子工作の領域ではLEDを点灯されることを"Lチカ"と呼び、Hello World的な入門するときに最初に作るべきものという位置づけらしいので、 今回…

Raspberry Pi 2にWi-Fi USBアダプタで無線LAN接続したときのメモ

Wi-Fiが標準搭載されたRaspberry Pi 3も出ているこのご時世に今更感は否めないが、 今回自宅のRaspberry Pi 2にWi-Fi USBアダプタを使って無線LAN接続設定を行ったので、内容をメモ。 Wi-Fi USBアダプタ準備 今回はWi-Fi USBアダプタはRaspberry Piと相性が…

AWSにCloudera ManagerでCDH(Hadoop)クラスタを構築してみた

AWSにEC2インスタンスを複数立てて、Cloudera ManagerをインストールしてCDHクラスタを構築してみた。 Hadoopのクラスタ構成を自前で組むと結構面倒らしいが、Cloudera Managerを入れるとかなり簡単に組むことができた。環境情報は以下。 Redhat Enterprise …

SQL テーブル参照先の条件句 JOIN vs EXISTS

昨日の記事に続き、今日もSQLネタ。さて、あるテーブルにある行を検索する際に検索条件が外部キーで参照した別テーブルの列にあり、かつそのテーブルの値をselectしない場合、 そのようなSQLは結合もしくはexists句を使う2パターンで表現できる。今回はこの2…

SQL グループごとの最大値を持つ行を取得するときは分析関数MAXを使う

SQLを書いていて、あるグループごとにある項目を集計して最大値を持つ行だけを検索したいときがある。 これまではあまり気にせずにgroup byと集計関数MAXを使ったサブクエリを検索条件に使うことで求めていたが、 パフォーマンスがよくないことがあり、今回…

Raspberry Pi 2とSoftEtherを使って自宅VPNを構築してみた

これまでヤマハやBUFFALOの市販のルータを使って自宅VPNを構築してきた。 totech.hateblo.jp totech.hateblo.jp しかし、先日BUFFALOのルータを買い換えたところ、PPTPサーバ機能がなくてVPNサーバとして使えなかったため、 Raspberry Pi 2を使ってソフトウ…

apt-get install時に「 パッケージ 'wireless-tools' のファイル一覧ファイルに最後の改行がありません」エラー

久しぶりにRaspberry Piを触った。 Raspberry Pi 2にapt-getでchkconfigを入れようとしたときによくわからないエラーが出たので、対策をメモ。 エラーと対応方法 apt-getでchkconfigを入れようとしたときに、wireless-toolsパッケージ周りでエラーが発生し、…

【ベイズ統計】HMC(ハミルトニアン・モンテカルロ)法をRで理解する

ベイズ統計に関する以下の本を読んだ。基礎からのベイズ統計学: ハミルトニアンモンテカルロ法による実践的入門作者: 豊田秀樹出版社/メーカー: 朝倉書店発売日: 2015/06/25メディア: 単行本この商品を含むブログ (5件) を見るこの本のゴールはHMC法(ハミル…

Cloudera Managerのチャート機能でリソース使用状況を可視化する

前回、Hadoopのパフォーマンスを計測するベンチマークの使い方を見た。 totech.hateblo.jp通常、パフォーマンス計測時には裏でdstatやsarのようなサーバのリソース使用状況を取得するツールを走らせておくが、これらはログとして保管したり報告資料を作る上…

Hadoopのベンチマーク計測サンプル(TeraSort, TestDFSIO)を動かしてみる

構築したHadoopクラスタの性能がどの程度なのかを知る上で、共通で標準的な計測手順があると便利だと思い調べてみたところ、Hadoopに標準でベンチマークを計測するスクリプトが用意されているようだったので、これを使ってみる。 サンプルはたくさんあるよう…

RubyでHadoop Streamingを動かしてみる

mHadoopでMapReduceジョブを実行するには最近はHiveを使うのが一般的だが、MapReduceを手軽に使うための方法としてHadoop Streamingがある。 これは標準入出力を利用してMapReduceジョブを実行できるというもので、Javaで複雑なコードを実装せずに手軽に試せ…