タグ

ブックマーク / codezine.jp (12)

  • IBMが買収した「SoftLayer」―物理サーバ対応、データセンター間トラフィックが無料など、企業向けに使える機能が揃う

    SoftLayerは、米国ではAWSやRackSpaceなどに次ぐクラウド事業者として比較的高い知名度を誇る一方で、営業やマーケティングにはほとんど力を入れてこなかった企業だ。そのせいもあってか、主要な顧客の多くはWebサイトからオンラインサインアップでクラウドを使うスタイルに抵抗のないスタートアップやオンラインサービス系である。また日国内においては、拠点もなくサービスも日語化もされていなかったためあまり知られていない。 このSoftLayerを2013年7月にIBMが買収した。IBMの営業力とマーケティング力、そして手厚いサービスをSoftLayerに加えることで、エンタープライズ市場およびグローバル市場への展開を加速する構えだ。 IBMがSoftLayerを買収した理由は3つあると考えられる。1つは、クラウド市場で有望なプレイヤーを買収することによる規模の拡大と技術の調達。2つ目は

    IBMが買収した「SoftLayer」―物理サーバ対応、データセンター間トラフィックが無料など、企業向けに使える機能が揃う
  • Fluentdで始めるリアルタイムでのログ有効活用

    はじめに Fluentdは、ログを収集し格納するためのログ収集基盤ソフトウェアです。Fluentdにインプットされた、すべてのログをJSONに変換し、アウトプットします。インプットとアウトプットはモジュール化されており、モジュールを追加することでインプット元とアウトプット先を追加できるようになっています。 Fluentdは急速に知名度を高め、多くのWebサービス会社で実際に使用されるようになりました。従来のログが抱えていた問題も、Fluentdが適切な解決策となっていると認知され、かつ簡単に導入・スモールスタートできるミドルウェアであったことが大きかったと思います。 稿では、Fluentdの簡単な仕組みと導入方法、シンプルな動作事例について紹介します。 対象読者 システム管理者 データサイエンティスト 必要な環境 UNIX系OS Ruby 1.9 ログを出力する理由 システム運用を始める

    Fluentdで始めるリアルタイムでのログ有効活用
    kzk
    kzk 2013/02/14
    #fluentd
  • 安全なシグナルハンドラを実装するには ――C/C++セキュアコーディング入門(4)

    UNIXなどPOSIX準拠のOSでは、割り込みや例外を抽象化した「シグナル」と呼ばれる仕組みを用いてプロセスに(非)同期イベントが通知されますが、シグナルハンドラで行える処理には制約があり、これを無視したコードを書くと脆弱性につながる恐れがあります。今回はシグナルハンドラの制約に関するルールを見てみましょう。 シグナルハンドラの制約 UNIXなどPOSIX準拠のOSでは、割り込みや例外を抽象化した「シグナル」と呼ばれる仕組みを用いてプロセスに(非)同期イベントが通知されます。ユーザが[Ctrl]-[C]キーを押してプログラムを中断しようとしたり(SIGINT)、整数オーバーフローが発生したり(SIGFPE)すると、それらのイベントに対応するシグナルがカーネルからプロセスに対して通知されるのです。プログラマは、これらのシグナルを受信した時に特定の動作を行わせる「シグナルハンドラ」を書くことが

    安全なシグナルハンドラを実装するには ――C/C++セキュアコーディング入門(4)
    kzk
    kzk 2010/01/04
  • クラウド時代に備えて、プログラマーが理解しておくべき考え方

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    クラウド時代に備えて、プログラマーが理解しておくべき考え方
    kzk
    kzk 2009/02/26
  • はてな近藤、伊藤、 DeNA川崎の3氏がソフトウェアジャパンアワード2009を受賞

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    はてな近藤、伊藤、 DeNA川崎の3氏がソフトウェアジャパンアワード2009を受賞
    kzk
    kzk 2009/01/29
    おめでとうございます!
  • C++0xのマルチスレッド機能

    はじめに C++の新しい標準規格である「C++0x」の大きな新機能の1つが、マルチスレッド処理のサポートです。 従来のC++では、マルチスレッド機能は標準規格の拡張としてコンパイラごとに提供されていたため、細かな部分がコンパイラやプラットフォームによって異なっていました。しかしC++0xでは、すべてのコンパイラが同じメモリモデルに準拠し、同一のマルチスレッド機能を利用できることになります(ただし、従来同様の拡張をコンパイラが独自に提供することも可能です)。 開発者の立場からすると、マルチスレッドのコードを別のコンパイラやプラットフォームへ移植するときの手間を大きく省くことができます。複数のプラットフォーム向けの開発を行う場合でも、種々雑多なAPIや構文をいくつも頭に入れておく必要がありません。 新しいスレッドライブラリの中心を担うのは、実行スレッドを制御するstd::threadクラスです

    C++0xのマルチスレッド機能
  • blogeyeの実装に学ぶ、Amazon EC2/S3でのHadoop活用術:CodeZine

    はじめに こんにちは。Hadoop連載 第4回は太田さんに代わって大倉が担当します。 これまでの連載で、Hadoopによるデータ処理の概略については理解されていると思います。今回はHadoopを利用したシステムの実例ということで、ブログ分析を行う「blogeye」システムの概略と、その中でのHadoop利用法を紹介します。 また、blogeyeAmazonが提供しているEC2(レンタルサーバ)、S3(ストレージ)をHadoopと組み合わせて利用しているので、その辺りの導入方法についても紹介します。これまでの連載Hadoop、hBaseで構築する大規模分散データ処理システムHadoopのインストールとサンプルプログラムの実行複数マシンへHadoopをインストールする blogeyeとは 「blogeye」(ブログアイ)は日語のブログをクロール、リアルタイムに分析して、流行語と思われるもの

    kzk
    kzk 2008/08/05
    せる連載くま
  • 複数マシンへHadoopをインストールする:CodeZine

    1.前回のおさらい 前回はHadoopを1台のマシンにインストールし、簡単なサンプルプログラムを実行しました。また、HDFSやMapReduceについても解説しました。今回は複数のPCへのインストールを行います。その後、大規模なデータを実際に処理し、その性能を測ってみたいと思います。2.用意した環境 今回は、東京大学 理学部 情報科学科で学生用に解放されているクラスタを使用しました。このクラスタは24台のノード(c0-0 ~ c0-23)で構成されており、1GbpsのEthernetで相互に接続されています。また、すべてのノードの/homeディレクトリはNFSで共有されています。計算ノードのスペックは次のとおりです。

    kzk
    kzk 2008/06/27
    せるくま
  • Hadoopのインストールとサンプルプログラムの実行:CodeZine

    前回はGoogleの基盤技術とそれに対応するオープンソースソフトウェアとして、Hadoop & hBaseを紹介しました(図1 参照)。今回はHadoopを1台にインストールし、サンプルプログラムを動かします。次にHDFSとMapReduceのアーキテクチャを解説します。最後にサンプルプログラムのソースコードを解説します。2. Hadoopの概要 Hadoopは主にYahoo! Inc.のDoug Cutting氏によって開発が進められているオープンソースソフトウェアで、GoogleFileSystemMapReduceというGoogleの基盤技術のオープンソース実装です。Hadoopという名前は開発者の子供が持っている黄色い象のぬいぐるみの名前に由来しています。HadoopはHDFS(Hadoop Distributed File System)、Hadoop MapReduce Fr

    kzk
    kzk 2008/05/15
    せるくま
  • Hadoop、hBaseで構築する大規模分散データ処理システム:CodeZine

    はじめに この連載では、大規模分散計算フレームワーク「Hadoop」と、その上につくられた大規模分散データベース「hBase」の仕組みと簡単なサンプルアプリケーションを紹介します。HadoopとhBaseは、Googleの基盤ソフトウェアのオープンソースクローンです。機能やコンセプトについては、Googleが発表している学術論文に依っています。 これらの学術論文によると、Googleでは大規模分散ファイルシステム「Google File System」、大規模分散計算フレームワーク「MapReduce」、大規模分散データベース「BigTable」、分散ロックサービス「Chubby」という4つのインフラソフトウェアが使われています。 図1にGoogleの基盤技術間の依存関係、そしてそれに対応するOSSの対応関係を示しました。まずは対応するGoogleの基盤技術それぞれの機能や特徴をざっくりと

    kzk
    kzk 2008/05/01
    せるくま
  • 「Google Collections Library」でJavaのコレクションを補完する:CodeZine

    はじめに 何年も前のことですが、私が初めてJavaに興味を覚えた理由の1つは、Javaプラットフォームに標準でコレクションライブラリが組み込まれていたからでした。当時、C++の世界ではまだSTL(Standard Template Library)が定着しておらず、開発者たちは適当なコレクションライブラリを購入して利用するか(Rogue Waveが流行っていました)、自分の手でライブラリを書くしかありませんでした。正確な数は忘れましたが、私自身も、さまざまな目的でさまざまな種類のプリミティブやオブジェクトの連結リストを実装しました。さらに、もっと複雑なコレクションや平衡2分探索木、ハッシュテーブルなども自分で実装しました。そのようにしてソフトウェア工学の原理を絶えず意識することは決して無駄なことでありませんでしたが、生産性を考えるとそうとばかりも言えませんでした。 しかし、Javaによって

    kzk
    kzk 2008/04/21
  • プログラミングと開発者のためのCodeZine:Rubyで作るProlog処理系(Ruby, Prolog, 記号処理, 自動推論)

    はじめに 1970年代にヨーロッパを主な舞台として生まれ育ったプログラミング言語Prologprogramming in logic)は、事実とルールから一種の自動推論を行う点に特徴があります。その基的な動作は200行ほどのRubyプログラムで実現できます。ここでは、筆者がRubyで作成したProlog処理系を解説します。 Prologによる簡単なプログラム例を下記に示します。 これは「ソクラテスは人間(human)である」「プラトンは人間である」という事実と、「人間ならばいつか死ぬ(mortal)」というルールを書いたものです。mortal(X) :- human(X)は、変数Xが実際には何であったとしても、もしもhuman(X)が成り立つならば(つまりXが人間ならば)、mortal(X)が成り立つ(つまり、Xはいつか死ぬ)という意味です。 簡略化のため、処理系ではRubyの構文要

    kzk
    kzk 2006/09/06
  • 1