タグ

DBに関するhsksyuskのブックマーク (16)

  • RDBMSに関する典型的な誤解が絶えないという現実

    新入社員必読、データベースの基を理解しよう - データベースはなぜ必要なの?:ITproという記事に対するブクマで次のようなIDコールが来た。(現在はコメント返しへのお礼が入っているので、文字数制限のためオリジナルのコメントは少し切り詰められている。) "リレーショナルデータベースはすべてのデータを2次元の表形式で表現"こういうのもリレーションが2次元構造という誤解の一種なんだろうか。id:nippondanjiさんが書いてたような。 さて、この疑問に対する正解は如何なるものだろうか? つい先日「7つのデータベース 7つの世界」の書評で書いたばかりだが・・・ 言うまでもなくその通りである。 リレーションが2次元的な構造を持っているというのは典型的な誤解だ。(ちなみにリレーションの次元は属性の数に等しい。n個の属性があるリレーションはn次元。)リレーショナルモデルについてちゃんと学習してい

    RDBMSに関する典型的な誤解が絶えないという現実
    hsksyusk
    hsksyusk 2013/04/22
    「重要なのはリレーショナルモデルにおける「関係」ないしは「リレーション」とは、テーブル同士の関係(リレーションシップ)のことではなく、テーブルそのものを指すという点だ。」誤解してました。
  • 「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜

    The document discusses graph databases and their properties. Graph databases are structured to store graph-based data by using nodes and edges to represent entities and their relationships. They are well-suited for applications with complex relationships between entities that can be modeled as graphs, such as social networks. Key graph database technologies mentioned include Neo4j, OrientDB, and T

    「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
  • 複合主キーを避けるべき理由 - 虎塚

    データベース設計の話をしていて、「連番の主キーは業務上意味のないデータだから、テーブルに持たせるのはムダだ。複合主キーにするべき」という意見を聞く機会がありました。 脊髄反射で「ないわー」と思ったものの、理由を上手く説明できなかったので、改めて考えてみました。 その結果、次のような結論に至りました。 単一の連番カラムによる主キーと、複合カラムによる主キーとで迷ったら 実装をシンプルにし、業務変更の影響範囲を小さくするために、複合主キーを避ける というわけで、調べたことや考えたことをメモしておきます。# 間違っている部分があれば、教えていただけると嬉しいです。 (2011/07/25 追記)複合主キーとサロゲートキーについては、要件やシステムに依存して多様な判断がありうると思います。にもかかわらず、「避けるべき」というタイトルにしたのは極端でした。申し訳ありません。ご指摘下さった皆さん、あり

    複合主キーを避けるべき理由 - 虎塚
    hsksyusk
    hsksyusk 2011/07/15
    ねこ写真の脈絡のなさ。
  • MySQLやPHPのパフォーマンスを向上させる方法のメモ。 » とりあえず9JP

    MySQLPHPのパフォーマンスを向上させる方法のメモ。 色々な設定があるとは思いますが、ここでは個人的に効果を顕著に感じたMySQLのクエリキャッシュとAPCについて書いています。 当はPHPやらMySQLそれぞれでベンチ取った方が良いとは思うのですが、この記事では、WordPressを設置して、そのインデックスページに対するApacheBenchのRequests per second(一秒間に処理されたリクエスト数)のみを見て、その結果で比較しています。 ※ApacheBenchはローカルではなく外部のサーバからという微妙な環境で、リクエスト数100、同時リクエスト数10、試行回数はそれぞれ1回という微妙な値でやってます。 まずは、全く未設定な状態での、Requests per second。 実行したコマンドは以下。 ab -n 100 -c 10 テストしたいURI Requ

  • Oracleデータベースの自己診断と最適化

    Oracleデータベースエンジニアとしての実力を証明するORACLE MASTER資格。その入り口であるBronze資格の取得は難しくない。連載と、同時掲載中の連載「Bronze SQL基礎I 講座」で合格を目指そう!(参考記事:「Oracle 10g対応のORACLE MASTERとは?」) 前回「Oracleのデータを復元する」で、Oracleデータベースのバックアップ/リカバリについて学びました。最終回の今回は、データベースの監視とアドバイザの使用を紹介します。 理解しておきたいこと 1.確認しておきたい内容 Oracleの自己診断アーキテクチャ アドバイザを使用したデータベースパフォーマンスの最適化 2.自動ワークロードリポジトリ Oracle Database 10gでは、自動ワークロードリポジトリ(AWR)を使用して、データベースの状況を定期的に保存(スナップショット)してい

    Oracleデータベースの自己診断と最適化
  • Tagの検索にMySQLの全文検索を使う : blog.nomadscafe.jp

    Tagの検索にMySQLの全文検索を使う Tags with MySQL fulltextを参考にして試してみた。 Femoの中で、タグの絞り込み機能を実装したのに続いて、「完了」や「finish」と言ったタグがついている場合表示しないというオプションを考えている。 そうなってくると、SQLをどう書けばいいのか、また複雑なSQLを構築したときにパフォーマンスは大丈夫なのかと心配。そこで、上記のURLを参考にしながらMySQLの全文検索に注目。 create table ft_tags( id int unsigned not null auto_increment primary key, tags text, unpack text, fulltext (unpack) ) と言うテーブルを作成。 ここに、 my @tags = ( q/task femo/, q/femo mail t

    hsksyusk
    hsksyusk 2006/03/28
  • MySQL負荷分散のまとめ - Life on the net

    はてぶで人気エントリーになっていた、 http://kokoromo.jugem.cc/?eid=195 [MySQL:1台しかない環境で負荷分散] これは負荷分散=スケールアウトというよりは一台でスケールアップしてしのぐ手段を書いてい。 だから負荷分散という言葉は必ずしも正しくないのだが、一つのテーブルへの付加集中を分散させるという事なのだろう。 そこで何パターンかあるMySQLの負荷分散を簡単にまとめてみる。 1. 富豪的分散 商用のクラスター製品を使う。 最近はMySQL専門のクラスター製品が出てきている。 http://www.continuent.jp/pro.html なんかは良いかなと思う。 長所: プログラム側ではクラスタ状態を何の意識もせず、一つのターゲットに対してクエリーを発行すれば良い。 ターゲットが複数台ある事は意識する事は無い。 不具合があるノードに生じた場合、他

    MySQL負荷分散のまとめ - Life on the net
    hsksyusk
    hsksyusk 2006/03/20
  • http://www.yktk.org/diary/20060310.html

    hsksyusk
    hsksyusk 2006/03/10
  • http://www.res-system.com/item/550

    hsksyusk
    hsksyusk 2006/03/09
  • 1人で稼ぐ日記 | MySQL:1台しかない環境でエセ負荷分散

    MySQLのネタ。 1台しかない環境でエセ負荷分散を行う。 MySQLで負荷分散を考えたとき、 1台目にマスターのDBサーバー、 2台目以降をスレーブのDBサーバーとして用いる。 マスターは更新系のみのSQL文を、 スレーブは参照系のみのSQL文を投げる。 こんな負荷分散を1台のサーバーで行う必要が出てきた。 現在1台でやっていて、ディスクIOが追いつかずに捜し求めた結果、下の形で落ち着いた。 1つのテーブルでインデックスを含めたサイズが 30MB〜100MBほどで安定している、という条件があるのですが かなり負荷下がります。 ※上記サイズは搭載メモリサイズによって変わります -------------------------- ■やりかた 負荷が高いテーブルをAとする 1:Aと同じテーブル構成で、エンジンをMEMORY(he

    hsksyusk
    hsksyusk 2006/03/07
  • MySQL関連の書籍の決定版と言えば!

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • phpspot - PHPスクリプト/MySQL/掲示板/入門/サンプル/正規表現/レンタルサーバー

    ようこそphpspotへ! 当サイトではフリーのwindowsphp開発環境であるPHPエディタ(forWin)や、 フリーのPHPスクリプト( PHP掲示板,webshot,webimager,CMS 等 )、PHPツールバー、テレビバー、 便利検索バー(Yahoo,Google,辞典検索)などを配布しています。 その他、PHP入門 や PHP5-TIPS、PHPサンプル集、MySQL解説、PHPレンタルサーバー特集 などのコーナーもあります。 スポンサードリンク 2009/09/14 サイトで配布しているPHPスクリプトに脆弱性!すぐ最新版にアップしてください! new! 2009/01/21 PHPで携帯サイト構築を公開! 2008/07/12 PHPによるWebアプリケーションスーパーサンプル 活用編 第二版が出ました 2008/04/22 PHPエディタをVistaに対応させま

  • AjaSQL ユーザー・マニュアル:

  • Ajax JavaScriptでSQL掲示板 - [JavaScript]All About

    このサンプルは、JavaScriptから、SQL文を発行して、SQLiteデータベースへ追記/検索することで、 掲示板の機能を構成しています。 今回は、基機能だけを実装しましたが、たとえば、差分データの取得なども1行のSQL文+受信後のJavaScriptによる簡単な追記処理程度で済みますし、疑似チャットを作るなど、まだまだ高機能化やチューンナップは可能だと思います。 使ったJavaScript/HTML側のソースは、下記の通りです。 【JavaScript側】 <font color=orange> <!-- 暫定Ajaxライブラリ jslb_ajaxxxx.js --> <script language = "JavaScript" charset = "utf-8" src = "./ajasql/jslb_ajax036.js"></script> <!--

  • リレーショナル・データベースの世界

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    hsksyusk
    hsksyusk 2006/02/21
  • 基礎から理解するデータベースのしくみ(5):ITpro

    SQL文を実行する際のパフォーマンスに大きな影響を及ぼすものとして,もう一つ,インデックスがあります。インデックスについては,どう定義すべきかというデータベース設計上の問題と,インデックスを有効に使うためのSQL文をどう書くべきかというコーディング上の問題があります。 ここではテーブル設計上の問題を主に取り上げます。SQL文のコーディングについては囲み記事「SQL文を最速にする11のポイント」を参照してください。 インデックスは,テーブルの検索速度を向上させるためのものです。それぞれのSQL文に対して最適なインデックスを定義するのが理想的ですが,実際にはある程度限られたインデックスで,必要なパフォーマンス要件を満たすようにインデックスを定義する必要があります。加えて,どんなSQL文が実際に発行されるのかがあらかじめわかっていない場合は,適当な想定に基づいてインデックスを定義しておかなくては

    基礎から理解するデータベースのしくみ(5):ITpro
    hsksyusk
    hsksyusk 2006/01/23
  • 1