タグ

DBに関するcubed-lのブックマーク (27)

  • PostgreSQLとMySQL、使うならどっち? データベース専門家が8つの視点で徹底比較!|ハイクラス転職・求人情報サイト AMBI(アンビ)

    PostgreSQLMySQL、使うならどっち? データベース専門家が8つの視点で徹底比較! オープンソースのデータベースとしてよく比較されるPostgreSQLMySQL。どんな長所・短所があるのでしょう? それぞれの専門家による対談で明らかにします。 エンジニアとして働いていると必ず直面する悩み。それは、「どのリレーショナル・データベース(以下、RDB)を選ぶのが最善なのか?」です。 RDBごとに長所と短所は異なっています。そのため自社サービスにマッチしないRDBを選んでしまうと、それがボトルネックとなり開発・運用にトラブルが生じるケースは少なくありません。 なかでもよく比較検討されるのが、PostgreSQLMySQL。ともにオープンソースRDBのデファクトスタンダードであり、高い性能と数多くの機能を持っています。 では、両者は具体的にどのような長所・短所があるのでしょうか。そ

    PostgreSQLとMySQL、使うならどっち? データベース専門家が8つの視点で徹底比較!|ハイクラス転職・求人情報サイト AMBI(アンビ)
    cubed-l
    cubed-l 2017/09/05
  • このRDBについて私は驚くべき闇を見つけたがそこを発表するにはネットは怖すぎる

    YAP(achimon)C::Asia Hachioji 2016midの資料です。

    このRDBについて私は驚くべき闇を見つけたがそこを発表するにはネットは怖すぎる
    cubed-l
    cubed-l 2016/07/04
  • ゲームエンジニアのためのデータベース設計

    DevLOVE X Day1 C-5のセッションです。 ITの活用範囲の広がりとともに、費用・品質よりもデリバリを優先するプロジェクトも増えてきました。しかし「しっかり考えるよりも、作ってリリースしちゃおうぜ、正解なんて誰にも分からないんだから」というマントラを唱えながら、返済見込みの立たない大量の技術的負債を抱える。それが最善の選択なのか、もう少しだけ立ち止まって考えてみませんか? YAGNIという言葉を便利に使いすぎてはいませんか? コードを書きなぐるのと、ちょっと考えて設計して作るのとで、そんなに開発スピードに違いがありますか? 考えてみたいと思います。 This document discusses messaging queues and platforms. It begins with an introduction to messaging queues and their

    ゲームエンジニアのためのデータベース設計
    cubed-l
    cubed-l 2016/05/30
  • ネットゲームデータベース設計むかしばなし、あるいはとんでもないMMORPGの設計の話: 不倒城

    目次・記事一覧(1) レトロゲーム(185) 日記(772) 雑文(512) 書籍・漫画関連(56) 子育て・子どもたち観察(115) ゲームブック(12) フォルクローレ・ケーナ・演奏関連(86) FF14(40) レトロでもないゲーム(336) 始めたばっか(13) アナログゲームいろいろ(37) 人狼(48) ネットの話やブログ論(61) 三国志大戦(20) 無謀的世評(52) ゴーストライター(16) 大航海時代ONLINE(40) FF3(6) Civ4(18)

  • ヤフー社内でやってるMySQLチューニングセミナー大公開

    3. Yahoo! JAPANのRDB環境 • 11g RAC Enterprise Edition • 約200DB • サーバ 200台, Exadata もあるよ • MySQL 5.1 (RR,Mixed) Percona 5.5 (RR,Mixed) Percona 5.6 (RC,RBR,GTID) • 約500DB • サーバ 300台 Oracle Database MySQL Percona

    ヤフー社内でやってるMySQLチューニングセミナー大公開
    cubed-l
    cubed-l 2016/02/23
  • 今まで見たもっともクソなテーブル設計 - 何か着ていればいいよ

    あれは、僕がデータベースを扱ううち最初から3件目のプロジェクトだった。 C++のソースが難解で火を吹いているという話で、自分は低スキルの若造。火にくべるには丁度良い程度のやる気と責任感をもっていた。折悪く別のプロジェクトが終了した直後だったもので投入されたのでした。 現場で『DBからデータを吸い出すツールかSQLを作ってくれ』といわれ話をきくと他社が作ったDB定義がすこぶる使いづらいという。 ER図やDB定義を見せてくださいと言ったのだけど、そんなものは無いという返事。 今ならもうここら辺で逃げ出すところですが、当時は『ふーん。』てなもんでそういうこともあるのかくらいの軽い気持ちで考えていました。 で、プロジェクトの資料をあさりまくって何とかDB定義のようなものも見つけDBのデータを調査し始めたのですが何かがおかしい。 機能の数に比して異様にテーブル数が少ないのです。 ふと周りを見ると、皆

    今まで見たもっともクソなテーブル設計 - 何か着ていればいいよ
    cubed-l
    cubed-l 2014/03/05
    笑ってから、泣いた
  • RDBMSでコネクションプールが必要な理由、わからない。

    Takayuki Shimizukawa @shimizukawa @masa_edw コネクションプールが無い場合、使い終わったコネクションが即解放されない(解放まで多少遅延する)ので実際に使っているコネクションの数より多く存在する。その分メモリを圧迫して効率が悪い。っていう話は聞いたことがあるよ(要出典 2013-09-04 09:27:28 ハイパーむとう @masa_edw @voluntas 現状で必要な状況は理解していますが、なぜそうなるのか理解していないということです。他にもたとえば、bitlyの呼び出しはコネクションプールを使うべきか?なぜ(べき、べきでない)のか?どういう要請でそうなのか?と言う問いに僕は答えられません。 2013-09-04 09:31:22

    RDBMSでコネクションプールが必要な理由、わからない。
    cubed-l
    cubed-l 2013/09/05
  • Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT
    cubed-l
    cubed-l 2012/09/12
  • “ドラゴンクエストXの舞台裏”サーバ・データベース開発のプロが語る、数十万人がいっしょに遊べるゲームができるまで【CEDEC 2012】 - ファミ通.com

    “ドラゴンクエストXの舞台裏”サーバ・データベース開発のプロが語る、数十万人がいっしょに遊べるゲームができるまで【CEDEC 2012】 数十万人の冒険者を支える“バックエンド”とは 2012年8月20日~22日、パシフィコ横浜にて開催されている、日最大のコンピュータエンターテインメント開発者向けカンファレンス“CEDEC2012”。3日目の2012年8月22日に行われた、“ドラゴンクエストXの舞台裏”と題したセッションをリポートしよう。 非常に胸躍るタイトルが付けられたこのセッション。CEDECに訪れたクリエイターたちの興味も高く、立ち見どころか、会場に入りきらないほどの多くの聴衆が詰めかけた。スピーカーは、スクウェア・エニックス開発部 プログラマの森山朋輝氏。森山氏は、「サーバサイドのマニアックなテーマなので、まさかこれほど多くの方が集まるとは……」と驚いた様子を見せつつも、極めて興

    “ドラゴンクエストXの舞台裏”サーバ・データベース開発のプロが語る、数十万人がいっしょに遊べるゲームができるまで【CEDEC 2012】 - ファミ通.com
  • グーグル、BigQueryを正式公開。SQLで大規模データに対して高速処理

    BigQueryはカラム型データストアの一種で、テラバイトクラスの大規模データに対して大量の並列処理を行うことで高速に結果を得ることが可能。グーグル 佐藤一憲氏の発言によると、 OLAP/DWH/Data Miningで行われるようなread onlyのad hocクエリをきわめて高速(数秒〜数十秒)に実行します。 とのこと。 SQLによる問い合わせが可能 この高速性に加え、BigQueryではSQLを問い合わせ言語に使えるという点にも大きな特徴があります。数秒程度のレスポンスとSQL文による記述は、大規模データに対するアドホックな処理を行うのに適したサービスだといえるでしょう。 BigQueryのSQLの構文は「Query Reference」で解説されていますが、SELECT文にFROM、WHERE、JOIN、HAVING、GROUP BY、ORDER BY、LIMITなどが使えるため

    グーグル、BigQueryを正式公開。SQLで大規模データに対して高速処理
  • 信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ

    ずいぶん時間があいてしまったけど、大規模コンシューマ向けサービスRDB設計の続き。 僕はこのプロジェクトを自分のRDBの知識を使って革新してやろうと思って臨んだ。 しかし結果として逆に、コンシューマ向けサービスに最適化されたRDBの使い方について教わることになった。 ※ あと、KVSでいいじゃんって言ってる人もいるけど、それはKVS導入の苦労を知らない人だと思う。KVSの苦労は後で書く。 僕らが最近手がけているのは、とても大規模なコンシューマ向けサービスだ。 100万人の契約ユーザが使い、1テーブルに1億レコード以上のデータを貯め、24時間止めることが許されず、 要求から応答までのターンアラウンドタイムが1秒以内という厳しいSLAのサービスである。 中でも僕はDBやフレームワークの設計とアーキテクトっぽいことを担当している。 僕がこの現場に来て、驚愕した文化が2つある それは「Join禁止

    信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ
    cubed-l
    cubed-l 2011/08/10
  • Perl好きの女性Webエンジニア二人がIBM DB2を試してみた - はてなニュース

    Webアプリケーション開発に欠かせないデータベース管理システム(RDBMS)。オープンソースの製品が広く利用される昨今ですが、無償で利用できる商用のRDBMSもあります。そんな製品の一つがIBMの「DB2」です。歴史が長く、実績はたくさんあります。そうはいっても使ったことない! どんなもんだか試したい! そう思った一人が、フリーランスのWebエンジニア女子、id:acotieさんでした。普段から開催している勉強会の番外編として、同じくWebエンジニア女子のid:aomushi510さんを呼び、無償で利用できる「DB2 Express-C」に触れてみることに。記事の終わりにはプレゼントのお知らせもあります。 (※この記事は日アイ・ビー・エム提供によるPR記事です。) このたびの東日大震災で被災された皆さまに心よりお見舞い申し上げます。皆さまの安全と一刻も早い復旧と復興を心からお祈り申し上

    Perl好きの女性Webエンジニア二人がIBM DB2を試してみた - はてなニュース
    cubed-l
    cubed-l 2011/05/23
  • サーバ管理者日誌 100万レコードからのLIKE検索

    確認したいことがあって、 中野区立図書館[http://www3.city.tokyo-nakano.lg.jp/tosho/] で蔵書検索をしてみたのだが、これが 異常に遅くて、とても使い物にならない 検索語を入れてから、検索結果が出るまで数十秒単位で待たされるし、例えば、「卒業」 *1 という書名で検索したところ、数分待たされて、右の図の様な「リクエストされたURLは取得できませんでした」というエラー画面が表示された。 ところで、このエラー画面。squidのエラーの様だが、一体、なぜ、リバースプロキシを構成しているのだろうか。 それは、さておき、一旦、こういった形でエラーになると、トップページすらまともに表示できなくなる。右の図の様に、メインのフレームが真っ白のままになるのだ。 確認してみると、このフレームのURLが「http://www3.city.tokyo-nakano.lg.j

    cubed-l
    cubed-l 2010/08/27
  • TokyoTyrantをPHPで使う際に便利な資料と実装コードサンプル:phpspot開発日誌

    TokyoTyrantをPHPで使う際に便利な資料がスライドシェアで公開されてました。 TokyoTyrant をご存知の方も多いと思いますが、一応、知らない方に説明をすると、TokyoCabinet という高速なkey-valueストア型のデータベース操作ライブラリがあって、これのネットワークインタフェースになります。 mixi の最終ログイン時刻保存などに使われているそうで、1秒で10000回もの保存・読み出しクエリをマシンたった1台で処理できた実績があります。 データをファイルに保存するので、サーバを落としてもデータは保持され、なおかつmemcachedと同程度のパフォーマンスを発揮できるという物凄いものです。 これをPHPから扱うためにはどうするか、という際に参考に出来る資料となってます。 非常によくまとまっていたのでご紹介させて頂いてます。 資料によると、当然ながらPHP Ext

    cubed-l
    cubed-l 2010/02/22
  • [Perl][PHP][SQL]: quoteメソッドの数値データ対応を検証する - 徳丸浩の日記(2009-10-19)

    _quoteメソッドの数値データ対応を検証する このエントリでは、PerlDBI、PHPのPDO、MDB2にて用意されているquoteメソッドが数値データをどのように扱えるかを検証しました。結論としてMDB2が合格、それ以外は不合格で、とくにDBD::mysqlを使用した場合、脆弱性といってもよいような結果となりました。 概要 DBI、PDO、MDB2は、いずれもデータベースアクセスを抽象化したモジュール(クラス)であり、汎用的な記述によりさまざまなデータベースを利用できるように工夫されています。これらモジュール(クラス)にはquoteというメソッドが用意されています。DBIのquoteメソッドの呼び出し例を示します。 my $dbh = DBI->connect('DBI:mysql:dbname:localhost', 'user', 'pass'); print $dbh->quo

  • Kazuho@Cybozu Labs: Pacific という名前の分散ストレージを作り始めた件

    大規模なウェブアプリケーションのボトルネックがデータベースであるという点については、多くの同意が得られるところだと思います。解決策としては、同じ種類のデータを複数の RDBMS に保存する「sharding」 (別名:アプリケーションレベルパーティショニング/レベル2分散注1) が一般的ですが、最近では、分散キーバリューストア (分散 KVS) を使おうとする試みもみられるようになってきています。 分散 KVS が RDBMS sharding に対して優れている要素としては、事前の分割設計が不要で、動的なノード追加(とそれにともなう負荷の再分散)が容易、といった点が挙げられると思います。一方で、Kai や Kumofs のような最近の実装では eventually consistent でこそ無くなってきているものの、ハッシュベースの分散 KVS は、レンジクエリができなかったり (例:

    cubed-l
    cubed-l 2009/06/12
  • DBにパスワードを保存する際に、どのハッシュを選ぶか - Yappo::タワシ

    というのを速度とハッシュ後のサイズだけみてみた。 安い速いだけが選定基準にはならないって事を注意書きしとく。 # いろいろ追加した md5 : 16 sha1 : 20 sha224 : 28 sha256 : 32 sha384 : 48 sha512 : 64 hmac_sha1 : 20 hmac_sha512: 64 Rate hmac_sha512 sha512 sha384 hmac_sha1 sha224 sha256 sha1 ds_sha1 md5 hmac_sha512 36364/s -- -68% -70% -82% -89% -90% -92% -96% -97% sha512 114943/s 216% -- -4% -42% -67% -67% -74% -87% -90% sha384 119760/s 229% 4% -- -39% -65% -66% -

  • どうも世間では、思ったよりDBエンジニアが不足している様だ: 不倒城

    ちょっと技術的な話。oracle分かる人にしか分からないかも。 最近取引先のシステムを見る機会が何度かあったのだが、昨日すんごいとこ見た。 DBが重くて業務にならないというから、ちょっと中を覗かせてもらったらもうエラいこっちゃ。 ・業務ロジックの殆どをファンクション・プロシージャで構成している。なのに、キャッシュヒット率が妙に低い。 ・調べてみようと思ったら一回もstatspackが取得されていない。(担当者には、「statspack?syslogならとってあるんですが…」と言われた) ・各テーブルのindexがどういう訳か全列に貼られている。ちなみにindexは全テーブル例外なくその一個だけ(プライマリキーを除けばだが)。 ・と思ったら、PKが文字列だったりするテーブルがあちらこちらにある。 ・試しにファンクションを一つ二つ見てみたら、なんか普通にクロス結合されまくっていてちょっとくらっ

  • 不倒城: SI業界からネットゲーム業界に移った知人に色々話を聞いてきた。

    ちょっと技術的な話になる。 私の知人に、かつてはアルファベット三文字の某有名SI会社に在籍していて、今はどういう訳か某ネットゲームの会社に勤めている変り種がいる。 彼はネットワークとDBの専門家である。ゲーム業界には元来DB周りに詳しい人があまり多くなかったらしく、しかしネットゲームの開発にはDBやネットワークのアーキテクチャに関する知識が必須で、要は引き抜かれたらしいのだが、当人それ程ゲーム好きでもないのに面白いルートに行くなーと思っていた。 機会があったら金融業界とネットゲーム業界のシステム周りの違いについて聞いてみたいなーと思ってたんだが、この前久々に会ったら色んな話が聞けた。特定されない程度においおい書いてみよう。ぼかして書く為、ところどころいー加減だが勘弁して頂きたい。 今日はサーバとかデータのやり取りとか、技術的な話。 まず、前提。オンラインシステムの肝の一つに、「誰がデータを

  • 「MySQL,PostgreSQLとFirebirdの性能をユーザー会メンバーが徹底比較,判明...

    「更新とJOINが多ければMySQL,シンプルなSELECT主体ならPostgreSQLが向いている。ストアド・プロシージャでシングル・コネクションならFirebirdは非常に速い」---6月23日に開催された「オープンソースカンファレンス2007.DB(OSC2007.DB)」で,各オープンソースDBのコミュニティのメンバーによる性能比較が披露され,従来の一般的なイメージとは異なる“意外な結果”が明らかにされた。 オープンソースカンファレンスは,オープンソース関連コミュニティが主催するイベントで,OSC2007.DBはデータベース関連のコミュニティが集まったイベントである。性能比較セッションを担当したのは,日MySQLユーザ会の堤井泰志氏,日PostgreSQLユーザ会の片岡裕生氏,Firebird日ユーザー会の木村明治氏。「あくまでボランティアによる性能比較であって,最速,最新マ

    「MySQL,PostgreSQLとFirebirdの性能をユーザー会メンバーが徹底比較,判明...
    cubed-l
    cubed-l 2007/06/25