タグ

dbに関するbukemuのブックマーク (23)

  • Clojureの作者が作ったデータベースDatomicが凄い

    プログラミング言語Clojureの作者Rich Hickey氏率いるClojure HackerのチームがDatomic(デートミックと発音するらしい)というデータベースをリリースしました。これが何やらとてつもないです。10年先を行ってる技術じゃないでしょうか。 まだ番サービスは始まっていませんが開発環境用のライブラリが配布されています。 Datomicは斬新なアーキテクチャなので一言で説明するのはとても難しいです。 私が理解できたことを簡単に説明します。 2014/1/20追記 ライセンスモデル、サポートストレージ、サービスとしてではなく独立して使用する形になるなど記事作成時の内容から色々変更が合った部分を更新しました。 変更不可なAppend-onlyデータベース 従来のデータベースで、あるレコードを変更するというのはそのレコードに対応した場所があり、そこのデータを書き換えるというこ

    bukemu
    bukemu 2012/03/09
  • C-Store: A Column Oriented DBMS

    The CStore project is a collaboration between MIT, Yale, Brandeis University. Brown University, and UMass Boston . Download C-Store version 0.2 is now publicly available. Here is a snapshot of the C-Store code base version 0.2, released in October 2006. It is built with open source tools and runs on Linux x86 computers. New Warning: This code compiles on old versions BerkeleyDB and gcc. Consequent

  • naoyaのはてなダイアリー - MySQL の負荷分散に LVS + keepalived を使う

    あとで書く、と言った手前なので書くとします。 DSASの中の人がすごい勢いで LVS の話を書いてくれてます。この辺。LVS を使うと Linux と箱でロードバランサが作れちゃいます。普通に買ったら数百万とかしちゃうやつ。 DSAS の中のひとに感謝しつつ、いい機会なのでやってみよう! と思っていろいろ試して昨日あたりからはてなの中でも LVS + keepalived で動かしはじめてます。いまのところ問題なし。 そのロードバランサをどこに使ってるかですが、普通ロードバランサというとインターネットからの入り口のところに置いてウェブサーバーの負荷分散に使うイメージがあります。が、今回ははてなでは MySQL のスレーブの手前に置くという役割でとりあえず使いはじめました。 +-----------+ +-----------+ | mod_perl | | mod_perl | +----

    naoyaのはてなダイアリー - MySQL の負荷分散に LVS + keepalived を使う
  • MyISAMからInnoDBへ切り替えるときの注意点

    MySQLを使い始めて間もない人がよく陥る罠の中に、気づくと使ってるストレージエンジンがMyISAMだった!ということがある。デフォルトのストレージエンジンはMyISAMなので、MySQLに詳しくない人たちが比較的陥りやすい罠なのだ。そもそもストレージエンジンという概念自体がMySQL独自のものなので仕方のない話である。MyISAMは素晴らしいストレージエンジン(たとえばこのYahoo!の中の人による投稿で言われているように)であるが、長所もあれば短所もある。例えば、 トランザクション対応ではない。 クラッシュセーフではない。 更新と参照が入り乱れた場合の同時実行性能がよくない。 テーブルが大きく(数億行とか)なるとINSERTの性能が劣化する。 などなど。特に前者の2つが問題で、アトミックな操作が必要なところでロジックを実装出来なかったり、サーバがクラッシュした時にデータがお亡くなりにな

    MyISAMからInnoDBへ切り替えるときの注意点
  • 「はてな流大規模データ処理」を見てきた - もぎゃろぐ

    KOF2008:関西オープンソース2008というイベントに来ています。 はてなの伊藤さんの講演があったので、講演メモを公開。 #ボクがメモした内容であって、100%言ったとおりに書いてあるわけじゃないので、参考としてご覧ください。 (続き) アジェンダ 大規模なデータ OSのキャッシュ MySQLの運用 大規模データアプリケーションの開発 データの例 はてなブックマークのデータ量:五千万件くらいのデータ量 このデータに対して何百万人がアクセスしてくる状況でどういう作りにするか レコード数 1073万エントリー 3134万エントリー 4143万タグ データサイズ エントリー2.5GB 何の工夫もなく普通にアクセスすると...200秒待っても結果が帰ってこない 大規模データの難しいところ 開発サーバで開発者が作っている時は快適に動いていても、多数の人間がアク

  • フリーで使えるDBのモデリングツールまとめ

    みなさんは普段モデリングツールを使用しているでしょうか。ER図を書くのにどんなソフトを使用しているでしょうか。今回は無償で利用可能なモデリングツールについて色々と調べてみました。

    フリーで使えるDBのモデリングツールまとめ
    bukemu
    bukemu 2008/04/02
  • i-revo お客様サポート 重要なお知らせ

    i-revo お客様サポート 重要なお知らせ i-revoマイポータル終了のお知らせ(2017年3月31日) 日頃よりi-revoマイポータルをご愛顧いただき誠にありがとうございます。 このたび、当サイトは2017年3月31日付けにてサービスを終了いたしました。 併せて「プニマル」、「i-revo 占い」についてもサービスを終了いたしました。 2006年3月のサービス開始以来、 お客様および関係各社の皆様にはさまざまに、ご協力をいただきました。 ここに御礼申し上げます。 i-revoマイポータルのサービス終了につきまして、なにとぞご理解いただきたく存じます。 今後とも「i-revo」をよろしくお願い申し上げます。 全て見る

  • MySQL、新ストレージエンジンMaria投入 - InnoDBは? | エンタープライズ | マイコミジャーナル

    CTO at MySQL, Founder and original developer of MySQL, Michael Widenius氏は27日(米国時間)、自身のブログにおいてMySQLの新しいデータベースエンジンMariaを公表した。MariaはGuilhem氏、Sanja氏、Sergei氏、Widenius氏によって2年間にわたって取り組まれた新しいストレージエンジン。ただしフルタイムで開発が実施されたのは直前の4ヵ月間だとされている。 今回公表されたMaria 1.0系はbitkeeper経由で公開されている。バイナリでの配布は時期をみて実施されるようだ。1.0はクオリティ向上を主目的としたブランチで、開発者にはMaria 1.0を試してバグを報告してほしいと報告されている。 MySQLは複数のデータベースエンジンを使える。今回公開されたMariaはストレージエンジンとして

  • 特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro

    「データベースはブラックボックス。どんなSQL文を投げたらどんな結果が返ってくるかさえ知っていればよい」---そう思っている人も多いかもしれません。 しかし,物のソフトウエア・エンジニアを目指すのであれば,データベースが動く仕組みを学ぶことは避けて通れません。パフォーマンスなどに問題が生じたときどこから手を付けていいのか皆目見当がつかない,といった事態に陥りかねません。 市販のRDBMSの内部はかなり複雑ですが,基的な部分を理解するのはそれほど難しくありません。この特集でデータベースの動く仕組みを理解してください。 イントロ ●ブラックボックスのままでいいの? 基礎から理解するデータベースのしくみ(1) Part1 ●SQL文はどのように実行されるのか 基礎から理解するデータベースのしくみ(2) 基礎から理解するデータベースのしくみ(3) 基礎から理解するデータベースのしくみ(4) 基

    特集:基礎から理解するデータベースのしくみ - 特集:基礎から理解するデータベースのしくみ:ITpro
  • _ [Rails] とりあえずDB分割するだけなら驚くほど簡単だった件 - Don'tStopMusic(2007-10-31)

    _ [Ruby] Ruby の新ロゴ Ruby Associationは2007年10月29日、Ruby公式ロゴ選定コンテスト「Rubyロゴコンテスト」の結果を発表した。Rubyの公式ロゴにはTom Schaub氏の作品が採用された。 Rubyの公式ロゴ決定! | エンタープライズ | マイコミジャーナル 公式ロゴが決定しました。おなじみのルビーを使っているせいか、そんなに代わり映えしないような。 まつもとさんが [ruby-list:44161]Ruby公式ロゴコンテスト結果発表 で選考基準を述べていますが、それぞれうなずける理由です。 興味深いと思ったのが、『「かわいい」ものは除く』という項。「エンタープライズ」という言葉も囁かれ始めている今日この頃、Rubyもそろそろ大人として扱われるようにという親心なのかもしれませんね。 _ [Ruby] 第二回Ruby認定試験を受ける予定 研

    bukemu
    bukemu 2007/11/02
  • 最短かつ最速にアクセスする「DB高速化技術」(前編):ITpro

    ポイント ・高度なインデックスやジョインを利用し,最短経路でデータにアクセス ・メモリー不足を自律的に解消し,キャッシュのヒット率を高める ・インメモリーDBは全データをメモリーで処理し,高速化を図る 目的地に早く到着したいなら,最短の経路を最速で行けばよい。これはデータベース(DB)でも同様だ(図1)。インデックスなどを使ってデータへの最短経路を見つけ,メモリー・アクセスを増やして,最速でたどり着く。DBにはそんな技術が詰まっている。 図1●データベース高速化技術のポイント ビットマップ・インデックスなどを使い、データにたどり着く最短の道を選ぶ。また、できるだけメモリーにデータをキャッシュさせておくことで、アクセスのスピードを上げる、という二つのポイントがある [画像のクリックで拡大表示] 以下では,(1)データにたどり着く最短の道を選ぶ仕組みと,(2)アクセスのスピードを上げる仕組みの

    最短かつ最速にアクセスする「DB高速化技術」(前編):ITpro
    bukemu
    bukemu 2007/09/13
  • MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」

    サーバのチューニングをする上でかなりやっかいなのがデータベース系。特にログファイルの量が膨大になると後から中身を見て問題を分析するのも一苦労という場合が。そんなときにこのMySQLtopコマンド「mytop」を使えば一体何が起きているのかがすぐにわかるので問題点の把握が容易になります。ベンチマークするときに併用すればかなり効率が良くなるのではないかと。 インストールと使い方は以下の通り。 まずは「mytop」から。以下が公式サイト。 mytop - a top clone for MySQL http://jeremy.zawodny.com/mysql/mytop/ マニュアルは以下にあります。 mytop - display MySQL server performance info like `top' インストールするにはSSHなどを使ってrootでログイン後、wgetでファイル

    MySQLの状態がリアルタイムでわかるMySQL用topコマンド「mytop」と「innotop」
  • MySQLノウハウ

    いろいろなからメモってきたメモのメモ。出典を書いておくのを忘れた。思い出し次第補完するかも。 deleteのコストは高いので、無効化を示すフィールドを作ってupdateすべき slow query logに要注意 多くのエントリでほとんどのフィールドが同じ値を持つ場合はインデックスの効果が小さい →複合インデックスの効果が大きい 複合インデックスは指定の順番が大切。AとBという指定の場合、A単独でもインデックスの効果がある。逆は真でない。 インデックスが使われる場面は フィールド値を定数と比較するとき (where name = 'hogehoge') フィールド値でJOINするとき (where a.name = b.name) フィールド値の範囲を求めるとき (<,>,between) LIKE句が文字列から始まるとき (where name like 'hoge%') min(),

  • http://takusato.net/article/bdb_oboegaki.html

    bukemu
    bukemu 2007/07/11
  • perlによる大規模データの取扱い

    ページでは,perlでどのようにして大規模なデータを保存するかついて 説明します.主にスタンドアロンで動くもの (クライアント<->サーバ型 でない,いわゆる組込み型) について紹介したいと思います. Menu Berkeley DB BerkeleyDB DB_File SDBM SDBM_File GDBM GDBM_File CDB CDB_File QDBM Depot Curia Villa TDB TDB_File SQLight DBD::SQLite SUFFIX ARRAY SUFARY SARY 複雑なデータ構造 Data::Dumper Storable MLDBM いろいろな比較 ファイルサイズ Benchmark Link サンプルデータについて Berkeley DB Berkeley DBは,組み込み向けデータベースです.通常データベースという とOracl

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

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

    「MySQL,PostgreSQLとFirebirdの性能をユーザー会メンバーが徹底比較,判明...
  • ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    ウノウラボ Unoh Labs: MySQL5からのインデックス結合で1テーブル複数インデックスを使う
  • データベースで大文字と小文字の区別に注意を - sanonosa システム管理コラム集

    経験豊富なシステム管理者であれば過去にきっと1度は経験するトラブルの一つに「DBで大文字と小文字の区別をしてくれない」というものがあります。これに関連するトラブルでよくあるのは「ユーザ登録時にUSERというユーザ名でアカウントを作ったはずなのにuserでもログインできてしまう」というものがあります。予めその現象をシステム管理者が知っていれば仕様という一言で済みますが、このことを知らなかったらきっと大騒ぎとなることでしょう。 もし大文字と小文字をしっかりと区別したいのであればその解決方法がしっかり用意されています。注:ただしこの辺り実は私はあまり詳しくないのでひょっとしたら間違っている、もしくはそれは昔のことで現在のバージョンでは別の解決方法が必要になっているかもしれないので参考程度に読んでください)。 ・MySQLの場合はカラム型毎に挙動が違っているらしいです。例えばTEXT型は大文字と小

    データベースで大文字と小文字の区別に注意を - sanonosa システム管理コラム集
    bukemu
    bukemu 2007/05/10
  • 「PostgreSQLは遅い」は本当か?:OSSデータベース比較 - CNET Japan

    印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます LAMPやLAPPといった言葉が示しているように、オープンソースソフトウェア(OSS)での代表的なリレーショナルデータベース管理システム(RDBMS)といえば、「MySQL」と「PostgreSQL」だ。この2つのRDBMSは同等であるかのように思われているが、しかしPostgreSQLのユーザー団体「日PostgreSQLユーザ会」で理事長を務める片岡裕生氏によれば、「PostgreSQLはあまり信用されていない」ということがあるそうだ。 「十分にチューニングされたMySQLとチューニングしていないPostgreSQLを比較したり、反対にチューニングされたPostgreSQLとチューニングしていないMySQLを比較したり、あるいは比

    「PostgreSQLは遅い」は本当か?:OSSデータベース比較 - CNET Japan
  • MySQL+Apache+PHPをインストールしよう(1/3) ― @IT

    PHPMySQL はじめに、PHP(Personal Home Page tool)について簡単に紹介します(注)。ご存じのように、PHPはWebアプリケーションの定番として定着しています。また、Strutsのような大規模開発向けフレームワークがもてはやされる一方で、PHPをはじめPerlRubyPythonといったスクリプト系言語に代表される「Lightweight Language」が手軽さと機能の豊富さから近年再注目されています。特にDBやWebとの相性がいいPHPは、初歩的なWebアプリケーションから格的な用途まで幅広く利用されています。 PHP 4.1まではおおむね順調にリリースされていたのですが、PHP 4.2で「register_globals問題」が大きく取りざたされました(コラム1)。ちなみに、快速MySQLでデータベースアプリ!の第5、6回で紹介しているPHP

    MySQL+Apache+PHPをインストールしよう(1/3) ― @IT