タグ

dbに関するpero1のブックマーク (42)

  • MySQL 8.1シリーズにおけるInnoDB Clusterとリードレプリカの融合(ただしMySQL Serverは8.0でOK)

    MySQL体の新機能ではないのだが、MySQL ShellとMySQL Routerのイノベーションリリース(バージョン8.1)によりInnoDB Clusterに対してリードレプリカを追加することができるようになったので、今回はそのことについて解説をしていこうと思う。 InnoDB Clusterとは このブログではInnoDB Clusterとは何かということをそもそもまだ解説していなかったように思う。詳しいことはおいおい別の投稿で触れたいと思うが、InnoDB ClusterというのはMySQL Serverのグループレプリケーションを核にしたクラスタリング機能のことだ。MySQL Shellを用いてかんたんに構築でき、なおかつMySQL Routerを介して接続することにより、インスタンス障害が生じたときに自動的に接続先を振り替えることができる。イメージ的にはこんな感じ。 グルー

    MySQL 8.1シリーズにおけるInnoDB Clusterとリードレプリカの融合(ただしMySQL Serverは8.0でOK)
    pero1
    pero1 2023/11/09
  • Managed cloud database services: what was new in 2020 | Google Cloud Blog

  • Tuning Your DBMS Automatically with Machine Learning | Amazon Web Services

    AWS Machine Learning Blog Tuning Your DBMS Automatically with Machine Learning This is a guest post by Dana Van Aken, Andy Pavlo, and Geoff Gordon of Carnegie Mellon University. This project demonstrates how academic researchers can leverage our AWS Cloud Credits for Research Program to support their scientific breakthroughs. Database management systems (DBMSs) are the most important component of

    Tuning Your DBMS Automatically with Machine Learning | Amazon Web Services
  • RDBにおけるキャッシュという考え方

    RDBの専門家として日々活動している中で気づいたことのひとつに、「RDBはデータへのアクセスの実装をインデックスに頼っているが、インデックスは全ての問題を解決できるほど万能ではない」ということがある。インデックスというのはとても強力な部品であり、その点には全く異論はない。だが、世の中の全ての問題(クエリ)を解決できるほど、柔軟性に富んだものではないということだ。RDBは、どのインデックスを使ってデータへアクセスするかということを、オプティマイザを用いて判断する。大抵のRDB製品では、オプティマイザはよい仕事をするので、インデックスとオプティマイザの組み合わせによって、ほとんどの問題に対応できる。だが、100%ではないのであり、そのようなケースがシステムの性能問題を引き起こしたり、プログラマ(アプリケーションの設計者)に、NoSQLへ完全に移行したり、クエリ高速化のために非正規化をすると言っ

    RDBにおけるキャッシュという考え方
    pero1
    pero1 2015/06/19
  • あなたが知らない リレーショナルモデル

    関西DDD.java 勉強会 2016-3-5 (DDD Alliance 勉強会 2016-1-21 @東京の京都再演版)

    あなたが知らない リレーショナルモデル
    pero1
    pero1 2014/11/14
  • SQLの観点から「Oracle Database」「PostgreSQL」 「MySQL」の特徴を整理しよう!

    EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

    SQLの観点から「Oracle Database」「PostgreSQL」 「MySQL」の特徴を整理しよう!
  • MySQLで処理に長時間かかっている複数クエリをまとめて殺す方法 | Basicinc Enjoy Hacking!

    あまりにも処理に時間がかかるようなSQLを実行してしまい、MySQLがうんともすんとも言わなくなってしまうような状況、よくありますよね。っていうか、まぁそんな状況あってはならないんですが、時たまあります。そんな時、問題となっているクエリの処理を止めたいわけです。 特定のクエリを止める方法 MySQLで実行中のクエリ一覧を見て、SQLを強制終了する方法 こちらを見てもらえればやり方は分かります。単純にMySQLに入って、show processlist;で問題のあるクエリを発見し、プロセスIDを kill するだけ。とても簡単。 複数のクエリを一括で止める方法 今回は問題のあるクエリが100個あったらどうする…?的なのを解決するエントリーです。まぁ、問題あるクエリ100個ある状況は、アプリ的に問題あるんじゃね?っていうレベルですが。 1個ずつプロセスIDをコピペして…なんてやってられないです

    MySQLで処理に長時間かかっている複数クエリをまとめて殺す方法 | Basicinc Enjoy Hacking!
    pero1
    pero1 2014/04/27
  • DB設計の難しさ

    今日は徒然なるままにDB設計について思っていることを並べてみようと思う。 ようやくWEB+DB Pressの次号の原稿を書き終えた。2年間の連載であるが、来年はプライベートが忙しくなる予定なので、連載はこれにて終了とさせてもらうつもりである。 「なぜ人はリレーショナルデータベースを使いこなせないのか」 このところ執筆や講演を通じてリレーショナルモデルについて説明する機会を色々頂いているが、それらの活動の根源となっているのが、この素朴な疑問である。その疑問をパワーにしてこれまで活動を行なってきた。 現時点での自分の回答は「データベース設計が難しいから」である。もちろんリレーショナルモデルそのものの難しさというのもあるが、それよりは「適切な使い分けができていない」ということが大きいように思う。言葉を変えると、リレーショナルモデルを適用すべきデータとそうでないデータの判断ができていないからDB

    DB設計の難しさ
    pero1
    pero1 2014/04/18
  • 初級〜中級者のためのSQL特訓 - 忘れないようにメモっとく

    ほぼほぼ初心者でSQLの練習がしたいっていう人、知識の再確認をしたい人にオススメのサイト。 SQLZOO ブラウザ上で動作するので、めんどくさい環境設定もなし。 データベースも、MySQLOracleSQL Server、Postgre、Ingres、DB2から選べる。 簡単なSELECT文から始まって、SUMやCOUNTみたいな基的な関数の問題や、JOINを使ったちょっと難しめの構文もある。 実行環境付きのリファレンスもあるのがよい!(超便利!)

    初級〜中級者のためのSQL特訓 - 忘れないようにメモっとく
    pero1
    pero1 2014/02/26
  • ナチュラルキーとサロゲートキーについての議論

    とあるブログエントリで「ナチュラルキーを主キーにしてはいけない」という主張を見かけたのでこれに反論しておく。これはリレーショナルモデル的には明らかに間違った考えだからだ。 リレーショナルモデルにあるのはナチュラルキーだけリレーショナルモデルには「サロゲートキー(代理キー)」という概念はない。まずこの点に注意して頂きたい。サロゲートキーとは、データベースアプリケーション開発において実用上必要とされる機能であって、質的には不要のものである。リレーショナルモデルでは、いわゆるナチュラルキーというものがあれば機能的には十分だからだ。 そのためにはまず「キー」という概念が何を指し示すかということについて正しく理解しなければならない。リレーショナルモデルではキーと呼ばれるものは候補キーとスーパーキーという2つの概念だけである。「タプル(≒行)の値を一意に決定することができる属性(≒カラム)の集合」の

    ナチュラルキーとサロゲートキーについての議論
    pero1
    pero1 2014/01/21
  • ヒゲモジャのギークが提案する技術習得戦略

    先月、Dbtech Showcaseで松信さんがデータベース技術の羅針盤という講演をされた。残念ながらプレゼンそのものを観に行くことはできなかったが、その前の日に松信さんと一緒に昼飯をべたとき、講演のあらすじについては伺っていた。その際にも同じようなことを松信さんには言ったのだが、スライドを見直した上で改めて自分の意見をまとめておこうと思ったので筆をとることにする。 なお、このエントリではスライドに書かれているトピックについて語るので、まだ松信さんのスライドを見てない人は先にスライドに目を通してからエントリを読んで欲しいと思う。結論は全く違った方向に進んで行くが、その点は了承して頂きたい。 あなたに選択肢はあるか?ひと握りの天才なら自分の興味のある分野を開拓することができるだろう。あるいはすでに成功を収めた人であれば転職に困ることはないので、成功しそうな会社に乗り換えることもできるだろ

    ヒゲモジャのギークが提案する技術習得戦略
  • 「コネクションプーリング都市伝説」はほんとに都市伝説?(その1) - 最速配信研究会(@yamaz)

    「コネクションプーリング都市伝説」という単語がある.かいつまんでいうと 「コネクションプールって一般的に速いと言われているけど,クライアントが 多くなると接続維持のコストが大きくなるから今となっては速くないんじゃね?」 というものだ. WEB+DB PRESS vol.33でnipotanさんの中の人が書いてた記事が発端だと思われる. あとこんなエントリもあった. hori-uchi.com コネクションプーリング都市伝説は正しそう またちょっと古いねたですが、WEB+DB PRESS vol.33でnipotanさんが書いてたコネクションプーリング都市伝説を読んだ時、ほんとのところどっちが速いのかってのをabでベンチマークをとってみました。 (snip) これ以外にもいくつかパスを替えてベンチマークをとったところ、いずれも若干ですがプーリングしないほうが早かったので、現在はプーリングしな

    「コネクションプーリング都市伝説」はほんとに都市伝説?(その1) - 最速配信研究会(@yamaz)
  • naoyaのはてなダイアリー - コネクションプーリングの話

    かなりながーいエントリになる予定なので,結論だけ最初に書くとこんな感じ. この話題については自分も あとで書く と言って書いてなかったので書いてみますよ。2006年の下期にもなってコネクションプーリングかよというツッコミもありそうですが、あとで書くといったら書くの。あとで読むといったら読む。 普通「コネクションプーリング」と言ったら、主に二つの役割があると思います。話を簡単にするためにウェブアプリケーションに限定して言及します。 ウェブアプリケーションから DB への接続を開けっ放しにして、接続に必要とされるオーバーヘッドをカットして双方の負荷を下げる。 ウェブアプリケーションと DB への接続を「使いまわす」ことで、同時接続数を節約する。 というもの。 mod_perlDB と接続維持するとコネクション数増えて云々という話は主に前者のみについての話になります。Apache::DB

    naoyaのはてなダイアリー - コネクションプーリングの話
  • SQLインジェクション対策に正解はない

    最近、SQLインジェクションのネタが盛り上がってるようだ。下記のTogetterまとめあたりが震源地だろうか。 「プリペアードクエリが基だけど、動的に SQL を組み立てる場合もあるから、そういう場合に備えてエスケープも知っておいたほうがいいかも」 - Togetterまとめ まとめを読んだ感想としては、「どちらの意見も間違ってはいない」というものだ。前提あるいは見方が異なるために、見解の相違が生じているだけのように思う。SQLインジェクションについては私も若干思うところがあるので意見を書いておこうと思う。 攻撃を防ぐのは難しいSQLインジェクションをはじめとするセキュリティ対策が難しいのは、ひとつでも穴があると致命的なダメージを受け得るということだ。「どうやって効率よくコードを書くか」とか「コードのメンテナンス性を高めるにはどう書くべきか」みたいな議論とは全く質が異なる議論が必要になっ

    SQLインジェクション対策に正解はない
  • データベース設計徹底指南

    DBエンジニアのための技術勉強会(第3回)で使用した資料です。主にリレーショナルモデルと正規化について解説しています。リレーショナルモデルの限界について正しく認識してこそ、リレーショナルモデルを理解したと言えると思います。

    データベース設計徹底指南
    pero1
    pero1 2013/11/29
  • RDBMSのコネクションプーリングとかその辺の話 - wyukawa's diary

    データベース技術の羅針盤 from Yoshinori Matsunobu これは素晴らしい資料で後半のキャリアの話とか面白いんだけど、今回書くのはp6,p8に書かれていた下記の話です。 PosgreSQLは接続がプロセスベースなのでLL言語との相性がよくない Pgpool(これはプロキシサーバー的に使うらしい)などのコネクションプールと併用することが多い MySQLは接続がスレッドベースなのでコネクションプーリングが使いづらいLL言語環境では魅力 なんでLL言語だとコネクションプーリングが使いづらいのかわからずつぶやいたらリプライもらってついでにちょっと前に話題になったRDBMSでコネクションプールが必要な理由、わからない。 - Togetterや7年前のブログエントリであるコネクションプーリングの話 - naoyaのはてなダイアリーを読み返してみて思ったことを書いてみる。全然まとまって

    RDBMSのコネクションプーリングとかその辺の話 - wyukawa's diary
  • データベース技術の羅針盤

    PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation

    データベース技術の羅針盤
  • 「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の比較まで幅広く〜
  • バックアップの概要と方式一覧 — Let's Postgres

    NTT オープンソースソフトウェアセンタ 鈴木 幸市 記事では、PostgreSQLデータベースのバックアップとリストア方法を解説していきます。 今回は、各種バックアップの概要を説明し、次回以降でそれぞれの方法の具体的な手順を示していきます。 用語の整理 「バックアップ」とは、データベースの障害に備えたり、アップグレードの際にデータを移行するために、データベースの内容を別のファイルに取り出すことをいいます。 バックアップには、データをSQLやテキストデータとして取り出す「論理バックアップ」と、データファイルをそのまま保存する「物理バックアップ」があります。 論理バックアップでは SQL の結果としてデータを保存するので、もちろん PostgreSQL サーバは動作したままです。 一方、物理バックアップでは、サーバを停止した状態でバックアップを行う「オフライン・バックアップ」と、サーバを起

  • データベース負荷テストツールまとめ(1) - SH2の日記

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

    データベース負荷テストツールまとめ(1) - SH2の日記