タグ

databaseに関するHashのブックマーク (126)

  • フレクトのクラウドBlog: EC2でEBS上のMySQLのデータをバックアップ

    こんにちは。フレクトの大橋です。 ベターホームレシピ(http://bhmb.jp)では、MySQLを会員やレシピデータ用の インスタンスと、Cicindela用のインスタンスを同一のサーバにそれぞれ データをEBSに置いて運用しています。 レプリケーションなど信頼性向上のための施策をしているのですが、 運用上大事なのはバックアップです。 そこで、今日はEBS上のMySQLのデータのスナップショットを 整合性を失わずにバックアップする方法についてベターホームレシピでの 実運用の事例をもとに紹介します。 ■ 題の前に・・・、Amazon RDSについて そもそも直接MySQLをEC2上にインストールしなくても、日々機能が強化されている Amazon RDSを使えばよいのではないか、という考えもあります。はい、その通りです。 特に最近はMulti-AZ機能なども提供され、安心感があります。

    Hash
    Hash 2012/06/29
    XFS freeze & read lock例として
  • AvocadoDB | The universal nosql database

    AvocadoDB is an easy to use mostly memory, high performance, open source db with a unique combination of features like support for graph & geo algorithms.We recently started a new open source project – a nosql database called AvocadoDB. Key features include: Schema-free schemata let you combine the space efficiency of MySQL with the performance power of NoSQL Use AvocadoDB as an application server

    Hash
    Hash 2012/04/24
    AvocadoDBというのが今熱いらしい。sleepy mongoose的なRESTインターフェイスを標準で持ってるそうだ。性能は正直わからん
  • Big Sky :: VimでDBが操作できる vdbi-vim 作った。

    DB操作ツール Emacs DBI を作ってみた - 技術日記@kiwanami このツールの目的は、クロスプラットフォームで便利なDB操作環境を実現することです。 pgAdmin や MySQL Query Browser のようなGUIの良さをCUIで実現してみようとしてみました。すなわち、ぼくのかんがえたさいきょうのDBツールです。ちなみに、このツールにとってEmacsはただの実行環境です。Emacs使わない人でも使うと便利だと思います。 http://d.hatena.ne.jp/kiwanami/20120305/1330939440 VimもーVimもー! って事で作りました。 mattn/vdbi-vim - GitHub Database client for Vim https://github.com/mattn/vdbi-vim Emacs版はepcというRPCプロト

    Big Sky :: VimでDBが操作できる vdbi-vim 作った。
    Hash
    Hash 2012/03/12
    うひょう
  • HBaseの構造 - LunaBiblos

    このCAP定理の考え方からすると、HBaseは一貫性/整合性とネットワーク分断耐性を選択したCP型に分類される。 データ構造 HBaseは主に以下に挙げる要素から構成されている。またこの構造はHBaseだけでなくKVSやカラム指向型DBにおいて良くみられる構造である。 Table Row ColumnFamily ・・・ (Column) Column ・・・ (Label) HBaseは名前のついたTableがあり、そこにRowと呼ばれるRDBMSの「レコード」に相当する形式でデータが保存されている。保存されている各データにはタイムスタンプが伴っており、このタイムスタンプを指定してデータを取得する事も出来る。もしタイムスタンプを指定せずにデータ取得を行った場合は最新の値のタイムスタンプを持つデータが返される。ColumnFamily単位での取得の様に複数の値を取得する場合でも、それぞれ

    Hash
    Hash 2012/01/23
    べんきょう
  • ActiveRecordで行ロックをかける方法

    行ロックとは 行ロックとは、テーブルの同一レコードに対して、複数同時に更新できないように制限する仕組みのことです。 Ruby on RailsのActiveRecordには2種類のロック方法があります。 楽観的ロック(Rails依存) 悲観的ロック(DBMS依存) それぞれの違いや使い方について解説していきたいと思います。 楽観的ロック 楽観的ロックとは、DBMSの機能に頼らずロックバージョンをレコードに保存しておくことで、取得時と変更時にロックバージョンに変更がないか確認し、変更があった場合は例外を発生させる方法です。 ロックするタイミング データ更新時 データを複数同時に取得することができるが、途中で更新されていた場合は、更新できない 仕組み テーブルにlock_versionフィールドを追加する lock_versionが書き換わっていたらActiveRecord::StaleObj

    ActiveRecordで行ロックをかける方法
    Hash
    Hash 2012/01/20
    MongoDB使うとき、DBレベルでトランザクションを使えないという事情もあり、アプリ側でActiveRecordのlock_versionみたいな実装が必要になるんじゃないかという話が出た。
  • 独り言v6 » VoltDB登場 – RDBMSのようでRDBMSではない新システム

    最近また超並列DBのデザインを進めたりRethinkDBの話を書いてみたりとまたRDBMSづいているが、そんなことをしているうちに世の中では実際に並列DBが登場してしまった。 INGRES,POSTGRES,Illustra(と、誰も知らないMariposa)と、RDBMSの世界で革新的な仕事をしているMichael Stonebraker博士。最近何やっているのかと思ったらいつの間にやらH-Storeなる新型のストレージに携わっていて、それがいつの間にかSQL機能をもってVoltDBというプロダクトとしてやってきた。かれこれ40年近く業界の第一線にいることになる。 「NoSQL」を上回る性能を目指す次世代型高速SQLデータベース「VoltDB」登場 などという記事を見てびっくりした次第だ。NoSQL並の性能とRDBMS並のACID準拠、そしてSQL構文が使えるという、これまた夢のようなシ

    Hash
    Hash 2012/01/17
    RDBMSっぽい、けどテーブルの扱いが全然違うのか。
  • DBチューニングではディスクI/O性能を注視する

    DBチューニングにおいて、気を配るべきところは数多くありますが、中でも真っ先に見るべきところはディスクI/Oでしょう。なぜかというと、メモリアクセスに比べてHDDの方が圧倒的に遅く、最もパフォーマンス阻害要因になりやすいためです。ディスクI/Oネックの解決方法を探っていくと、「テーブル/インデックス設計やSQL文の見直し」に行き着くこともまた多いです。これらが不適切だと、結果として大量のレコードをアクセスすることになり、ディスクI/Oが多く発生してしまうためです。根的な原因はディスクI/Oにあります(CPUネックになることもありますが、その例は別の機会に取り上げます)。 ディスクI/Oには大きく分けてシーケンシャルアクセスとランダムアクセスの2種類のアクセスパターンがありますが、RDBMSではインデックスアクセスが主体となるため、ルート→ブランチ→リーフ→実レコードという経路でのランダム

  • ストリーム指向のストレージDrip - @m_seki の

    この章では筆者が最近夢中になっているストリーム指向のストレージ、Dripについて紹介します。Dripはストレージであると同時に、プロセス間を協調のメカニズムでもあります。このくだりを聴いてもRindaとの共通部分が多くあると感じるでしょう。実際にRindaのアプリケーションを書いた経験を元にして書かれました。DripはRindaを置き換えるものではありません。どちらかというとオブジェクトの貯蔵庫であって、オブジェクト指向データベース、Key Value Storeやマルチディメンジョンのリストなど一連のストレージの習作を出発点としました。 Dripとはなにか Dripは追記型のストレージの一種で、Rubyオブジェクトを時系列にログします。Dripにはオブジェクトの追記のみ可能で、削除や更新はできません。dRubyのRMIを考慮した、局所的で安価なブラウズ用APIを用意してあります。オブジェ

    ストリーム指向のストレージDrip - @m_seki の
    Hash
    Hash 2011/09/13
    ほー。おもしろい
  • mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築

    連休中はWiiのマリオカートをやりまくってやっとVR7000越えたmikioです。愛車はマッハ・バイクとインターセプターです。さて今回は、分散ハッシュデータベースサーバTokyo Tyrantでmixiの最終ログイン時刻を管理するようにした時の苦労話を書きます。 ログイン処理は負荷地獄 mixiでは、全てのユーザについて、各々の最終ログイン時刻を管理しています。「マイミクシィ一覧」や「お気に入り」などの画面で、友人が近い時間にログインしていてコミュニケーションがとりやすい状態にあるかどうか確認できるようにするためです。 mixiのほぼ全てのページはログインしないと見られないページなので、ほぼ全てのページにアクセスされるたびにログイン確認が行われます。したがって、最終ログイン時刻はほぼ全てのページにアクセスされる度に更新されることになります。mixiの中で最も重いデータベースのひとつとして「

    mixi Engineers’ Blog » Tokyo Tyrantによる耐高負荷DBの構築
    Hash
    Hash 2011/08/31
    mixiは秒間10000クエリが流れ込む「最終ログイン時刻」をmemcached並に高速+ファイル永続化TokyoTyrantに持たせている。
  • 信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ

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

    信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ
    Hash
    Hash 2011/08/10
    職人と経験則の領域...
  • Query plan - Wikipedia

    Hash
    Hash 2011/07/30
    "実行計画"
  • MogileFSで構築する高速スケーラブルな分散ファイルシステム - builder by ZDNet Japan

    連載「オープンソースソフトウェアでクリエイターを支援するmoonlinx」の第1回「ウェブメディア「moonlinx」を支えるオープンソースソフトウェア」ではmoonlinxの概要およびシステム構成を、第2回の「openSUSEの管理ツール「YaST」で作業を効率化:moonlinxを支えるOSS」では使用OSであるopenSUSEについて簡単に説明しました。 今回は、moonlinxで取り扱うメディアファイル(画像、音楽、動画)の保管方法について説明したいと思います。 分散ファイルシステム「MogileFS」 moonlinxでは、各種メディアファイルの保管に、オープンソースの分散ファイルシステム「MogileFS」を利用しています。 分散ファイルシステムを用いることにより、ファイルシステムを構成するノード群の一部がダウンしても、データを失うことなくシステムとして機能し続け、かつ自動レ

    MogileFSで構築する高速スケーラブルな分散ファイルシステム - builder by ZDNet Japan
    Hash
    Hash 2011/07/15
    MogileFSとな。画像ファイルなどを分散して保存。スケールしやすい。
  • リアルタイム・ランキングを考える | GREE Engineering

    はじめに こんにちは。プラットフォーム開発部のsp1rytusと申します。 先日、私もついに30歳のおっさんになってしまいました。加齢臭が出ないようにがんばります! ランキングって? ランキングは誰でもわかる、何らかの得点をソートして順位位置を決定する凄く簡単でシンプルなものです。しかし、ゲームを扱うコンテンツ・サービスにおいては、得点を通算/日別に順位付けされたものが直ぐに目に入るように、他人と自分を比較する非常に重要な役割を果たしています。そこで、この記事では次の3つ要件を満たすようなランキング・システムの難しさと、それを解決するための一例を簡単に説明させて頂きます。 順位付けはリアルタイムに行い、集計時間を必要としない。 100万件以上の得点データが扱える。 すべてのデータが正しい順位付けで取得できる(線形補完などで順位を概算しない)。 リアルタイムによる正確な順位付けは、データ件数

    リアルタイム・ランキングを考える | GREE Engineering
  • memcachedと“正反対”、Redisが仮想メモリをサポート - @IT

    2010/09/07 KVS(キー・バリュー・ストア)に分類されるオープンソースのRedisの新バージョン、「Redis 2.0.0」が2010年9月5日にリリースされた。Redisはmemcachedと同様にキーと値のペアをメモリ上に保持するKVSの一種だが、3つの際立った特徴がある。1つはハッシュ以外のデータ構造もサポートしていることで、リスト型、集合型、順序付き集合型などのデータ構造が扱え、サーバ側でコレクションに対するpush/pop、コレクション同士のunion/intersection、数値のincr、decrなどの操作がアトミックに行える。バージョン2.0では複数の操作を1つにまとめてアトミックに操作するコマンドも増えている。 もう1つのRedisの特徴は、マスター・スレーブによるレプリケーション設定ができ、リード側のスケールアウトが容易にできること。 そして3つ目の特徴は、

    Hash
    Hash 2011/06/25
    RedisというKVS
  • 10分で理解するMongoDBのパフォーマンス - (゚∀゚)o彡 sasata299's blog

    2010年04月25日00:16 NoSQL MySQL 10分で理解するMongoDBのパフォーマンス MongoDBってスキーマレスなDBで、カラムが決められないような場合に使うと効果的なんだと思うんですが、「そういうデータはハッシュにして、JSON 形式で MySQL に保存すれば良いのでは?」という意見をいただいたので、その場合とのバフォーマンス比較をしてみました。 ※最初は MySQL として innodb でしか評価していなかったため、myisam の結果についても追記しました。(2010/04/25追記) ベンチマーク環境の準備 試した環境としては、MySQL 5.1.45, MongoDB 1.2.4 です。MySQL側はこんな感じ。 mysql> desc blogs; +------------+--------------+------+-----+---------

    Hash
    Hash 2011/06/08
    ささたつさん流石や. からあげだけの男とちゃう
  • Rails3 対応 MongoDB ORM、Mongoid 詳解―インストール - ζ*’ワ’)ζ<ちれすですの!

    まずは、インストールの解説です。 $ gem install mongoid --pre Rails3 対応の最新版は執筆時点で 2.0.0.beta.16 で、ベータ版なので、--pre オプションを使ってインストールします。2.0.0 リリースの際には、--pre を取って下さい。 そして、mongo ドライバー自体のパフォーマンスを上げるために、bson_ext をインストールしましょう。 $ gem install bson_ext bson_ext には、boost が必要です。MongoDB のインストール時にインストールされていると思いますので、問題ないと思います。もし、インストールできなくても動きますので、気にしないで下さい。 Rails 3 でのインストール Rails3 は Bundler を使用しており、必要な Gem を、Gemfile というファイルに書くことにな

    Rails3 対応 MongoDB ORM、Mongoid 詳解―インストール - ζ*’ワ’)ζ<ちれすですの!
    Hash
    Hash 2011/06/03
    設定。
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • 第3回MongoDB勉強会に参加しました #mongotokyo - nokunoの日記

    というわけで、@doryokujinさん主催の第3回MongoDB勉強会に参加してきました。「第3回 MongoDB 勉強会 in Tokyo」 : ATNDMongoDBMongoDBを使ってみたメモ - nokunoの日記 Twitter StreamingのデータをMongoDBに突っ込む - nokunoの日記会場はフューチャーアーキテクトさん。来客スペースが緑に溢れすぎていてびびったw フューチャーには1つ上の研究室の先輩が就職していますが、さすがに休日ということもあり見かけませんでした。 MongoDB全機能解説1 by @doryokujinさんMongoDB全機能解説1 View more presentations from Takahiro InoueMongoDBのチュートリアル的な話。第1回で初めてインストールした程度の経験な私にはありがたい。発表者かつ主催者の@d

    Hash
    Hash 2011/05/15
    全機能解説スライドがとても良い
  • google-refine - Project Hosting on Google Code

    Code Archive Skip to content Google About Google Privacy Terms

  • A5:SQL Mk-2 - フリーの汎用SQL開発ツール/ER図ツール

    A5:SQL Mk-2は複雑化するデータベース開発を支援するために開発されたフリーのSQL開発ツールです。 高機能かつ軽量で、使い方が分かりやすいことを目標に開発されています。 SQLを実行したり、テーブルを編集するほかに、SQLの実行計画を取得したり、ER図を作成したりすることが出来ます。 特徴・機能 OCI接続・直接接続・ADOまたはODBCを介したDBへの接続 Oracle DatabaseはOCI経由の接続・直接接続が出来ます。 PostgreSQLMySQLは直接接続が出来ます。 Microsoft SQL Serverは、OLE DBプロバイダを直接呼び出した接続ができます。 IBM DB2は、ODBCドライバを直接呼び出した接続ができます。 その他のデータベースは、ADOまたはODBCを利用して接続します。 Oracle, PostgreSQL, MySQLは、A5:SQL

    Hash
    Hash 2011/02/03
    テーブル定義のExcel出力、ER図作成機能があるそうな