サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。
そろそろ桜が咲き、新年度を迎える季節です。ここでまた気持ちを新たにデータベース製品群を見渡してみましょう。 大昔からあるけど、進化を続ける「データベース」 このDatabase Watchは、主にリレーショナルデータベース(RDB)製品の動向や話題を提供する連載です。データベースの専門家ではない筆者があちこちお邪魔しつつ、データベースを学ばせてもらっています。 IT業界でデータベースというと、けっこう古い技術に分類されます。円熟したという意味で「枯れた技術」ともいわれます。どんなにITに疎い普通の人でも、「データベース」とはIT用語であり、「データを蓄積するもの」と、おおよその意味を知っているくらいです。これって考えてみると驚異的です。それだけ定着し、成熟した技術分野といえます。 それなら成長は止まっているかというと、そうでもないのです。データベースの世界はまだまだ進化し続けています。例え
IPA(独立行政法人情報処理推進機構)は18日、Webアプリケーションの安全な実装方法を解説した資料「安全なSQLの呼び出し方」(PDF)を公開した。全5章(計40ページ)および付録からなり、冊子「安全なウェブサイトの作り方」(PDF)の別冊として、公式サイトより入手できる。 「安全なSQLの呼び出し方」では、SQLインジェクション攻撃にどのような対策を取れば安全であるかの要件を検討し、安全なSQL呼び出しを実現する考え方を製品によって整理しながら、具体的なケースの調査結果を示している。 特に第5章では、5種類のプログラミング言語とデータベースの組み合わせ(JavaとOracle、PHPとPostgreSQL、Perl/JavaとMySQL、ASP.NETとSQL Server)における安全な実装方法とソースコードの書き方を解説しているほか、付録には、文字コードに関する問題など特定のデータ
以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ
通常のDBMSシステムはひとつの行を構成する列データをひとまとまりとして格納する。これに対し列指向DBMSでは、列の値をまとめてファイルシステム上の近い場所に(あるいはひとまとまりの論理構造として)置くというアプローチがある。 行指向データベースと列指向データベースを比較する際には、与えられた処理を行うためのハードディスクへのアクセスの効率性に着目する必要がある。処理時間の中でディスクのシーク時間は大きな割合を占める上、CPUの計算力の向上に対して、シーク時間は緩やかなペースでしか改善されない。以下に、データを行指向または列指向で配置する場合のトレードオフを挙げる。 列指向データベースは、大量の行に対する少数の列の集約処理が効率的である。列数が少ないほど、読み込むデータ量を減らすことができる。 列指向データベースは、全行に対する少数の列の一括更新が効率的である。新規に列データを作成し、以前
カラムナデータベース(列指向データベース)とデータベースの圧縮機能について、マイケル・ストーンブレイカー氏が語っていること データベースの高速化技術の1つに、データの圧縮があります。データを圧縮して扱うことでディスクアクセスとI/Oが減少し、データへのアクセス速度が向上するのです。最近のCPUコア数の増大やメモリ単価の下落はデータ圧縮と伸長にかかるオーバーヘッドのコストを相対的に小さくしており、それもこの技術に有利に働いています。 Ingresの開発者であり、InformixのCTOなどデータベースベンダの要職を歴任、データベース研究者として大御所ともいえるマイケル・ストーンブレイカー氏が、データベースにおけるこのデータ圧縮と伸長処理について、ブログ「The Database Column」のエントリ「"Just in Time" Decompression in Analytic Dat
「データベースはブラックボックス。どんなSQL文を投げたらどんな結果が返ってくるかさえ知っていればよい」---そう思っている人も多いかもしれません。 しかし,本物のソフトウエア・エンジニアを目指すのであれば,データベースが動く仕組みを学ぶことは避けて通れません。パフォーマンスなどに問題が生じたときどこから手を付けていいのか皆目見当がつかない,といった事態に陥りかねません。 市販のRDBMSの内部はかなり複雑ですが,基本的な部分を理解するのはそれほど難しくありません。この特集でデータベースの動く仕組みを理解してください。 イントロ ●ブラックボックスのままでいいの? 基礎から理解するデータベースのしくみ(1) Part1 ●SQL文はどのように実行されるのか 基礎から理解するデータベースのしくみ(2) 基礎から理解するデータベースのしくみ(3) 基礎から理解するデータベースのしくみ(4) 基
レンタルサーバなら「さくらのレンタルサーバ」! 月額換算でわずか131円、缶ジュース1本分のお値段で使える格安プランから、ビジネスにも使える多機能&大容量プランまで、 用途と予算に合わせてプランを選べます。 さらにマルチドメイン対応でメールアドレスも無制限。無料ウイルススキャンや無料電話サポートもあるので安心して ご利用いただける共用レンタルサーバサービスです。
SAVEPOINT、ROLLBACK TO SAVEPOINT および RELEASE SAVEPOINT ステートメント
リレーショナル・データベース管理システム(RDBMS)は,業務アプリケーションにおいて必要不可欠な存在です。そのRDBMSを操作するSQLは,C言語やJavaなどの汎用のプログラミング言語とならんで,プログラマ/SEの必須科目と言えます。Part1では,SQLの基本であるSELECT,UPDATE,DELETE,INSERTの文法について,Part2では実用的なSQLのテクニックを学習します。Part3では,RDBMSがどのような原理でデータを検索しているかを学び,RDBMSを使いこなすヒントをつかんでください。 Part1 SQLの基本を理解しよう Part2 複雑なSELECT文やSQL高速化のコツ Part3 データベースの仕組みを基礎から学ぶ
■ インデックスとは データベースの世界で、インデックス(索引)とはテーブルに格納されているデータを 高速に取り出す為の仕組みを意味します。 インデックスを適切に使用することによってSQL文の応答時間が劇的に改善 される可能性があります。 インデックスにはB-Treeインデックスをはじめ、ビットマップインデックス、 関数インデックスなどの種類がありますが、ここでは最も一般的に使われ、かつ ほとんどのDBMSでサポートされているB-Treeインデックスについて解説します。 ※ CREATE INDEX文でオプションを指定しない場合は通常B-Treeインデックスが 作成されます。 ■ B-Treeインデックスのしくみ B-Tree(Balanced Tree)インデックスは次のようなツリー状の構造になっています。 ツリーの先頭はヘッダブロックと呼ばれています。ヘッダブロックでは、キー値の 範囲
配列の配列を、SQLを使って操作できるようにしたものを作ってみました。簡易なので、制限は山ほどありますが、一部は以下のようなものです。 SQLと言っても、限られたものしか使えない SELECT,UPDATE,INSERT,DELETE,WHEREと不完全な CREATE TABLE 内部値は全てString型 基本的にメモリ上で動作 ファイルを使う場合は、CSVを標準入力から読み込ませることはできます。 require "./database.rb" table = Database.new.create_table "stock", %w[ id name count ] while line = gets table << line.split(",") end pp table.db.sql( <<SQL ) SELECT NAME, count FROM stock WHERE N
1. 高性能・安定運用のための Linux/DB システム構築 / 運用技術 松信 嘉範 (MATSUNOBU Yoshinori) サン・マイクロシステムズ株式会社 プリンシパル MySQL コンサルタント 2. プロフィール 2006 年 9 月から MySQL->Sun(-> オラクル ) で MySQL コンサルタントとして勤務 主な著書 Linux-DB システム構築 / 運用入門 現場で使える MySQL Java データアクセス実践講座 Twitter: matsunobu Blog: http://opendatabaselife.blogspot.com * 今回の資料は公開します * MySQL 用語があちこちに出ますが、 経験の無い方にも分かるように配慮していくつもりです 3. 安定稼働と高性能を支える要素 アプリケーション層に関する技術 テーブル設計、インデックス設
Screenshots | Get it ! | Release notes The SQLite Sorcerer or Darry BotAIR, for intimates, is a small SQLite administration application running with Adobe AIR™. The SQLite Sorcerer can help you to perform the main administration tasks on your SQLite database: Database: Create a new database from scratch, autocompacted or not, Compact, analyze / deanalyse a database Encrypt and rencrypt usi
世間では、今Gumblar祭りが勃発中であり、SQLインジェクションがニュースに出てくることは少なくなったが、だからと言ってSQLインジェクションの脅威がなくなったわけではない。SQLインジェクションはGumblarを仕掛ける手段としても利用されることがあり、Webアプリケーションを提供する全ての人にとって、対策を講じなければいけない驚異であることに変わりはない。SQLインジェクションという攻撃手法が認識され、大いに悪用されているにも係わらず、その本質に迫って解説している記事は少ないように思う。従来のWeb屋だけでなく、今やアプリケーション開発の主戦場はWebであると言っても過言ではなく、そういう意味ではSQLインジェクションについて理解することは、全てのプログラマにとっての嗜みであると言えるだろう。 というわけで、今日は改めてSQLインジェクションについて語ってみようと思う。 SQLイン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く