タグ

dbに関するsivadselimのブックマーク (9)

  • Kazuho@Cybozu Labs: Perl のテスト用に MySQL 環境を自動で構築するモジュール Test::mysqld を書いた

    ORM やウェブアプリケーション関連のライブラリなどのテストケースを書くにあたっては、 RDBMS へのアクセスが必要になります。しかし、SQLite のようなスタンドアローンのデータベースと比較すると、サーバ型データベースである MySQL に接続してテストを書くのは、既存の MySQL の権限設定やデータベース名を気にする必要があったりと、いろいろ不便です。そこで、MySQL のインスタンスをテンポラリディレクトリに自動生成し、テストが終わったら削除してくれる Perl モジュール Test::mysqld を書きました。こんな感じで使います。 use DBI; use Test::mysqld; use Test::More; my $mysqld = Test::mysqld->new( my_cnf => { 'skip-networking' => '' }, # TCP接続を

  • データベース用バージョン管理システム·Deltasql MOONGIFT

    プログラミングのソースコードに対してはCVSやSubversionが使われてバージョン管理が行われるようになっている。だがデータベースの構造管理は煩雑で、そのためにRailsのMigrationという仕組みは非常にウケが良かった。 管理画面。ユーザ管理などもここで行う。 ソースコードに手が加われば、データベースの構造だって変化する可能性はある。その刻々とした変化を追うにはバージョン管理システムが必要だ。 今回紹介するオープンソース・ソフトウェアはDeltasql、データベースの履歴管理ソフトウェアだ。 DeltasqlPHPで作られたWebベースのソフトウェアで、MySQL/PostgreSQL/SQL Sever/Oracle/Sybaseに対応したデータベース構造の管理を行うことができる。実際のデータベースをそのまま管理するのではなく、スキーマ情報だけを管理するというイメージだ。その

    データベース用バージョン管理システム·Deltasql MOONGIFT
  • 【コラム】Mac Fan ソフトウェアレビュー (58) データベース作成ソフト「FileMaker Pro 10」 | パソコン | マイコミジャーナル

  • RDBMSでは不十分

    リレーショナルデータベースはクライアント/サーバモデルに適合するものの、サービスの世界では新しいソリューションが必要である(source)。RDBMSはスケーラビリティの問題に陥りやすい。冗長性や並列性をどのようにして実現すればいいのか(source)? (リレーショナルデータベースは)単一故障点となります。特に複製はささいな事ではありません。疑問に思うのであれば、全く同じデータを必要とする2つのデータベースサーバがあることによって起こる問題を考えて見てください。データを読んだり書いたりするために両方のサーバがあると、同時に変更するのが困難になります。マスターサーバとスレーブサーバがあっても、良くありません。なぜなら、マスターはユーザが情報を書き込む際、沢山の熱を帯びるからです。 また、Assaf Arkin氏も整合性を書くこと(source)はRDBMSが自身の重さで内破してしまう理由で

    RDBMSでは不十分
  • なぜ彼はLAMPを捨てXML DBに走ったのか(1/2) - @IT

    アイ・ビー・エム 中林 紀彦 2007/10/22 最新のXMLデータベース実装となるViper 2(DB2 9.5)のリリースを機に、全4回の連載記事であらためてXMLデータベースの利点を考えてみる。そこで見えてきたものとは?(編集部) ■いかにしてKさんは設計変更のワナにはまったか これはインターネット上でサービスを提供しているある企業で働くKさんのお話です。この会社では、CGM(ユーザー生成メディア)サイトを立ち上げることになり、Kさんが全体のアーキテクチャ設計からデータベース、プログラミングまですべてを担当することになりました。しかもベータ・サービスの開始が1カ月後と迫っています。 Kさんは早速、アーキテクチャの選定に入りました。この部分は迷うことなくLAMPを選択しました(注1)。これまでの経験上慣れているのと、オープンソースであるためコストもかからないのでほかに選択の余地は

  • 最短かつ最速にアクセスする「DB高速化技術」(前編):ITpro

    ポイント ・高度なインデックスやジョインを利用し,最短経路でデータにアクセス ・メモリー不足を自律的に解消し,キャッシュのヒット率を高める ・インメモリーDBは全データをメモリーで処理し,高速化を図る 目的地に早く到着したいなら,最短の経路を最速で行けばよい。これはデータベース(DB)でも同様だ(図1)。インデックスなどを使ってデータへの最短経路を見つけ,メモリー・アクセスを増やして,最速でたどり着く。DBにはそんな技術が詰まっている。 図1●データベース高速化技術のポイント ビットマップ・インデックスなどを使い、データにたどり着く最短の道を選ぶ。また、できるだけメモリーにデータをキャッシュさせておくことで、アクセスのスピードを上げる、という二つのポイントがある [画像のクリックで拡大表示] 以下では,(1)データにたどり着く最短の道を選ぶ仕組みと,(2)アクセスのスピードを上げる仕組みの

    最短かつ最速にアクセスする「DB高速化技術」(前編):ITpro
  • MySQLノウハウ

    いろいろなからメモってきたメモのメモ。出典を書いておくのを忘れた。思い出し次第補完するかも。 deleteのコストは高いので、無効化を示すフィールドを作ってupdateすべき slow query logに要注意 多くのエントリでほとんどのフィールドが同じ値を持つ場合はインデックスの効果が小さい →複合インデックスの効果が大きい 複合インデックスは指定の順番が大切。AとBという指定の場合、A単独でもインデックスの効果がある。逆は真でない。 インデックスが使われる場面は フィールド値を定数と比較するとき (where name = 'hogehoge') フィールド値でJOINするとき (where a.name = b.name) フィールド値の範囲を求めるとき (<,>,between) LIKE句が文字列から始まるとき (where name like 'hoge%') min(),

  • SQL Injection Cheat Sheet

    Examples; (MS) means : MySQL and SQL Server etc. (M*S) means : Only in some versions of MySQL or special conditions see related note and SQL Server Table Of Contents About SQL Injection Cheat Sheet Syntax Reference, Sample Attacks and Dirty SQL Injection Tricks Line Comments SQL Injection Attack Samples Inline Comments Classical Inline Comment SQL Injection Attack Samples MySQL Vers

  • Doctrine - PHP Data Persistence and ORM Tool - Sooey

    Read About this site, Works or Download software. Tumblelogging at Tumblr. Amazon associate store. Search content. Doctrine - PHP Data Persistence and ORM Tool 足回りに PDO を利用した XML 要らずの O/R マッピングツール、Doctrine。 フィンランドの20歳の学生さんが開発しているようですが、ドキュメントを読む限り Rails の ActiveRecord を参考によく作られている感じ。 everes, April 15th, 2006 at 01:57 [Comment] データベースのキャッシュをファイルシステムに保存するって、かえって遅くなるような気がするのは私だけでしょうか? しかもあの書き方だと単一テー

  • 1