Shoeisha Technology Media

EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

「uspBOA」 ~シェルスクリプト+uspTukubai で、ビッグデータ簡単スピード処理~

2013/01/29 00:00

2012年11月28日、IT Initiative Day 2012 Multi DB Specialが開催された、有限会社ユニバーサル・シェル・プログラミング研究所 代表取締役所長の當仲寛哲氏によるセッションでは、同研究所が発表したソフトウェアアプライアンス製品「uspBOA」を紹介。実際に100億件のデータを処理するデモなども披露された。

 

ビッグデータ処理の自社開発ハードルを下げる

ユニバーサル・シェル・プログラミング研究所
代表取締役所長
當仲 寛哲 氏
有限会社ユニバーサル・シェル・プログラミング研究所 代表取締役所長 當仲 寛哲 氏

 uspBOA (Bigdata Oriented Architecture) は、ユニケージ開発手法をベースにしたビッグデータ処理専用ソフトウェアアプライアンスである。一般的にアプライアンスと呼ばれているのは、ある用途に特化したハードウェア製品だが、uspBOAは汎用のPCとオープンソースを使い、ソフトウェアだけで大量データの処理を快適に行うことを可能にしている。Hadoopの廉価性とスケールアウトに、アプライアンス商用製品の性能・保守サポート・安定性を合わせた「いいところ取りをする」というのが製品コンセプトだ。

 ここで採用されているユニケージ開発手法とは、シェルスクリプトとテキストファイルで企業の基幹システムを安く、早く、柔軟に構築することを可能にしたものだ。「プログラムの習得が容易」、「データ構造が明快」、「プログラムが非常に短い」、「UNIX系のOSの最新機能でセキュリティを確保している」などの理由から、良品計画、成城石井、東急ハンズ、ローソン、ロッテリア、三省堂書店など多数の企業が採用している。

 企業内には人事、財務、会計、在庫管理、販売管理、請求管理、店と本部のコミュニケーション、指示伝達、進捗管理など様々なシステムがあるが、ユニケージ開発手法により、そうしたものを全てワンストップで作ることができる。

 多くの企業では、各種システム導入にあたり、パッケージ製品などを購入してきた。しかし競争の激化によりシステムに対する要求が高まる一方、コスト削減も強く求められている。だからといって、従来手法による自社開発は、非常にハードルが高い。

 一方、ユニケージ開発手法では、プログラムの習得が非常に容易で、講習1ヶ月とOJT3ヶ月ぐらいで使えるようになる。プログラムがとても短いのが特徴で、COBOLやJavaと比較し、17分の1、40分の1になった実例がある。非常に簡単に、シンプルに作成できるので、今まで縁遠かった「自分たちで開発」ができる。

 テキストとUNIX系とシェルスクリプトということで「セキュリティは大丈夫なのか」という話がある。その点についてはUNIX系OSの機能をしっかり使い、暗号化など世の中でセキュリティといわれているものは全て実装されている。

 ここで當仲氏は、ユニケージ開発手法により、300万件のデータを対象にしたデモを披露した。商品の仕入れ価格と標準販売価格、売上記録などのデータから条件を指定して抽出、ソートし、売買数、売上、粗利に関するレポートを作成する。単に数字を集計するだけでなく、桁揃えやカンマ付け、罫線など見やすくするための加工までの処理を行うためのコマンド入力と処理実行を、数分で行ってみせた。當仲氏は「順番に足す、引く、繋げるなどのコマンドを実行していけば、企業のどのようなレポートも作成できる」と語る。ここで用いるコマンドは2~30種類程度であり、Excelで難しい関数を覚えて使うことと比較しても、習得は容易だ。

 これをプログラム化するには、そのコマンドの実行履歴をテキストファイルにコピー&ペーストすればいい。企業系のかなり複雑な処理でも、100行を超えることは珍しいという。

100億人のデータを数秒で処理。負荷分散の自動化も可能 

 「uspBOA」には、以上のユニケージ開発手法の特徴に加え、ビッグデータの処理を高速かつ廉価で行うための仕組みが取り入れられている。まずOSはUNIX系であれば、何でも動く。コストを抑制したいのであれば、Linux、FreeBSDといったOSS系を使えばいい。ハードウェアに関しても、エントリークラスのサーバで動く。

 Hadoopと同様にスケールアウトが可能で、負荷に応じた分散処理を動的に変更することもできる。使われている機能は40年前からあるUNIXの“枯れた”ものだけであり、安定している。OSとカーネルに精通した技術により、保守サポートがあることも安心材料だ。

uspBOA 製品の特長
uspBOA 製品の特長

 続いて披露された「uspBOA」のデモではまず、10億件のトランザクションを数十秒で処理する様子が紹介された。さらにビッグデータ処理のデモでは、100億人のデータ(ランク、名前、出身地、電話番号、登録年月日、年齢、性別、4教科の試験の点数)を対象にした抽出、検索などが行われた。データは5台のスレーブサーバに分割して置かれ、処理はその上位のマスターサーバにシェルスクリプトを記述することで行われる。

デモ環境の構成図

 

 大量データ処理が必要な部分には、clustコマンド群やparaコマンド群を使用する。if文でデータ量に応じた負荷分散の自動化なども可能だ。OSはFreeBSD、Linux、OSSベースで、その上にusp Tukubaiコマンド群が載っており、そこでシェルスクリプトを書く。

シェルスクリプトの記述例
シェルスクリプトの記述例

 

 最後に當仲氏は、2013年3月までの期間限定のキャンペーンとして、早期導入ユーザー向け特別価格と、同じく14日間のデモ環境の無償提供(ネットワーク経由のアクセスも可能)を紹介し、セッションを閉じた。



著者プロフィール

バックナンバー

連載:IT Initiative Day

もっと読む

この記事もオススメ

All contents copyright © 2007-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5