タグ

DBに関するsimpleplayのブックマーク (6)

  • MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...

    しわっす!DBA 兼オペレーションエンジニア兼タスクマネージャやってる riywo です。何のネタを書こうかなぁと考えたのですが、正直ネタを仕込む時間もなかったので僕がいつもやってることをさらっと紹介するということで勘弁して下さい>< MySQL がおかしい! 03:14 hidek: なんかエラー出まくってるんだけど! 03:14 zigorou: MySQL と通信してるとこっぽい 03:15 riywo: 見ます こんなやりとりは皆さん日常茶飯事ですよね?ね?ね?こんな時に、DB に責任を持つものとして真っ先に対応するのが僕らの仕事です。でも、じゃあ具体的にこのあと何をしましょう?既にサービスはエラーだらけで一刻を争う状態です。 (対応開始) まずはエラーメッセージ 今回の様な場合はアプリのエラーログにどばっと MySQL に関するエラーが出ているでしょう。まずはそれを見ることが始ま

    MySQLがおかしい!あなたならどうしますか? – MySQL Casual Advent Calendar 2011 - As a Futurist...
  • RDBとNoSQLのデータ書き込み法の違い

    最終回となる今回は、NoSQLRDBのデータ書き込み方法を比較して、それぞれの得意不得意を考えてみます(編集部) データ構造やインデックスを事前に用意 前回は、「NoSQLデータベースでRDBMSの機能を実現する」の後半戦として、RDBなら集計処理やテーブル結合を使って簡単にデータを取得できる場合を想定し、それをNoSQLデータベースで実現するための考え方や方法について説明しました。 NoSQLデータベースにはRDBのように読み取り時にデータを加工する機能はありません。集計や結合といったデータの加工は事前に済ませ、データキャッシュとして保存しておいたものを読み出します。また、キャッシュを格納するための物理的なデータの構造や配置にも気を配らなければなりません。NoSQLデータベースはデータの持ち方で読み出し性能が大きく変わるからです。 第3回で紹介したデータ検索や並べ替えの実現方法も、「転

    RDBとNoSQLのデータ書き込み法の違い
    simpleplay
    simpleplay 2011/08/19
    NoSQLで、トランザクション機能は、あらたなテーブルをつくって、そのテーブルをあとで処理するように設計(図5)。「更新内容は即時反映されなくとも、実際に読み取られるまでに間に合えばよい」
  • RDBの機能をNoSQLで実現する(2)

    前回は、NoSQLデータベースを使って、RDBMSが備えるデータの絞り込みや並べ替えの機能を実現する方法を考えてみました。今回は、NoSQLを使いながら、テーブル結合やデータ集計の機能を実現する方法を考えます(編集部) テーブル結合やデータ集計に挑戦 前回は「リレーショナルデータベース管理システム(RDBMS)が提供しているさまざまな読み取り処理の機能を、NoSQLデータベースで実現するには?」をテーマに、KVS型のNoSQLデータベースで検索処理や並べ替えを実現する方法を紹介しました。 分散環境で性能を発揮できるようシンプルさを追求したNoSQLデータベースには、RDBMSのように便利なデータ加工処理機能はありません。RDBMSが相手なら、SQL文を書くだけで簡単に使えた検索処理や並べ替えも、「データベースにお任せ」というわけにはいかず、アプリケーション側での工夫が必要になります。今回も

    RDBの機能をNoSQLで実現する(2)
    simpleplay
    simpleplay 2011/08/19
    NoSQLでのDB設計
  • AndroidのNFC機能でFeliCaの読み書きをする | −ゆめログ− | ゆめみスタッフブログ

  • DBサーバーの負荷分散

    MySQLアクセスを負荷分散する ユーザーからのアクセス数が非常に多いWebサイトにおいて、MySQLのSLAVEサーバーを複数台並べて負荷分散させるということがよく行われています。ただ、Webアクセスの負荷分散は一般的なテーマなのでいろいろなところで語られているのに対し、DBアクセスの負荷分散というテーマは一般的でないのかあまり語られていないように感じます。 DBアクセスを負荷分散するにあたって一番荒っぽい方法は、Webサーバー上のプログラムの中でどのSLAVEサーバーに接続するかをランダムで決める方法です。ランダムと言っても長時間アクセスしているとほぼ接続先が均等化されるので、一見この方法でも問題ないように見えます。しかしこの方法だと、接続しに行こうとしたSLAVEサーバーが高負荷もしくはサービス停止中であっても構わず接続しに行ってしまうという問題があります。 このような問題を解決する

  • データベースの内部動作を知る

    SQLのプログラミングは奥が深い。特にパフォーマンスの観点から、そう言えるだろう。 みなさんご承知の通り、同じ結果を出すプログラムでも、SQLの書き方次第で処理時間に何倍もの差が生じ得る。効率の悪いSQLを書いてしまう原因は、多くの場合、リレーショナルデータベースの内部動作やアプリケーションに関する理解不足である。両者をよく知った上で最適なSQLを書けるようになることは、システムエンジニアとしての重要なスキルの一つである。 特集『基礎から理解するデータベースのしくみ』では、リレーショナルデータベースの内部動作について、基的な部分を分かりやすく解説している。SQLプログラミングに役立つことはもちろん、SQLチューニングやデータベース設計のための基礎知識としても不可欠だ。 イントロダクション ブラックボックスのままでいいの? Part 1:SQL文はどのように実行されるのか SQL実行までの

    データベースの内部動作を知る
  • 1