Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

dbに関するaki77のブックマーク (286)

  • http://upload.wikimedia.org/wikipedia/commons/4/41/Mediawiki-database-schema.png

    aki77
    aki77 2010/12/08
    media wiki のER図
  • symfonyでデータベースの接続情報を扱う - * yuchimiriのにっき *

    symfonyでデータベースを利用する際、config/databases.ymlに以下のように接続設定を記述します。 all: # 環境 doctrine: # 設定名 class: sfDoctrineDatabase # 接続クラス param: # パラメータ dsn: mysql:host=localhost;dbname=hoge username: root password: 今回は、この設定がsymfony内部でどのようなオブジェクトに保持されているのかと、その利用方法について簡単にまとめてみます。(symfony1.4のソースコードを基にしています) はじめに このエントリで取り上げる主なクラスは以下の二つです database/sfDatabase データベースの接続設定の保持と、接続/切断の機能を提供する基底クラス database/sfDatabaseManage

    symfonyでデータベースの接続情報を扱う - * yuchimiriのにっき *
  • bit演算の考え方を応用して大量のチェックボックスを管理する

    こんにちはアシアルの岡です。 暖かい日が多くなりましたが、桜はもう散り際ですね。 週末は車や電車の窓から桜をみながら、 秩父へ1泊二日の小旅行へ行ってまいりました。 たまにはパソコンから離れて自然に囲まれることも必要です、 常に鞄の中にはノートパソコンと通信カードが入っているのですが… 今日はHTMLフォームのチェックボックスを扱うテクニックの紹介をしたいと思います。 大量のチェックボックスの情報をGETリクエストで引き回したり、 データベースに格納するのは一苦労ですがbit演算の考え方を応用すると上手く解決する場合があります。 各チェックボックスをbit演算に見立て桁を割り当てることで、 32ビットなら最大32個、64ビットなら最大64個の情報を一つの数値型に格納することができます。 数に上限があるため用途は限られますが、 例えば、ネットショップで商品毎に色を持たせたい場合に使ったこと

    bit演算の考え方を応用して大量のチェックボックスを管理する
    aki77
    aki77 2010/11/14
  • NoSQLの成功は1:10問題にかかっている | gihyo.jp

    江島健太郎氏によるブログ記事です。昨今におけるNoSQLの人気急上昇ぶりと、対するRDBMSの評価が下がっていることについて冷静に考察しています。 OracleMySQLなどRDBMSはすでに成熟した段階にある一方、柔軟性やスケール性において弱点を抱えています。その点、NoSQLRDBMSが抱えている問題を解消しているだけでなく永続性もある程度サポートしていることから持てはやされ、「⁠SQLデータベースは死んだ」という極論まで出るようになってしまいました。そしてMongoDBのように「書き込み時にはディスクに同期しない」という、永続性においてはある意味致命的な問題をトレードオフとして認識せず、ただ賞賛する界隈に対して、皮肉の意味を込めた動画やサービスが作られ話題となりました。 江島氏は「NoSQLSQLを極めてこそ真価を発揮する」と主張しています。そして原点に立ちかえり、そもそもWe

    NoSQLの成功は1:10問題にかかっている | gihyo.jp
    aki77
    aki77 2010/10/26
  • 第31回 番外編:sqlmapの紹介 | gihyo.jp

    今回は「第29回 SQLインジェクションの復習」で紹介したSQLインジェクションツールのsqlmapを紹介します。開発者や運用管理者のセキュリティ意識が向上しない原因の一つは、脆弱性がどのようなリスクを持っているのか理解していないことが原因であることも少なくありません。今回はSQLインジェクションのリスクの一部である自動化された攻撃ツールを紹介します。 sqlmapとは? sqlmapとはブラインドSQLインジェクション攻撃を実行するツールです。オープンソースで開発され執筆時点の最新版は2010年3月14日にリリースされたバージョン0.8です。 http://sqlmap.sourceforge.net/ 筆者は偶然、最初のリリースからこのツールを知っていたのですが、このツールの進歩には目を見張る物があります。 sqlmapの概要 記述言語:Python MySQL, Oracle, Po

    第31回 番外編:sqlmapの紹介 | gihyo.jp
  • NoSQLとSQLについて - SQLer 生島勘富 のブログ

    NoSQL(Not Only SQL)とは、SQLを使わないKVS(Key Value Store)などを指しますが、最近流行のキーワードです。今日はNoSQLについて。 SQL英語であり仕様書である SQL英語であり仕様書である。と書いてきました。 SQLは、プログラム(アルゴリズム)を組むことができない文系の事務員が、英語的記述で書けば結果が得られるというものです。SQL文中にアルゴリズムは存在しません。 例えば、次のようなテーブルをご用意ください。 TEST_TABLE ID NUMBER 主キー NAME VARCHAR(20) IDに1から1,000,000 NAME 名前のテストデータ この100万件のデータが入ったこのテーブルを 1) SELECT * FROM TEST_TABLE WHERE ID = 1 2) SELECT * FROM TEST_TABLE WHE

    NoSQLとSQLについて - SQLer 生島勘富 のブログ
    aki77
    aki77 2010/06/22
  • CakePHP データの更新時に自動でデータの差分を取得して履歴テーブルに突っ込むbehavior作った | Ryuzee.com

    もうタイトルのまんまですが、データの更新時に自動でデータの差分を取得して履歴テーブルに突っ込むbehaviorを作りました。 自分で作っているアプリケーションで、データ更新時の変更履歴を表示させたいと思ったのだが、対象テーブルが沢山あっていちいち似たような実装をあちこちに作るのは気が狂いそうなので汎用化しちゃえ、というのが作った動機 概要 AutoLoggerBehavior http://github.com/ryuzee/auto_logger_behavior から入手可能 ライセンスはMITライセンス 使い方 入手したauto_logger.phpをapp/models/behaviors/に配置 履歴テーブルの作成 CREATE TABLE `change_logs` ( `id` int(11) NOT NULL AUTO_INCREMENT, `mode` varchar(6

    CakePHP データの更新時に自動でデータの差分を取得して履歴テーブルに突っ込むbehavior作った | Ryuzee.com
  • Club DB2 第103回 講演「リレーショナルとはどんなことか」 - ミックのブログ

    昨日箱崎の IBM 社で開かれた勉強会 Club DB2 第103回で、ゲスト講師として話してきました。DB2 の勉強会なのにデータベースと SQL の一般論をぶってしまって大丈夫かな、と思ったのですが「たまにはそういう話もいいものです」という主催者側の寛大なおはからいにより、好きなこと喋らせてもらいました。 Ustream で中継流したり、Twitter で質疑を受け付けたり、新しい形のコミュニケーションが体験できて面白かった。こんなとき、インターネットというのは当に良いものだと実感。 当初は50人ぐらいだろうと予想していたら、蓋を開けてみたら100人部屋が満杯になってびっくり。人生で一番名刺交換とサインをした日になりました。飲み会でも色んな人と話ができて楽しかった。の著者にとって、なかなか読んでくれた人の生の声を聞ける機会は少ないので、「こののおかげで助かった」という人にお会い

    Club DB2 第103回 講演「リレーショナルとはどんなことか」 - ミックのブログ
  • AndroidのNFC機能でFeliCaの読み書きをする | −ゆめログ− | ゆめみスタッフブログ

  • インフラエンジニアのためのcassandra入門

    @marqsさんと@muranetさんと一緒にhbstudy#11で発表させていただきました。 これを機にとか言うとでかすぎる気がしますがCassandraが国内でも盛り上がるといいなーと思います。 懇親会でも結構使おうとしている方がいたりしてうちもうかうかしてられないですねw 資料をあげましたのでこちらよろしかったらどうぞ! インフラエンジニアのためのcassandra入門 View more presentations from Akihiro Kuwano. これだけはかかないと! 素晴らしい会を開いて下さっているハートビーツの方々や、スピーカーの方々、来ていただいた方々に感謝しております 非常に楽しかったです! ただいま二日酔いですw

    インフラエンジニアのためのcassandra入門
  • Cassandraのはじめ方─手を動かしてNoSQLを体感しよう 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Cassandraのはじめ方─手を動かしてNoSQLを体感しよう 記事一覧 | gihyo.jp
  • CoolCoding.com is for sale | HugeDomains

    Working with hugedomains.com was a quick and easy process. We got to speak to multiple real people located in Colorado without having to wait on hold! Our only complaint was we felt we had to overpay more than this particular domain was worth, and we weren't able to negotiate it down to a level that we felt was fair. However, payment and delivery were seamless, and within a few hours we had all of

    CoolCoding.com is for sale | HugeDomains
  • 第6回 SQLで木構造を扱う~入れ子区間モデル (1)もしも無限の資源があったなら | gihyo.jp

    はじめに 前回では、入れ子集合モデルという、リレーショナルデータベースで木構造を扱うための新しい方法論を紹介しました。このモデルは、RDBSQLと親和性の高い優れたものではあるのですが、挿入など更新時に、無関係のノードまで変更対象としなければならないのが大きな難点でした。 そこで今回は、上記の欠点を解消する進化版のモデルを紹介します。この方法を理解していく過程で、私たちはRDBと集合論の結び付きの深さを再確認することになります。 ふだんこの連載は、1回完結の読み切り形式なのですが、今回に限り、前号の内容を前提としています。未読の方は、前号を先に読むと理解が増すでしょう。 稼働環境 すべてのリレーショナルデータベース もしも無限の資源があったなら 座標に整数のみを使う場合の限界 入れ子集合モデルの大きな欠点は、ノードを挿入(追加)するときに、自分より「右側」にある無関係なノードをもっと右へ

    第6回 SQLで木構造を扱う~入れ子区間モデル (1)もしも無限の資源があったなら | gihyo.jp
  • 第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree | gihyo.jp

    SQLアタマアカデミー 第7回性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree はじめに データベースを扱う仕事をしていると、パフォーマンスの問題に悩まされることは日常茶飯事です。とくに最近は、データベースに格納されるデータ量が飛躍的に増え、サーバのCPUやメモリといったハード面の増強だけでは追いつかないことも多くあります。 そのようなケースに対応するため、DBMSは性能改善のための手段を多く用意しています。その中で最もコストパフォーマンスの良い方法が、インデックス(索引)です。アプリケーションにもハード構成にも影響を与えずに実行でき、うまくいかなければすぐに削除できるという手軽さが大きな魅力で、効果はしばしば絶大です。 インデックスにはいろいろな種類があり、またDBMSによってもサポートする種類に差がありますが、稿では最も重要な2つを取り上げます。それ

    第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree | gihyo.jp
    aki77
    aki77 2009/12/16
    B-tree, index, インデックス
  • これはすごい「Linux-DB システム構築/運用入門」を読んだ - cloned.log

    Linux-DB システム構築/運用入門 (DB Magazine SELECTION) 作者: 松信嘉範出版社/メーカー: 翔泳社発売日: 2009/09/17メディア: 単行(ソフトカバー)購入: 55人 クリック: 3,402回この商品を含むブログ (32件) を見る読み始めた瞬間からこれは良いだと思って一気に読んだ技術書はEffective Java 第2版 (The Java Series)以来かもしれない。Effective Javaを読んだときは既にJava業ではなくなっていたけれど、このLinux-DBは今自分がもっとも知るべき内容だったことも大きいかもしれない。 自分が是非購入しようと思ったきっかけは奥さんの「Linux-DBシステム構築/運用入門」がすごい - あなたのシステム、ガラパゴス化していませんか?というエントリ。特に次の文に興味を持った。 なぜそうな

    これはすごい「Linux-DB システム構築/運用入門」を読んだ - cloned.log
  • データベース負荷テストツールまとめ(1) - SH2の日記

    Webシステム開発において性能試験を行う場合、hp LoadRunnerやApache JMeterといったウェブブラウザをエミュレーションしてくれる負荷テストツールを用いるのが定番だと思います。そんななか、たまにデータベース単体での性能を測ってほしいと頼まれることがあるので、そうした便利なツールはあるのかなと思って調べてみました。 データベースに対する負荷テストツールは探すとたくさん出てくるのですが、案件で使用しているRDBMSに対応していなかったり、トランザクション仕様が希望と異なっていたり、微妙に作りが悪かったりと、ニーズに合致したツールはすぐには見つかりません。そんなときにこのエントリがツール探しの参考になればと思います。 pgbench 対応RDBMS:PostgreSQL 対応OS:Linuxなど 言語:C 作者:石井達夫氏 ライセンス:独自(BSDライセンスに近い) トランザ

    データベース負荷テストツールまとめ(1) - SH2の日記
  • Kazuho@Cybozu Labs: 高度に進化した分散データストアは RDBMS と見分けがつかない? (shibuya.pm #12 スライド)

    開発しているシャーディングミドルウェアである Incline と Pacific については YAPC::Asia 2009 を始めいろいろな所で話をする機会をいただいてきたので、今回は、なぜ RDBMS ベースのアプローチを採用したのかという背景を中心に説明させていただきました。概念的な話が多くて分かりにくかったと思います(すみません)が、細かな点についてはパフォーマンスとスケーラビリティのためのデータベースアーキテクチャ (BPStudy#25発表資料)を参照いただければと思います。 また、中で出てきた「実体化ビュー」については、Materialized view - Wikipedia, the free encyclopediaが良くまとまっているかと思います。Incline は一言でいうと、RDBで構成されるshard群の上で read-only かつ eventually co

    aki77
    aki77 2009/12/01
  • 【レビュー】オンラインDBアプリ作成サービス『Zoho Creator』の魅力 - Google App Engineとも連携 | ネット | マイコミジャーナル

    ビジネスでもっともよく使われるソフトウェアと言えば「Microsoft Office」だろう。さらにその中でもよく使われるのがExcelやAccessだ。Excelは簡易的なデータベース機能を備えているが、さらに細かくデータを集積したり、スクリプトを使ってデータを加工したいと思った時にはAccessを使うべきだろう。システム開発を行う部署に頼らずともユーザ自身でデータベースアプリケーションが作れるとあって、企業によっては多くのAccessアプリケーションによって業務が運用されているところも少なくない。だが、そうやって作られたアプリケーションは管理が煩雑になりがちで、新しいシステムへの移行を阻害する要因になりやすい。 「Zoho Creator」のトップページ。利用にはZohoアカウントが必要(またはGoogleアカウントも利用できる) 今のシステム化の流れとして、Webブラウザベースで動作

  • COUNT 関数を使ってMySQL のインデックスの基本を理解する - LukeSilvia’s diary

    Linux-DB システム構築/運用入門の8章「インデックスのチューニング(前編)」を読んだので、インデックスの基について実際に手を動かしながら勉強してみようと思います。 内容としては、クエリを実行する際に、「インデックスだけにアクセスした場合」と、「データにもアクセスする場合」のI/O 回数の違いが、パフォーマンスにどれだけ影響を与えるか調べてみるというものです。 環境 MySQL Ver 14.7 Distrib 4.1.22, for pc-linux-gnu (i686) using readline 4.3 ストレージエンジン MyISAM 今回は、インデックスだけにアクセスした場合と、データにもアクセスする場合のパフォーマンスの違いについて調べたいので、インデックスの構造が「キーの値, データの位置」となっているMyISAM の方が調査環境に向いていると判断しました。 テスト

    COUNT 関数を使ってMySQL のインデックスの基本を理解する - LukeSilvia’s diary
  • ページングするためだけにSELECT COUNT(*)しない - cloned.log

    件数の多い一覧にはページングが必要になるのだけど、ずっと前からこのページングのリンク(前へ | 次へ、とか)を表示するためだけに、レコードの総件数をカウントするのが無駄だなぁと思っていた。一般的なRDBを使っている場合には、一覧取得のSQLと同じWHERE句のCOUNT問い合わせを行わなければならず、コーディング上も面倒だし、DBに対するクエリが増えるのもいただけない。総件数を表示するのであれば仕方がないけれども、そうでない場合にはなんとかしたい。 いつも不満に思っていたおかげで、最近やっと「前へ | 次へ」のような単純なページングの場合にはCOUNT問い合わせをしなくてもよいことに気がついた。とても今更すぎるけれども。 例えば、20件ずつの一覧であればLIMITを21にして取得したレコードが21件あれば「次へ」を表示するだけでよかった。「前へ」はオフセットが0でなければ表示すればよいので

    ページングするためだけにSELECT COUNT(*)しない - cloned.log
    aki77
    aki77 2009/11/25
    『20件ずつの一覧であればLIMITを21にして取得したレコードが21件あれば「次へ」を表示するだけでよかった。「前へ」はオフセットが0でなければ表示すればよい』