2015-01-01から1年間の記事一覧
前回のポストで作成したインスタンスだが、EC2のインスタンスは起動する毎にIPアドレスが振りなおされるので、前回のIPアドレスではアクセスできなくなってしまう 単純な検証であればよいのだが、それでは困る場合はelastic IPという固定のIPアドレスを使う…
screenrc 全体像 ### Under Bar Style hardstatus alwayslastline "%H[%n] [%w]" termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l' shelltitle "$ |bash" ## active screen is red(rw) ## non active screen are blue(bw) caption always "%?%F%{=…
AWSのEC2の使い方です とりあえず今回はteratermでアクセスするまでの方法を説明します インスタンスの作成 1. まずはEC2にアクセス 2. instances(インスタンス)を選択 3.『 インスタンスの作成』を選択 4. OSの選択 希望のOSを選択します 5. インスタンスタ…
3PARとは 3PARは、1999年に設立されたストレージベンダーです チャンクレット 従来型のディスクストレージで4台の物理ドライブとRAID 1によってLUNを構成した場合、1台の物理ドライブが毎秒200回のI/Oを処理できるとすると、LUN全体のI/O性能はライトで毎秒4…
大まかに分けると マスタ型 GoogleのBigtableが元祖 Bigtable, CouchDB, HBase, Hibari, MongoDB ひとつのマスタノードが配下にある多数のノードを分類する マスタがダウンするとシステム全体が止まる マスタを冗長化したり、他のnodeにマスタの代行をするよ…
データモデル マスタ型P2P型イネーブラ型オンメモリタイプオンディスクタイプKVS型HibariDynamoVoldemortRiakROMAMemcashedRedisScalaris TokyoCabinet/Tyrant カラム型BigtableHBaseHyperTableCassandraグラフ型Neo4jInfiniteGraphドキュメント型MongoDBCou…
NOSQLとは Not Only SQLの略 昨今のweb業界などにおけるBigdataを扱う為に研究・開発された 早い時期からビッグデータに直面して、対応技術を開発してきたのがAmazon(Dynamo)とGoogle(Bigtable)であり、その後に開発された多くのNOSQLの見本となっている Big…
同じくPCを整理していたら(ry cookieとは HTTPにおいて、クッキー{Cookie}とは、元々ユーザエージェント(Webブラウザ)によって保存される「小さな」ファイルを指す クッキーは、専用のHTTPヘッダ、あるいはJavaScriptにより利用することができる HTTPでは“…
なんか年末大掃除でPC内を掃除してたら新人の頃に作ったドキュメントが出てきたので。。 概要 HTTPを利用してネットワーク越しに処理を実行して結果を受け取る仕組み 例) 例えばGoogleやYahoo!が公開する検索APIは、検索キーワードを送ることで、検索結果を…
Gemfile gemの取得先を記述する 通常はsourceとgemspecの2行、もしくはsourceの1行だけでよい source "https://rubygems.org" gemspec gemspec 実際の情報を記述するファイル Gem::Specification.new do |s| s.authors = [] s.homepage = '' ・ ・ ・ gemの…
tchmgr ハッシュデータベースAPIやそのアプリケーションのテストやデバッグに役立つTool コマンド tchmgr put [-nl|-nb] [-sx] [-dk|-dc|-dai|-dad] path key value 代表的なコマンド tchmgr put tcファイルにデータを格納する tchmgr put test.tc key1 val1…
lddコマンドを使ってライブラリの依存関係を調べることが出来ます。 ライブラリ調査 コマンド ldd ${ライブラリ} 例 ldd libtokyocabinet.so libbz2.so.1 => /usr/lib64/libbz2.so.1 (0x00002b859cd82000) libz.so.1 => /usr/lib64/libz.so.1 (0x00002b859cf…
コマンド grep -r '#{検索したい輪ワード}' #{検索したいパス} 例 カレント以下のファイルからhogehogeという文字を含む行を全検索する場合 grep -r 'hogehoge' ./
NOSQLのRiakをinstallする方法です http://docs.basho.com/riak/latest/ Installation 1. erlangをinstallする portaltan.hatenablog.com 2. ライブラリのinstall # いらないのもあるかもしれません yum install gcc gcc-c++ glibc-devel make ncurses-devel…
ErlangをCentOSにinstallする手順です。 今回は最新versionの18.1をinstallしてみたいと思います。 Install Erlang 1. download kerl curl -O https://raw.githubusercontent.com/spawngrid/kerl/master/kerl chmod a+x kerl ls -k kerl # => -rwxr-xr-x 1 r…
セクタサイズ # fdisk -l /dev/sda1 | grep 'Sector size' Sector size (logical/physical): 512 bytes / 512 bytes HDDのデータ領域の最小単位 ブロックサイズ # tune2fs -l /dev/sda1 | grep "Block size" Block size: 4096 IO sysytemが利用する最小単位 …
前回に引き続きエンディアン関連のポストです。 ネットワークバイトオーダー・ビッグエンディアン・リトルエンディアンとは - 脳汁portalBOMをデータの先頭に付与することで、データを受け取る側がエンディアンを判別できるようになると書きましたが、Rubyで…
バイトオーダー マルチバイトデータのメモリ上での並べ方(順番)のこと ホストバイトオーダー、エンディアンともいう この並べ順は統一されておらず、プロセッサの種類によって異なる 並べ方 ビッグエンディアン データの上位バイトからメモリに並べる並べ方 …
select 監視するファイルディスクリプタのサイズに制限がある 一件一件FDを確認する kernel側でFDのstatus情報を保持していないので、毎回チェックする必要がある I/O処理の流れ 1. select側で監視するFDのリストを持つ 2. I/O処理のリクエストをselectが受…
キネシスキーボードとMicrosoftのNatural Ergonomic Keyboard 4000を数ヶ月使用してみた感想です。 Kinesis Niceな点 キー一つ一つに傾斜がついていて、楽に打てる(らしい) テンキーがついていないので、意外と幅が小さい 手首毎動かす頻度は確かにすごい減…
(データ)コレクション は、オブジェクトの集合を扱うための仕組みです。 メモリ上におけるデータ配置に注目しながら代表的な四つを説明します。 データ形式 vector A(iteratable)であり、B(random accessible)でもある。 メモリは連続領域を確保しなければな…
APIやTCP socketsの返り値が強制的にstringになってしまう場合に、それを再び正しいクラスへ戻すメソッドです。 to_array to_array gem to_array | RubyGems.org | your community gem host install 方法 gem install to_array 例 require 'to_array' array …
途中までローカルで作成したプロジェクトをやっぱりgithubで管理したいとなった時の手順 クライアントを使ったり、サーバ内で完結する方法など何個か方法がありますが、(私が)一番簡単だと思う方法を載せます。 手順 1. WebのGithub Pageから対象のリポジト…
自作のgemを開発してrubygems.orgへ公開する方法です。 RubyGems.org | your community gem host 今回はto_arrayという名前のgemを作りたいと思います。 to_array arrayがto_strメソッドによってstringに変換されてしまったり、文字列で返ってきた場合に文字…
以前以下のように文字列で返ってきた"true"や"false"をBooleanに変換するto_boolメソッドの実装方法を紹介しましたが、それをgem化して公開しました。portaltan.hatenablog.comたが問題として、「to_bool」も「to_boolean」も「to_b」も全部既にgemの名前と…
興味はあったけど手を出さずにいたarduino unoを買ってみました。 簡単な使い方 1. arduino IDEをinstallする 開発に必要なarduino IDEを以下のリンクからダウンロードしてinstallしておきます。 (結構容量が大きいので我が家では10分程度かかりました。) ma…
各種proxyの設定方法です。 環境変数 bash export http_proxy="${proxyURL}:${port}" export https_proxy="${proxyURL}:${port}" tcsh setenv http_proxy ${proxyURL}:${port} setenv https_proxy ${proxyURL}:${port} yum yum.confを作成・編集する vi /etc…
Vagrantのboxは気づけば結構容量を食っているので、配置場所を変更する方法を載せます。 今回はDドライブへ変更します。 手順 コマンドプロンプトから $ SETX VAGRANT_HOME D:\Vagrant\.vagrant.d $ echo "%VAGRANT_HOME%" $ vagrant -h 終わったら実際に指…
過去のコミットのユーザ名やemail addressを変更する方法です。 typoに後から気づいた場合や、アカウントを使い分けていたが統一したくなった場合など。 注意 歴史改変になるのでバックアップ推奨 コマンド 以下のコマンドをコマンドラインで実行する git fi…
Rubyにデフォルトで入っているテストフレームワークのUnit testの使い方です。 ちなみに以前書きましたがrubyのデフォルトのテストフレームワークは各versionで中身が違います。portaltan.hatenablog.com 使い方 準備 unit.rb require 'test/unit' class Sam…