ブックマーク / xtech.nikkei.com (27)

  • 特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro

    「データベースはブラックボックス。どんなSQL文を投げたらどんな結果が返ってくるかさえ知っていればよい」---そう思っている人も多いかもしれません。 しかし,物のソフトウエア・エンジニアを目指すのであれば,データベースが動く仕組みを学ぶことは避けて通れません。パフォーマンスなどに問題が生じたときどこから手を付けていいのか皆目見当がつかない,といった事態に陥りかねません。 市販のRDBMSの内部はかなり複雑ですが,基的な部分を理解するのはそれほど難しくありません。この特集でデータベースの動く仕組みを理解してください。 イントロ ●ブラックボックスのままでいいの? 基礎から理解するデータベースのしくみ(1) Part1 ●SQL文はどのように実行されるのか 基礎から理解するデータベースのしくみ(2) 基礎から理解するデータベースのしくみ(3) 基礎から理解するデータベースのしくみ(4) 基

    特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro
    tsune0126
    tsune0126 2007/11/25
  • ネットワーク・コマンド道場---目次:ITpro

    ネットワーク技術者を目指す人なら,ぜひ身につけておきたいコマンドの使い方を解説していきます。コマンドによって何ができ,実行結果から何が読み取れるか,現場で役立つ実践的な知識が身につきます。 ●基6大コマンド編 pingコマンド トラブル対策の基,パケットを送って応答を待つ まずは実行してみよう オプションを使いこなそう 実行結果を読みこなそう pingだけでIP設定を確認してみる ipconfigコマンド パソコンのネット設定を確認,DHCPトラブルの解決に役立てる 調べられるのはIPアドレスだけではない DHCPトラブルを発見する PCの再起動なしで設定情報をもらい直す DNSへの検索結果もわかる netstatコマンド 開いているポート番号や送受信パケットの統計を表示 現在のTCP接続の状況を表示 パソコンが開けている「穴」を探す さまざまな統計情報もわかる XPなら待ち受けプログ

    ネットワーク・コマンド道場---目次:ITpro
    tsune0126
    tsune0126 2007/11/19
  • フリーで使える仮想マシン・ソフト「VMware Player」

    無償で利用可能な仮想マシン・ソフトが話題だ。米VMwareの「VMware Player」である。WindowsもしくはLinux上で動作する。VMware PlayerをWindowsにインストールすれば,Windowsと同時にLinuxを簡単に使える。 VMware Playerは,製品版の「VMware Workstation 5.5」と同じ仮想マシン・エンジンを使いつつ,仮想マシン環境の作成機能や仮想マシンのハードウエア設定変更機能などが省かれている。ただ,仮想マシンのハードウエア設定は,そのためのメニューが用意されていないだけで,実は変更可能だ。 仮想マシン・ソフトの利点は,時間をさかのぼれる点である。例えば,開発中のソフトや,入手経路が怪しいソフトなどを動かす場合,システムのクラッシュやウイルス感染といった万が一のことを考えると,実機での実行はちゅうちょする。だが,仮想マシン上

    フリーで使える仮想マシン・ソフト「VMware Player」
    tsune0126
    tsune0126 2007/11/13
  • 管理者必見! ネットワーク・コマンド集:ITpro

    ネットワークを管理・運用するにあたってコマンド・ツールは欠かせません。アイコンやメニューを使いマウスで簡単に操作するグラフィカルなユーザー・インタフェース(GUI)が広がるに従って,ネットワークの管理や運用もGUIでできるようになってきています。しかし,コマンドを使った管理・運用が便利な場面も,まだまだ多いものです。コマンドでなければ実行できない細かい操作が残っているほか,月に一度や週に一度といった定期的に実行したい場合や,複数の処理をまとめて実行したい場合などに,コマンドを活用すると便利です。 そこで,ネットワーク管理者が覚えておくと便利なコマンドのリファレンスを,順に紹介していきます。Windowsパソコンで使えるコマンドからはじめ,続いてLinuxで使えるコマンドについても紹介しています。ぜひご活用下さい。 ■筆者 高橋 基信(たかはし もとのぶ)さん NTTデータ 基盤システム事業

    管理者必見! ネットワーク・コマンド集:ITpro
    tsune0126
    tsune0126 2007/11/08
  • まつもと直伝 プログラミングのオキテ 第16回 ネットワーク・プログラミング(ソケット編):ITpro

    LinuxのようなUNIX系OSでは,ファイルに対する操作と同様にネットワーク通信を行うために,「ソケット」と呼ばれる仕組みを使います。今回はソケットについて学びましょう。 コンピュータは「電子計算機」という和名が示す通り,来は高速に計算するための機械でした。しかし,現在のコンピュータは,Webブラウジングや電子メールのやり取りなどに使われることが多く,ネットワークと切り離すことができません。最近は「コンピュータを使う」ことと「ネットワークを使うこと」がかなり同義になっているのではないでしょうか。 今回は,ネットワークを介した通信の基礎になっている「ソケット」という概念を紹介します。 ディスクリプタでアクセスが単純に ソケットはネットワーク通信に用いるファイル・ディスクリプタ(file descriptor)です。そこで,ソケットの説明に入る前に,より一般的なファイル・ディスクリプタにつ

    まつもと直伝 プログラミングのオキテ 第16回 ネットワーク・プログラミング(ソケット編):ITpro
  • テストを自動化する注目のツールSelenium:ITpro

    ケイビーエムジェイ 最高技術責任者。普段はWebアプリケーションの開発を主に行っています。Seleniumを初めて知ったときは,特にWebブラウザが自動的に操作される様子が見えることや,そのテストの書き方の単純さに感動しました。その後テストをさらに簡単に作成できるようにしたいと思い,Selenium IDEを開発しています。 多くのWebサイトは,一度リリースしたらそれで終わりということはありません。リリース後も多くの機能追加や機能変更によるアップデートが頻繁に行われます。プログラムに変更を加えたときには,新たなバグが入り込んでいないことを確認するテストが不可欠です。 システムのリリース前にテストを実施するのはWebサイトに限った話ではありません。が,Webサイトの開発では,画面の確認のような手間がかかるテストが必要です。リリースの頻度が高い場合,そのようなテストを毎回手作業で行うとコスト

    テストを自動化する注目のツールSelenium:ITpro
    tsune0126
    tsune0126 2007/10/26
  • [MySQLウォッチ]第23回 押さえておきたいバックアップとリストアのポイント

    よく,データベースの運用に関する相談の中では,バックアップと可用性(アベイラビリティ)を混同してい場合がある。データベースは,ある瞬間のデータを保存することが目的である。障害が発生した際に保存したデータを再現することにより,復元をおこなう。 可用性は,障害対策として,できるだけ止めずにデータベースを運用することを目的としている。もし,止める場合にも最小限の時間で,復旧することを目的としている。 障害が発生した場合に,速やかに復旧することは,非常に重要なことである。そのため,「レプリケーションやクラスタリングを使用すれば万全」と考えるのは,間違いである。もし,レプリケーションやクラスタリング自身に障害が発生すれば,必ずバックアップデータによって,復旧する必要がある。 また,誤ったデータベース更新を実行した場合,レプリケーションやクラスタリングは,すべてのサーバーが即座に更新を実行する。そのた

    [MySQLウォッチ]第23回 押さえておきたいバックアップとリストアのポイント
    tsune0126
    tsune0126 2007/10/23
  • [MySQLウォッチ]第28回 MySQL 5.1期待のクラスタリング機能

    数カ月前にMySQL 5.1 GA版 のリリース見通しを5月と記述したが,残念ながら下半期に突入した現在もBata版にとどまっている。バージョン5.0から5.1へのアップは,番号としてはポイント以下のマイナー・バージョンアップだ。しかし,非常に大きな期待を持って待っているユーザーも多いだろう。それは,MySQL 5.1 からMySQL Clusterがストレージ対応になるからだ。 今回は,MySQL 5.1 GA版 のリリース準備として,期待の高まるMySQL Clusterのストレージ対応を紹介する。 MySQL Cluster の登場 もともとMySQL Clusterは,NDB Clusterという商品だったものをMySQL ABが自社製品として取り込み,MySQL 4.1.3 (RPM版はMySQL 4.1.10)から実装が始まった。それ以前は,標準機能のReplicationかサ

    [MySQLウォッチ]第28回 MySQL 5.1期待のクラスタリング機能
    tsune0126
    tsune0126 2007/10/23
  • Red Hat Enterprise Linux 5の全貌 Part 1(RHEL5の新機能)

    最も広く利用されている商用Linuxディストリビューションの一つ「Red Hat Enterprise Linux」(RHEL)の新版が登場した。新版のRHEL5には,企業システムや大規模システムでの実用を前提にした最新技術が盛り込まれている。その全貌をPart1とPart2の2回に分けて解説する。 米Red Hat社は商用Linuxディストリビューションの新版「Red Hat Enterprise Linux 5」(以下RHEL5,写真1)を出荷した(関連記事)。現行版のRed Hat Enterprise Linux 4が出荷されたのが2005年2月であり,約2年ぶりの新版だ。2年間に及ぶLinux/オープンソース・ソフトウエア(OSS)の開発成果が反映された製品になる。 2006年末に来日した米Red Hat社上級副社長のTimothy Yeaton氏によれば,RHEL5で特に注目す

    Red Hat Enterprise Linux 5の全貌 Part 1(RHEL5の新機能)
    tsune0126
    tsune0126 2007/10/23
  • Part1 正しいPerl/CGIの書き方:ITpro

    Shibuya Perl Mongers 2代目リーダーにして,ppencodeの作者。広島市立大学卒業後,大企業向けmod_perl製品の開発に従事。2005年よりサイボウズ・ラボ株式会社に入社。LL Ringに参戦。Namazu for Win32,Plagger,Ajajaのコミッターでもある。 CGIといえばPerl。そんな風にいわれていた時期もありました。レンタル・サーバーのCGIで手軽にPerlが使えたこともあり,ちょっとした掲示板のスクリプトやアクセス・カウンタなど,CGIプログラムの多くがPerlで書かれていました。このためPerlが爆発的に普及したのです。Perlは日のインターネット黎明期を支えたプログラミング言語として,広くその名が知られています。 その半面,Perlで書かれたプログラムの保守性に悩む声も聞かれるようになりました。事実,Perlのプログラミング経験が少

    Part1 正しいPerl/CGIの書き方:ITpro
    tsune0126
    tsune0126 2007/10/22
  • DNS

    今回取り上げるテーマは「DNS」(domain name system)である。インターネットアクセスにおいて,DNSが果たす役割は極めて大きい。Webアクセスや電子メールなど多くのアプリケーションはDNSなしでは成り立たない。当然,テクニカルエンジニア(ネットワーク)試験でも毎年のように出題されている。 今回の問題は,平成18年度秋のソフトウェア開発技術者試験・午後1問1を基に作成したもの。DNSの基礎を固めるために最適な問題といえるので,全問正解できるようにしておこう。 問 DNS(ドメインネームシステム)に関する次の記述を読んで,設問1~3に答えよ。 インターネットで使われるドメイン名及びIPアドレスは,DNSを利用して管理されている。DNSは,多数のDNSサーバで構成されるデータベースであり,ルートDNSサーバを頂点とし,ドメイン名空間と呼ばれるツリー構造を構成している。インターネ

    DNS
    tsune0126
    tsune0126 2007/10/17
    あとでやる
  • [MySQLウォッチ]第18回 レプリケーションのトラブル脱出

    server-id=7 master-host = 192.168.11.2 master-user= satou master-password = pass replicate-do-db = databank レプリケーションの対象となるデータベースは,「databank」,1つのテーブル「accesslog」が格納されている。マスタ側で,随時データを追加し,レプリケーションの機能を使用してスレーブに複製を作成する。現時点で,リスト1のようにマスターおよびスレーブにデータが格納されている。 リスト1●テーブル「accesslog」の内容(マスター側) mysql> select * from accesslog; +-----+-----+----------+------------+--------------+ | No | ID | Name | Time | Nemo |

    [MySQLウォッチ]第18回 レプリケーションのトラブル脱出
    tsune0126
    tsune0126 2007/10/11
  • まつもと直伝 プログラミングのオキテ 第13回 プログラムを高速化する:ITpro

    プログラムの高速化はプログラマにとって永遠の課題です。しかし,そこには知られざる暗黒面が隠れています。そもそも高速化に意味があるのかを調べなければなりません。次に,どの部分をどの程度高速化するのかが重要です。アルゴリズムの効率にも目配りが必要です。 コンピュータの処理速度は驚くべき勢いで向上しています。現在私たちが使っているパソコンは一昔前のスーパーコンピュータをしのぐ性能を備えていますし,半世紀前に登場したばかりの計算機と比較すると数十万倍の性能に相当します。 このように高速なコンピュータを持っているにもかかわらず,人間の欲望は限りがないものです。プログラムの実行速度はプログラマにとっての永遠の課題のようです。プログラムを高速化していると,「そんなに急いでどこに行く」という気になることもあります。 今回は,プログラムの高速化にまつわるさまざまな「秘密」と「限界」,そして「戦略」について解

    まつもと直伝 プログラミングのオキテ 第13回 プログラムを高速化する:ITpro
    tsune0126
    tsune0126 2007/10/07
  • [MySQLウォッチ]第26回 知らないではすまされない,MySQLのセキュリティ設定

    データベースのセキュリティ設定は,標準のSQLステートメントを使用して行うものだ。そのため,どのデータベースでも同様に行えるのが建前だ。しかし,それぞれのデータベースごとにユーザーIDの取り扱いなどで異なる点があり,実施には大きく異なる。今回は,MySQL 5系も含めてセキュリティ設定に関して解説する。 ユーザーID MySQLのユーザーIDは,ユーザー名とホスト名の組み合わせとなっている。ユーザーID自身にどのホストからアクセス可能なのか明示しているので,わかりやすい面がある。「%」は,ワイルドカードとなっている。そのためホスト名に指定すれば,ホストを特定しないユーザーIDとなる。 次の例では,同じユーザー名で4つの例を挙げている。 ユーザーIDの例 satou@'%' すべてのホストからアクセス可能 satou@localhost ローカルホスト(サーバーそのもの)のみアクセス可能 s

    [MySQLウォッチ]第26回 知らないではすまされない,MySQLのセキュリティ設定
    tsune0126
    tsune0126 2007/10/04
  • RDBMSをブラックボックスにしない [第1回]DBの仕組みを知れば処理性能の問題点を見抜ける:ITpro

    「アプリケーション開発者が,なぜRDBMSの処理の仕組みを知る必要があるのでしょうか」。そうした疑問を持つ読者もいるでしょう。確かに,テーブルにどんなカラムがあるかを調べ,SQL文の書き方を知っていれば,データベース・アプリケーションの開発は可能です。RDBMSの内部でSQL文がどのように処理されるかを把握している必要はありません。 ですが,SQL文の処理速度に問題が発生したとき,RDBMS内部での処理の仕組みを知っているかどうかで大きな違いが生まれてきます。処理の仕組みを知っていれば,SQL文の処理速度の問題点を見抜けるようになります(図1)。 図1●SQL文の処理速度が遅くなったときに役立つ SQL文の処理が遅くなった場合,RDBMS内部での処理の仕組みを知っていれば「ここがおかしい」と見抜くことができる。RDBMS内部での処理の仕組みを知らなければ,「遅くなったけど,なぜだか分からな

    RDBMSをブラックボックスにしない [第1回]DBの仕組みを知れば処理性能の問題点を見抜ける:ITpro
    tsune0126
    tsune0126 2007/10/01
  • 【XDev】「とりあえず作って,後から作り直せ」,Rubyのまつもと氏が語るエンタープライズ開発:ITpro

    写真●「X-over Development Conference 2007」で講演する,まつもとゆきひろ氏 「結局のところ,顧客に何が必要かは,顧客にも開発者にも理解は不可能だ。そうならば,まずアプリケーションを作って,それを使ってもらい,顧客に合うように直すしかない。これからのエンタープライズ開発も,とにかく速く安く作って,直すことが重要になる」--。プログラム言語「Ruby」の開発者であるまつもとゆきひろ氏は9月7日,ソフト開発をテーマにしたイベント「X-over Development Conference 2007」の講演でこう主張した。 まつもとゆきひろ氏の講演テーマは「Web 2.0時代のエンタープライズ開発」というもの。Web 2.0時代のアプリケーションは,「YouTube」に代表されるように,「仕組みそのものよりも,データがどれだけ集まっているかが生死を分けている」(ま

    【XDev】「とりあえず作って,後から作り直せ」,Rubyのまつもと氏が語るエンタープライズ開発:ITpro
    tsune0126
    tsune0126 2007/09/09
  • NTTデータが全文検索エンジン「Ludia」をオープンソースとして無償公開:ITpro

    NTTデータは10月11日,同社が開発した全文検索エンジン「Ludia」をオープンソース・ソフトウエアとして無償公開した。オープンソースのDBMS PostgreSQLに格納されたテキスト・データの全文検索を行う。同社では「商用のデータベース管理ソフトに匹敵する速度と精度を備える」としている。 NTTデータでは「データベース内のデータの全文検索ではこれまで,オープンソース・ソフトウエアでは日語に対応した高速・高精度なものが存在せず,データベースからデータを取り出し別のシステムを構築する必要があった。Ludiaは商用のデータベース管理ソフトに匹敵する速度と精度を備える」としている。 Ludiaは,N-gramと形態素解析の2種類の全文検索インデックス方式をサポートする。ブーリアン検索,近傍位置検索,類似文書検索といった検索が可能で,検索結果の合致度を示す「スコア」も提供する。 Ludiaは

    NTTデータが全文検索エンジン「Ludia」をオープンソースとして無償公開:ITpro
  • プログラミングに役立つ 「ド・モルガンの法則」

    集合論の最も大事な定理の1つに,「ド・モルガンの法則」というのがあります(ド・モルガンの定理とも言います)。これは情報処理技術者試験などでも頻出なのでご存知の方も多いと思いますが,復習を兼ねて改めて書くと, A, B を集合としたときに, 1. Not (A∩B) = Not(A) ∪ Not(B) 2. Not (A∪B) = Not(A) ∩ Not(B)というものです(図1参照。右辺が具体的にどうなるか塗ってみてください)。 さて, ∩は「かつ」とよみ,英語では「AND」, ∪は「または」とよみ,英語では「OR」, と書くので,上の式は, 1. Not (A AND B) = Not(A) OR Not(B) 2. Not (A OR B) = Not(A) AND Not(B) ということになります。ここで,世の中のすべての事象は X  または   Not(X) のどちらか一方に排

    プログラミングに役立つ 「ド・モルガンの法則」
    tsune0126
    tsune0126 2007/08/23
    sql
  • 第4回 FirefoxとOperaの機能を拡張し,暑い夏の無駄な動きをなくそう

    暑い日が続いてます。ただでさえ暑いのにパソコンが熱暴走気味になったりすると余計にストレス度も高まりますね…。 さて,前回,前々回と「自分に合うWebブラウザを選択しよう」と題して,Internet Explorerをはじめとしていくつかのブラウザを紹介しました。今回は,その中でもFirefoxとOperaに照準をあわせて,これらのブラウザに機能を追加してみようと思います。 自分に最適化されたブラウザは,はっきりいって便利です。暑い夏は,極力少ない動きでブラウジングしたいものです。 機能拡張は簡単 前回の連載でちょっとだけふれましたが,FirefoxとOperaは機能を拡張することが可能です(*1)。Firefoxの場合は,アドオン(拡張機能)のファイルをインストール,Operaの場合は,ユーザー・スクリプトと呼ばれるJavaScriptを追加(Firefoxでは,特定の拡張機能を利用)しま

    第4回 FirefoxとOperaの機能を拡張し,暑い夏の無駄な動きをなくそう
    tsune0126
    tsune0126 2007/08/20
    firefox エクステンション
  • Googleカレンダーをテレビ番組表に:ITpro

    最後は,Googleのカレンダー・サービスを使ってマッシュアップ・サイトを作ります。テレビ番組サイトが配信しているRSSデータを取得して,Ruby on Railsでカレンダーのフォーマットに変換します。それをGoogleカレンダーに取り込んで,オリジナルの番組表を作ってみましょう。 ここまで,さまざまなWebサービスを利用してきました。これらはすべて,自作サーバーで稼働するRuby on Railsのプログラムが,Webサービスから取得したデータをブラウザに表示するという仕組みでした。例えばPart3では,Google MapsのWebサービスから取得した地図情報をブラウザに表示しました。 Part4では逆に,Googleのサイトが,自作サイトのWebAPIデータを取得して,ブラウザに表示するという仕組みを体験してみます。 「Googleカレンダー」(写真1)は,「iCalendar」と

    Googleカレンダーをテレビ番組表に:ITpro
    tsune0126
    tsune0126 2007/07/31