タグ

ブックマーク / www.publickey1.jp (172)

  • データベースのスケーラビリティをどうやって向上させるか

    これまでPublickeyではデータベースのスケーラビリティに関するさまざまなトピックを取り上げてきました。クラウド時代にはスケーラブルなデータベースのニーズがこれまでになく高まっているためです。 この記事では、これまで取り上げてきたデータベースのスケーラビリティに関する技術を少しまとめて紹介しようと思います。 従来のリレーショナルを拡張 従来のリレーショナルデータベースに対して、技術的工夫を凝らすことでスケーラブルなデータベースを実現しようというアプローチにも、さまざまなものがあります。 データベース研究者の大御所、マイケル・ストーンブレイカー氏は、リレーショナルデータベースは決して遅くないと主張。リレーショナルデータベースが遅い原因はロック、ラッチ、リソース管理にあるとして、それらを極力排除した「VoltDB」を開発しています。 NoSQLを上回る性能のVoltDB、そのアーキテクチャ

    データベースのスケーラビリティをどうやって向上させるか
  • さよなら、僕が知っていたイーサネット

    20年ほど前にイーサネットを学び始めた頃、イーサネットの2つの大きな特徴を教わりました。1つは、イーサネットでは複数のノードがケーブルを共有しているため、信号の衝突(コリジョン)が発生すること。もう1つはネットワーク構造には決してループとなる部分があってはならない、ということです。 しかしこの2つの特徴は、イーサネットの進化とともに消え去ろうとしています。イーサネットは僕の知っている昔の姿から大きく変わろうとしているのです。 コリジョンはなくなった イーサネットの大きな特徴の1つが、CSMA/CD(キャリアセンスマルチプルアクセス/コリジョンデテクト)です。ネットワークに複数の機器が接続されている場合、同時に通信を開始するとネットワーク上で信号が衝突するコリジョンが発生、コリジョンの発生が検出された場合には、それぞれの機器はランダムな時間だけ待って再送する、という仕組みです。 これによりイ

    さよなら、僕が知っていたイーサネット
  • iPhone/iPad/Android/PC対応、Webアプリの画面をドラッグ&ドロップで開発する「Maqetta」、オープンソースで開発中

    iPhone/iPad/Android/PC対応、Webアプリの画面をドラッグ&ドロップで開発する「Maqetta」、オープンソースで開発中 Webアプリケーションの開発において、タブやボタンやスライダーなど、さまざまなコントロールを画面上にレイアウトしていくためには、これまでHTMLJavaScriptを組み合わせた面倒なコーディングが必要でした。 それを、ビジュアル開発ツールの画面上でドラッグ&ドロップで開発できるツール「Maqetta」がオープンソースとして開発されています。PCの画面だけではなく、iPadiPhoneAndroidなどの画面にも対応しています。 Maqettaはもともと米IBMが開発していたツールで、4月に非営利団体のDojo Foundationにオープンソースプロジェクトとして寄贈されました。 Maqetta自身もHTML5のWebアプリケーションとなって

    iPhone/iPad/Android/PC対応、Webアプリの画面をドラッグ&ドロップで開発する「Maqetta」、オープンソースで開発中
  • 次世代JavaScriptを“いま”実現するグーグルの「Traceur」

    現在仕様策定中の次世代JavaScriptが備えるであろうクラスの継承やモジュール化機能を、いまのJavaScriptで実現するコンパイラ「Traceur」をグーグルが公開しました。 traceur-compiler - Google's vehicle for Javascript Language Design Experimentation - Google Project Hosting TraceurはJavaScriptで記述されたコンパイラとして実装されており、オンザフライでTraceur対応JavaScriptを現在のJavaScriptに変換、実行します。 具体的には、HTMLの先頭で「traceur.js」を読み込んでおくと、そのWebサイトではそれ以後、Traceur対応のクラスやモジュール化機能を備えた次世代JavaScriptをそのまま実行できる、ということになり

    次世代JavaScriptを“いま”実現するグーグルの「Traceur」
  • Node.jsとは何か、開発者ライアン・ダール氏が語る(前編)~ノンブロッキングとはどういうことか?

    いま注目されているサーバサイドJavaScriptの火付け役となったNode.js。その開発者であるライアン・ダール(Ryan Dahl)氏自身がNode.jsを紹介した講演「Introduction to Node.js with Ryan Dahl 」のビデオが公開されています。 この講演は、サンフランシスコのPHP開発者の集まりであるThe SF PHP Meetup Groupが2月にダール氏を招待して行われたもの。 そのため、Node.jsを知らないデベロッパーに向けて、Node.jsがどのような特徴を持つプログラミング言語なのか、分かりやすく解説しています。内容を紹介しましょう。 Node.jsとPHPとの質的な違いとは何か Node.jsを触ってみよう。今日は特にスライドは用意してなくて、タイプしてどんなものかを動かしながら紹介していくつもりだ(注:ダール氏はここで最初に「

    Node.jsとは何か、開発者ライアン・ダール氏が語る(前編)~ノンブロッキングとはどういうことか?
  • DeNAによる大規模なMySQLノンストップ運用の裏側にある、フェイルオーバー自動化ツール

    4月11日から米サンタクララで行われた「MySQL Conference & Expo 2011」。このイベントでDeNAの松信嘉範(まつのぶよしのり)氏が、同社の大規模なMySQLの運用を支えている技術とツールについてのセッション「Automated, Non-Stop MySQL Operations and Failover」を行いました。 プレゼンテーションの中で、社内で利用しているフェイルオーバーの自動化ツールをオープンソース化することにも触れています(英語のドキュメントも作成中とのこと)。 MySQLの大規模運用における自動フェイルオーバーは、特にクラウドでのMySQLの利用が増えるにつれてニーズが高まる分野と思われます。セッションのスライドが公開されていますので、そのポイントを紹介していきます。 自動化されたノンストップなMySQLの運用 ソーシャルゲームでは高可用性が強く求

    DeNAによる大規模なMySQLノンストップ運用の裏側にある、フェイルオーバー自動化ツール
  • IEEEがクラウド標準化への取り組みを開始、クラウドの移植性や相互運用性に関して

    国際標準化団体のIEEE(アイトリプルイー)は4月4日、クラウドの標準化に取り組む2つのワーキンググループ「IEEE P2301」と「IEEE P2302」を立ち上げたと発表しました。 P2301はクラウドの移植性や相互運用に関するインターフェイスやファイルフォーマットに関するガイドの作成を、P2302はクラウド間の連係のためのトポロジー、プロトコル、機能についての標準策定に取り組むとしています。 移植と相互運用のガイド、連係のための標準 それぞれのワーキンググループの詳細を見ていきましょう。 P2301 - Guide for Cloud Portability and Interoperability Profiles (CPIP) P2301は、クラウドのポータビリティ(移植性)と相互運用性のためのガイドを作成することを目的としています。ワーキンググループが掲げる説明を引用しましょう

    IEEEがクラウド標準化への取り組みを開始、クラウドの移植性や相互運用性に関して
  • グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? - Publickey

    グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? グーグルでTest Engineering Directorを務めるJames A Whittaker氏が、ブログ「Google Testing Blog」に書いているグーグル社内のソフトウェア品質に関するノウハウ。最近の記事「How Google Tests Software - Part Four」「How Google Tests Software - Part Five」では、ビルドの種類とテストの種類について紹介しています。 One of the key ways Google achieves good results with fewer testers than many companies is that we rarely attempt to sh

    グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? - Publickey
  • グーグル、マイクロソフト、Yahoo!、Facebookらが新しいネットワーキング技術の実現へ「Open Networking Foundation」を結成

    グーグル、マイクロソフト、Yahoo!、Facebookらが新しいネットワーキング技術の実現へ「Open Networking Foundation」を結成 サーバの仮想化やクラウドが普及したことで、「サーバを用意すること」の意味が、物理的なサーバを調達することから、サーバのインスタンスを立ち上げることへと変わろうとしています。いまではAPIを叩けば、CPUの性能やメモリ容量を指定し、いくつインスタンスを立ち上げ、いつシャットダウンするのか、すべてAPIから指定できる環境が広まっています。 同じことがネットワークでも起ころうとしています。現在のところ「ネットワークを構築する」こととは、ケーブルを引いてルータやスイッチの設定画面からルーティングやVLANを設定することです。設定されたネットワークは基的にスタティックなものであり、構成を変えるには再びルータやスイッチの設定画面を開いて設定をや

    グーグル、マイクロソフト、Yahoo!、Facebookらが新しいネットワーキング技術の実現へ「Open Networking Foundation」を結成
    lanius
    lanius 2011/03/28
    OpenFlowについて。
  • 大規模アジャイル開発の実態~ セールスフォース・ドットコムの作り方(前編)

    クラウド上に構築したアプリケーションをサービスとして提供するセールスフォース・ドットコム。同社は千人以上の開発者を抱える開発部門全体でアジャイル開発手法を採用し、開発を行っています。 アプリケーションのメジャーアップデートは年3回。クラウドで提供しているサービスという性格上、もしもアップデートにバグがあればそれは全ユーザーに対して大きな影響を与える可能性があります。バグがないこと、性能低下を起こさないこと、品質管理はパッケージソフトウェア以上に重要です。 同社はどのようにしてアジャイル開発手法を採用し、品質を重視した開発を進めているのか。2月17日に行われたデベロッパーズサミット2011で、株式会社セールスフォース・ドットコム CTO 及川喜之氏のセッション「salesforce.comの作り方 どのように世界最大規模のアジャイル開発を実現したか」で詳しく紹介されていました。 同社の開発手

    大規模アジャイル開発の実態~ セールスフォース・ドットコムの作り方(前編)
  • クラウドに最適化したMySQLのフォーク「Drizzle」が正式版公開

    MySQLからフォークし、クラウド用途に最適化して開発された「Drizzle」が3月15日に最初の正式版を公開しました。 MySQLはよく知られたオープンソースのリレーショナルデータベースです。そのMySQLを、トランザクション機能を維持したままクラウドのような大規模分散環境での並列処理とマルチコアCPUに最適化したのが「Drizzle」です。 多くのWebサービスのバックエンドでは、高速なデータベース処理を実現するために多数のMySQLサーバを用いた分散処理をしていますが、Drizzleではそうした用途に特化して設計されています。 NoSQLに対するSQLからの回答 Drizzleは、大規模なWebサービスのバックエンドデータベースとして利用することを想定しているため、Web系サービスのバックエンドとしてはほとんど使われないだろう機能が省かれています。例えば、ACL(アクセス制御リスト)

    クラウドに最適化したMySQLのフォーク「Drizzle」が正式版公開
  • XMLをモバイルデバイスなどでも高速処理可能にした新フォーマット「EXI」をW3Cが勧告

    XMLをバイナリ化して効率的に圧縮することで転送速度や処理に必要なメモリ容量を小さくし、モバイルデバイスなどでも扱いやすくした「Efficient XML Interchange」(EXI)を、W3Cが3月10日に勧告しました(記事末にリンクしたEXIワーキンググループチェア 上谷卓己氏のビデオによると「エクシィ」と読むようです。)。 XMLは、表現したい値にタグ付けをして意味を示すというマークアップ言語の性格上、XML文書が肥大化しがちで、XML文書から値を取り出すためのパース処理も重くなるという課題を抱えていました。 例えばXMLで「20歳」という年齢を表現しようとすると<age>20</age>となり、20という2文字の値に対して11文字ものタグが付くことになります。そのためXMLによるデータ交換は効率が悪く、性能が出にくいものでした。その結果、JSONのようにシンプルなフォーマット

    XMLをモバイルデバイスなどでも高速処理可能にした新フォーマット「EXI」をW3Cが勧告
  • 「次世代Hadoopの開発に着手する」Yahoo!が宣言、数万台以上のクラスタをサポートへ

    Yahoo!が大規模分散処理のフレームワーク「Hadoop」の次世代版を開発することを、ブログYahoo! Developers Networkにポストしたエントリ「The Next Generation of Apache Hadoop MapReduce」で明らかにしました。 Yahoo!によると、現在のHadoopの実装では1クラスタあたり4000台程度でスケーラビリティの限界にあたるため、アーキテクチャを見直して信頼性や可用性を高めると同時に、1万台から2万台を超えるクラスタのスケーラビリティを実現したうえで、従来のHadoopとアプリケーションの互換性を保つ予定とのこと。さらに、マルチテナント対応、多言語プログラミングのサポートなども実現する予定のようです。 Apache Hadoopコミュニティと協力して開発を進める Yahoo!はブログで次のように書いています。 The c

    「次世代Hadoopの開発に着手する」Yahoo!が宣言、数万台以上のクラスタをサポートへ
  • 「jQuery Mobile」の登場で、モバイルアプリケーション開発は大きく変わる - Publickey

    このところHTML5関連のモバイルアプリケーション開発について調べていて、先週の水曜日にはSwapSkills主催のイベント「jQueryモバイルで簡単! スマートフォンサイト作成」に参加してjQuery Mobileについて勉強してきました。 jQuery Mobileとは、jQueryのプラグインとして利用するモバイルアプリケーション用のライブラリです。そしてその驚異的なまでの簡単さは、これから業務用のモバイルアプリケーションの作り方を一変させてしまう可能性を感じさせます。 jQuery Mobileの大きな特徴は次の3つです。 1)HTMLを書くだけでモバイルアプリケーションができてしまう 2)モバイルのユーザーインターフェイス対応の部品が多く揃っている 3)iOS、Android、WebOS、Windows Moblie、Symbianなどクロスプラットフォーム対応である 具体的な

    「jQuery Mobile」の登場で、モバイルアプリケーション開発は大きく変わる - Publickey
    lanius
    lanius 2011/02/15
    jQueryの基本情報についてよくまとまっている。
  • モバイルアプリケーション開発のためのHTML/CSS/JavaScript関連技術まとめ

    モバイルアプリケーションをHTML/CSS/JavaScriptなどのWeb標準技術を用いて開発するためのさまざまなツールや環境が登場しています。1つ前の記事で紹介した「jQuery Mobile」もその1つですが、それ以外のものもここでまとめて紹介しましょう。 jQuery Mobile jQuery Mobileは、JavaScriptライブラリとして知られるjQueryのプラグインです。オープンソースで提供されています。 「マークアップドリブン」をコンセプトとし、HTMLを記述していくことで、あらかじめ用意されているボタン、メニュー、ダイアログボックス、などのモバイル対応のタッチユーザーインターフェイスを備えたアプリケーションを開発できます。 クロスプラットフォームに対応し、iOS、Android、WebOS、Windows Phone、Symbianなど多数のデバイスでそのまま動作

    モバイルアプリケーション開発のためのHTML/CSS/JavaScript関連技術まとめ
  • 「10分でスクラム」、アジャイル開発の「スクラム」に興味がわいた方へ

    今週は、野中郁次郎氏とジェフ・サザーランド氏というアジャイル開発手法「スクラム」の生みの親2人が基調講演を行った歴史的イベント「Innovation Sprint 2011」のレポートを2公開し、たくさんの方に記事を読んでもらうことができました。 スクラムの生みの親が語る、スクラムとはなにか? たえず不安定で、自己組織化し、全員が多能工である ~ Innovation Sprint 2011(前編) 重要なテクノロジーは10名以下のチームで作られた ~ Innovation Sprint 2011(後編) この記事きっかけに「スクラム」に興味を持ったという読者もおられたようで、そんな方のために(かどうかは分かりませんが:-)、「Innovation Sprint 2011」の実行委員長だった川口恭伸氏が「10分でスクラム」というスライドを公開しました。

    「10分でスクラム」、アジャイル開発の「スクラム」に興味がわいた方へ
    lanius
    lanius 2011/01/21
    スクラムについての良い資料。
  • MySQL互換クラウドRDBサービス「Xeround」が公開ベータへ

    MySQL互換ながら独自のクラウド対応ストレージエンジンを搭載することで、スケーラブルなクラウド対応データベースサービスを実現する「Xeround」(ゼラウンドと発音するようです)が公開ベータを開始したことを明らかにしました。 Xeround MySQL Cloud Database Now on Amazon EC2 in Europe | Xeround MySQL Cloud Database Blog Xeroundはクラウド上のDatabase as a Service(DBaaS)として提供されるため、インストールやセットアップは基的に不要。無料でベータ公開サービスを利用可能になっています。 MySQL互換のDatabase as a Service XeroundはMySQLのストレージエンジンアーキテクチャの上に構築されており互換性があるため、すでにMySQLを利用してい

    MySQL互換クラウドRDBサービス「Xeround」が公開ベータへ
  • マイクロソフト、無償のWeb開発環境「WebMatrix」を公開。HTML/CSS/JavaScriptエディタ機能、PHP対応、FTP機能など手軽で便利な統合ツール

    マイクロソフトは先週、無償のWeb開発環境「WebMatrix」の提供を開始しました。WebMatrixには以下のコンポーネントが含まれており、Windowsで簡単にWebサイトの構築を行うことができます。 Web開発ツール HTML/CSS/JavaScript/PHPなどに対応したテキストエディタを含む開発ツール。FTPによりファイルをホストへボタン1つで転送できる HTTPサーバ IIS Express 7.5により、Webブラウザですぐにブレビューできる。しかも(追加インストールにより)PHPにも対応する。当然ASP.NETにも対応 データベースサーバ SQL Server Compact Edition 4により、データベースを利用するWebアプリケーションもローカルで開発可能。MySQLも追加インストール可能 調べた限りではIIS ExpressはWebMatrixの画面から簡

    マイクロソフト、無償のWeb開発環境「WebMatrix」を公開。HTML/CSS/JavaScriptエディタ機能、PHP対応、FTP機能など手軽で便利な統合ツール
    lanius
    lanius 2011/01/17
    Web開発ツール、HTTPサーバ、データベースサーバを内蔵している。
  • NoSQLをRDBの代わりに使うと、どういう恐ろしいことが起こるか。PARTAKEの作者が語る

    データベースの世界でいま注目されているのがNoSQL。特にキーバリュー型データストアは、グーグルのBigTable、FacebookやTwitterが内部で利用しているCassandraやAmazonクラウドが提供しているSimpleDBなど、すでに実際に使われ始めています。 ではそのNoSQLをリレーショナルデータベースの代わりに使ってシステムを構築するとどうなるのか? 身をもって体験したことを記したShinya Kawanaka氏によるプレゼンテーション「間違った方向にCassandraを使ってみた」が公開されています。 NoSQLを用いたシステム構築は、リレーショナルデータベースによる構築どう違うのか? とても分かりやすくまとめられています。ご人の承諾もいただいたので、その内容を紹介しましょう。 NoSQLを使ったときに起こる恐ろしい事例 プレゼンテーションのテーマは「NoSQL

    NoSQLをRDBの代わりに使うと、どういう恐ろしいことが起こるか。PARTAKEの作者が語る
  • いますぐ使える無料のクラウドデータベース「ClearDB」

    クラウド上にホスティングされ、バックアップもメンテナンスもしてくれるので運用の手間がかからないリレーショナルデータベース。そんなサービスを開始している提供しているのが「clearDB」です。 1つ前の記事では企業向けのマイクロブログ「Yammer」を紹介し、競合となりそうなセールスフォース・ドットコムのChatterも無料サービスを開始すると紹介しましたが、今回のClearDBも、セールスフォース・ドットコムが発表したばかりの「Database.com」と同様のサービスです。狙ったわけではないのですが……。 clearDBのWebサイトから、どのようなサービスなのかを紹介します。 クラウド上で100%ACID対応のリレーショナルデータベース clearDBは100%ACIDに対応し、自動的にバックアップされたスケーラブルなデータベースだと説明されています。「What is ClearDB?

    いますぐ使える無料のクラウドデータベース「ClearDB」