タグ

DbとDBに関するablaboのブックマーク (77)

  • おそらくはそれさえも平凡な日々: Test::mysqldのcopy_data_fromでテストが更に捗る話

    少し前ですがTest::mysqld 0.17からは copy_data_fromというオプションが加わっています。 これは、Test::mysqld起動時にコピー元のdataディレクトリを指定できるもので MySQLの起動時間を節約することができます。テスト開始時にDBに大量のデータを 入れておきたい場合に特に有効です。 特にゲームなどの場合は、大量のマスタデータもコードの一部と言えるので、ちゃんと 全部流し込んでからテストを実施したいという要件があるので重宝します。 さて、そのdataディレクトリをどうやって作ればよいかという話になるのですが、 それも、Test::mysqldに事前に作らせてどこかに配置しておけば良いでしょう。 手順としては例えば以下のようになります。 ‘tmp/test_mysqld_data’ をdatadirにしてTest::mysqldを起動 DDLとマスタデ

  • Percona Playback 0.6 for MySQL now available

    Percona is glad to announce the release of Percona Playback 0.6 for MySQL on April 9, 2013. Downloads are available from our download site and Percona Software Repositories. Percona Playback for MySQL is a tool for replaying the load of one database server to another. Currently it can read queries from MySQL query-log and MySQL tcpdump files and run them on other MySQL server. With Percona Playbac

    Percona Playback 0.6 for MySQL now available
    ablabo
    ablabo 2013/04/20
    mysqlにおけるoracleのdatabase replay的なもの
  • チューニンガソン5の復習 MySQL 5.5 チート編&勉強会のお知らせ - SH2の日記

    ゼロスタートの@zakiさんを中心に企画、運営されているチューニンガソンというイベントがあります。指定された環境を用いてOSやサーバ周りのチューニングを行い、性能を競うというものです。2013年1月に行われた第5回ではMySQLがテーマだったということで、日はこれの復習をしていこうと思います。 【レポート】いろいろチューニングしてパフォーマンスを競うバトルイベント!「Tuningathon」第5弾! #tuningathon : ゼロスタートの広報ブログ 2013年最初のチューニンガソンはMySQL!――第5弾! いろいろチューニングしてパフォーマンスを競うバトルイベント「チューニンガソン」レポート:レポート|gihyo.jp … 技術評論社 Tuningathon#5 - Togetter しばらく真面目にチューニングしていたのですが思いのほか難しかったので、今回はちょっとズルをして優

    チューニンガソン5の復習 MySQL 5.5 チート編&勉強会のお知らせ - SH2の日記
  • DBの世界に起こる変革 | エンタープライズエンジニアの独り言

    エンタープライズシステムのエンジニアをやって10年以上。思うところを書いていきます。その他趣味を少々。。。 DBの世界に起きた大きな波 現在、どの製品を使ったとしてもRDBの性能問題は必ずといっていいほど発生する。理由は簡単で、CPU、ネットワークが高速化(CPUはマルチコア化、ネットワークは10G-Ethernetの一般化やInfiniBandなど)するのにディスク(ストレージ)が高速化に追いついていないからだ。その差を埋める役割として、RDBが担っているケースが多く、性能問題になるケースが散見される。 だが、そういう時代の流れに対して大きな変革が起きようとしている。SSDはかなりコモディティ化してきたので言うに及ばずといった感じだが、個人的には速いもののディスクの置き換えにすぎないと思っている。つまり、SSDは速いがDBのアーキテクチャに大きな変革をもたらすものではない。が、ここにきて

    ablabo
    ablabo 2013/01/06
  • HonestyWorks TechNote » EAVモデル

    なんでもCMS では「EAVモデル」というデータ構造を採用しています。 EAVとは Entity, Attribute, Value の略です。 この名称が一般的なのかは知りませんが、Magento というeCommerceシステムで EAVモデルという言葉が使われています。 http://4plus.jp/tech/2011/02/magentoeav.html 従来のRDBMSよるスキーマ構造とは大きく異なり、来テーブルとして定義すべきものを全て Entity, Attribute, Value の3つのテーブルで管理します。(なんでもCMSではRecordというテーブルも使っています。) これにより管理画面から自由にオブジェクト設定(=データベースのテーブル設計)ができ、動的に変更が可能な構成を実現しています。メタデータがDBに登録されているので画面の生成なども容易に自動化できるわ

    ablabo
    ablabo 2012/11/26
  • レプリケーションを使わないMySQLの冗長化

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、DBMSチームの三谷です。 ヤフーでは多くのサービスでMySQLを利用しています。MySQLはヤフーを支える重要な技術の1つです。 私のチームではヤフーのさまざまなサービスのデータベースを集約して管理・運用しています。 集約することでコストの削減やノウハウの蓄積といった効果を生み出しています。 今回はこの集約環境の冗長化方法についてご紹介します。 集約環境の構成 集約環境ではマスターの冗長化にレプリケーションを利用せず、エンタープライズ向けの共有ストレージを利用したアクティブ・パッシブ型のHA構成を採用しています。 データファイルを共有ストレージに置き、どのマスターサーバーからでも同じデータに対してアクセスできるように

    レプリケーションを使わないMySQLの冗長化
  • Percona Toolkit pt-online-schema-change でサービス無停止スキーマ変更 | 外道父の匠

    テーブルにカラムやインデックスを追加するといった、いわゆるスキーマの変更を行うときは、通常、サービスをメンテナンスに入れてから作業をしなくてはいけません。理由は、ALTER TABLE実行中は共有ロックがかかってしまうため、更新クエリを実行しても即座に完了しなくなるからです。そうすると、アプリからみればおそらく更新クエリを発行するページではHTTPタイムアウトになりますし、参照だけのページでもかなり遅くなることでしょう。 サービスの改良をすると必ずスキーマ変更が必要になりますが、しかしサービスは可能な限り24時間365日提供したいもの。Percona Toolkitの pt-online-schema-change はそんな悩みを払拭し、サービスを停止すること無くスキーマの変更を可能にしてくれます。 概要と仕組み Percona Toolkitは全てPerlスクリプトなので、/usr/bi

    Percona Toolkit pt-online-schema-change でサービス無停止スキーマ変更 | 外道父の匠
  • 開発スピードアクセル全開ぶっちぎり!日本よ、これがMySQL 5.6だッ!!

    米国で行われているMySQL Connectというイベントで、ついにMySQL 5.6 RC(リリース候補版)が発表された。リリース候補版ということは、これが次の正式版になるということだ。MySQL 5.5は5.1から凄まじい進化を遂げたバージョンであった。だが、MySQL 5.6はさらにそれを上回る進化を遂げている!正直ここまでの進化を誰が予想しただろうか、いや誰も出来なかったであろう。これまで、α版が出たときから何度か新機能について紹介してきたが、今回改めてMySQL 5.6の新機能を振り返ってみようと思う。すべてまとめるともの凄い内容だ。興奮して夜も眠れなくなること請け合いだ。MySQLの進化が止まるのでは?などという心配は吹き飛び、もはやもうちょっと小出しにしなくて良かったのか?と心配してしまうレベルである。 それではMySQL 5.6の新機能について紹介していこう。 InnoDB

    開発スピードアクセル全開ぶっちぎり!日本よ、これがMySQL 5.6だッ!!
  • オラクルの次期「Oracle Database 12c」、新機能プラガブルデータベースの利点とは?

    サンフランシスコで開催中のOracle OpenWorld。10月1日に行われた基調講演では、来年登場予定の次期データベース製品「Oracle Database 12c」の新機能が紹介されました。特に目玉機能となるコンテナデータベースは、データベースのコンソリデーションを実現するこれまでにない新しいコンセプトの機能となっています。 基調講演の模様を紹介しましょう。 コンテナデータベースとプラガブルデータベース 米オラクル、シニアバイスプレジデント、データベースサーバテクノロジーズ、Andrew Mendelsohn氏。 IT部門にとって、予算が増えない中でITに対する要求は増えていく。コスト削減のためにサーバを仮想化してコンソリデーションしていくが、データベースのコンソリデーションは難しい。 Oracle Database 12cは、コンテナデータベースを用いることで、仮想マシンではない方

    オラクルの次期「Oracle Database 12c」、新機能プラガブルデータベースの利点とは?
  • 便利なスクリプト集 MySQL Utilities - rkajiyama’s diary

    実は1.0.0が2010年12月にリリースされていたのに全く知名度の無い"MySQL Utilities"。実は便利な機能が複数用意されているので、スクリプトを手作りしなくても済む可能性大です。またリリースに向けて新たなマイルストーンリリースが出てきたMySQL 5.6でのレプリケーションの追加機能と組み合わせる便利機能もあります。 MySQL UtilitiesはPythonで書かれたスクリプト集で、MySQL Workbenchに同梱されて配布されています。ライセンスは「もちろん」GPLです。2012年7月上旬時点での最新版は1.0.5です。また実行可能なスクリプトの他に、ライブラリとして細かな機能が用意されているため、独自のスクリプト作成にも役立ちます。 起動にはMySQL Workbenchのメニューの【Plugins】から【Start Shell for MySQL Utilit

    便利なスクリプト集 MySQL Utilities - rkajiyama’s diary
  • Maatkitの紹介

    2. アジェンダ  自己紹介  Maatkit とは?  Maatkitの特徴  Maatkitのツール群をいくつか紹介  まとめ 3. 自己紹介 はてなエンジニア -自作サーバ/ベンダサーバ -データベース -バックエンドシステム -ネットワークはid:maoe/id:halfrack ブログ http://d.hatena.ne.jp/marqs twitter http://twitter.com/marqs 4. 趣味自転車  MTB -> Road -> MTB?  シマノバイカーズフェスティバル毎年出てます  音楽  I am robot and proud  映画  ファンボーイズ  はたらくくるま  圧雪車が特に好き

    Maatkitの紹介
  • 便利!VIM(GVIM 7.x)でSQLを整形する | Labs Zsrv Net

    便利!VIM(GVIM 7.x)でSQLを整形する April 23rd, 2008 Posted in Linux Write comment ということで、VIMMacroという便利な機能があるので、それを使う。 VIM用のMacroというのはいっぱい既に出回っていて、今回は以下のものを使う。 SQLUtilities http://www.vim.org/scripts/script.php?script_id=492 まずは、上記の場所からMacroをダウンロードしてくる。 ダウンロードしたファイルを解凍し、VIMのHOMEディレクトリ配下の「plugin」 ディレクトリにファイルを配置する。 ※解凍すると、pluginフォルダを含む複数のディレクトリが出来ると思うので、  実際にはHOMEディレクトリ配下の「plugin」ディレクトリの上のディレクトリ  に丸ごとコピーすれば良

    ablabo
    ablabo 2011/12/06
  • Oracleのスキーマを比較するツール - あおきのTechメモ

    serverfaultに「How can I diff two Oracle 10g Schemas?」というトピックが上がっていました。 Oracleのデータベース間の差分をチェックするツールについて回答がされていました。 【案1】SQL関数 DBMS_METADATA.GET_DDL関数を使う。テキストに出力して比較してねという感じ SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_TABLES u; SELECT DBMS_METADATA.GET_DDL('INDEX',u.index_name) FROM USER_INDEXES u; 【案2】SchemaCrawler DBの内容をdiffで比較!? - 便利データベースコマンドSchemaCrawler 【案3】Schema Compare Tool f

    Oracleのスキーマを比較するツール - あおきのTechメモ
  • ロールバック・セグメントに関する検証 その8 - InsightTechnology 旧ブログ

  • SQLパフォーマンス問題調査でEXPLAIN PLAN、SQLトレースは(ほとんど)使わない « WR blog

    December 2014 (1) February 2014 (1) January 2014 (1) September 2012 (1) April 2012 (1) March 2012 (2) October 2011 (1) June 2011 (5) May 2011 (1) April 2011 (1) March 2011 (1) February 2011 (1) January 2011 (1) December 2010 (1) September 2009 (1) April 2009 (1) March 2009 (1) January 2009 (3) November 2008 (2) October 2008 (1) December 2005 (2) October 2005 (2) September 2005 (2) August 2005 (7)

  • パーティション表とパーティション索引

    18 パーティション表とパーティション索引 この章では、パーティション表とパーティション索引について説明します。この章の内容は、次のとおりです。 パーティション化の基礎知識 パーティション化方法の概要 パーティション索引の概要 パフォーマンスの改善のためのパーティション化 パーティション化の基礎知識 パーティション化とは、大規模な表や索引を、パーティションというより小さくて管理しやすい部分に分割して、この種の表や索引をサポートするときの主な問題に対処します。パーティション表にアクセスする際、SQL問合せとDML文を変更する必要はありません。ただしパーティションを定義すると、DDL文は表や索引全体ではなく、個々のパーティションへのアクセスやその操作ができるようになります。パーティション化を行うと、このようにしてラージ・データベース・オブジェクトの管理を簡素化できます。また、パーティション化は

  • パーティショニングは大規模DBの性能向上に効く(1/3) ― @IT

    連載では、大規模データベースでのパフォーマンス・チューニングの手法として、Oracleパーティショニングを解説する。単なる機能説明にとどまらず、実機による検証結果を加えて、より実践的な内容をお届けする。(編集部) パーティショニングの必要性 今日、Oracleデータベースを取り巻く環境は、多種多様なユーザーのニーズに応えるべく進化しています。例えば、Webサーバのバックエンドとして使用されるデータベースでは、高い可用性を実現しながら、日々増加するデータに対し、多数のユーザーからの要求をレスポンスの遅延なく処理し、さらに、優れたメンテナンス性を提供するなど、ハードルの高い要件が求められています。 このような要件のデータベース・システムに対し、ハードウェア面ではここ数年、IAサーバを採用するケースが増加しています。IAサーバの64bit化やCPUの処理能力増大(マルチコア化)に伴いCPU処理

    パーティショニングは大規模DBの性能向上に効く(1/3) ― @IT
  • パラレル実行の使用

    25 パラレル実行の使用 この章では、パラレル実行環境におけるチューニングについて説明します。内容は次のとおりです。 パラレル実行のチューニングの概要 パラレル実行の動作方法 パラレル化のタイプ パラレル実行用のパラメータの初期化およびチューニング パラレル実行用の一般パラメータのチューニング パラレル実行パフォーマンスの監視および診断 アフィニティおよびパラレル操作 様々なパラレル実行のチューニング・ヒント パラレル実行のチューニングの概要 パラレル実行によって、一般的に意思決定支援システム(DSS)およびデータ・ウェアハウスに対応付けられている大規模なデータベースでの、データ処理集中型の操作における応答時間が大幅に削減されます。パラレル実行は、特定のオンライン・トランザクション処理(OLTP)システムおよびハイブリッド・システムでも実装できます。パラレル実行は、パラレル化と呼ばれること

  • リレーショナルデータベースはNoSQLを取り込み始めた。NewSQLの登場とNoSQLの終わり、という予想

    リレーショナルデータベースはNoSQLを取り込み始めた。NewSQLの登場とNoSQLの終わり、という予想 MySQLの次期バージョンとPostgreSQLの次期バージョンにどのような新機能が追加されるのか、昨日、一昨日の2の記事で紹介しました。 MySQLの次期バージョンはMemcached APIを備える! MySQL Conference & Expo 2011基調講演 PostgreSQLの現状と次期バージョン9.1の新機能。MySQL Conference & Expo 2011 この2つのデータベースの次期バージョンに共通しているのが、NoSQLの機能を取り込んでいることです。NoSQLに対するリレーショナルデータベースによる反撃が始まっています。 リレーショナルデータベースがNoSQLを取り込み始めた MySQLの次期バージョンであるMySQL 5.6に搭載予定の新機能の1

    リレーショナルデータベースはNoSQLを取り込み始めた。NewSQLの登場とNoSQLの終わり、という予想
  • ORACLE/オラクルSQLリファレンス(SQLPLUS)

    SQL> spool sql.log SQL> SQL> select count(*) from emp; COUNT(*) ---------- 2 SQL> spool off SQL> host dir sql.log

    ablabo
    ablabo 2011/04/17
    SQLPLUSの実行ログをファイルに出力する方法。spoolコマンドを利用して行う