タグ

databaseに関するpoppenのブックマーク (31)

  • Spreadsheets API をクラウドなデータベースとして利用する方法

    ジェフリー スカッダーによる GData Python Client Library 拡張 のデモをご覧ください。この拡張は Spreadsheets API をクラウドなデータベースとして利用することを容易にするものです。

    Spreadsheets API をクラウドなデータベースとして利用する方法
  • DBIx::ProfileManager で SQL Profiling | BLOG - DeNA Engineering

    風邪を引きっぱなしで全然治らない山口です。恐らくネット上では zigorou と言うハンドルでご存知の方もいらっしゃるかもしれません。 まずは技術系のネタの第1弾です。 今回は実際にモバゲーオープンプラットフォームで用いている SQL Profiling の方法をご紹介致します。 DBI::Profile について モバゲータウン ではデータベースは MySQL を用いており、サーバーサイドプログラムから管理ツールまでのほとんどが Perl で書かれており、 当然ながら DBI モジュールまたはそれを利用したモジュールを使って DB アクセスをしています。 今回、オープンプラットフォームチームで作った OpenSocial RESTful API ですが、モバゲータウン内のデータベースに大量にアクセスする為に日々どのようなクエリが実行され、どれくらいの実行時間が掛かっているかは常に気になる

    DBIx::ProfileManager で SQL Profiling | BLOG - DeNA Engineering
  • 【データベースのパフォーマンス】1億件近いデータベースに対して分析処理をするのに、個人レベルで最速の処理をしようとすると、どのようなソリューションが適…

    【データベースのパフォーマンス】1億件近いデータベースに対して分析処理をするのに、個人レベルで最速の処理をしようとすると、どのようなソリューションが適切ですか? 1億件(40GB以上)が入っているテーブルに対して、参照及び更新の処理をしようと考えています。 現状、MySQL5.1+SATA HDD(7200rpm)をRAID0+1で構築+Windows XP+3GB memoryの構成で処理しています。 現状、処理を実行すると、相当遅くなります。インデックスが効かない処理もありますので、莫大な時間が掛かります。 多角的に分析したいので、なるべく短時間に1億件の分析が終わると大変助かります。 個人レベル(コストは30万以下、最大でも50万以下)で、もっとも早く処理ができる方法論をアドバイス頂けると大変助かります。 ちなみに、Windows以外ではLinuxとFreeBSDが使えます。 宜しく

  • 徳丸浩の日記 - そろそろSQLエスケープに関して一言いっとくか - SQLのエスケープ再考

    補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブはてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2007年11月26日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 稿ではSQLインジェクション対策として、SQLのエスケープ処理の方法について検討する。 最近SQLインジェクション攻撃が猛威を振るっていることもあり、SQLインジェクションに対する解説記事が増えてきたようだが、対策方法については十分に書かれていないように感じる。非常に稀なケースの対応が不十分だと言っているのではない。ごく基的なことが十分書かれていないと思うのだ。 SQLインジェクション対策には二通りある。バインド機構を使うものと、SQLのエスケープによるものだ。このうち、SQLのエスケープについて、十分

  • MOONGIFT: » Rails製のデータベースフロントエンド「RailsDB」:オープンソースを毎日紹介

    MySQLフロントエンドとして有名なのがphpMyAdminだ。Railsをメインシステムにしておきつつも、このためにPHPをインストールすることも少なくない。だが番環境下ではセキュリティの問題あるので利用が難しい。 そこでRailsで作られたフロントエンドを採用しよう。必要なときだけ立ち上げれば良いし、ApacheにPHPを組み込む必要もなくなる。 今回紹介するオープンソース・ソフトウェアはRailsDBRailsで作られたデータベースフロントエンドだ。 RailsDBMySQLだけでなく、SQLite3やPostgreSQLについても対応しているデータベースフロントエンドだ。現状ではデータの閲覧/編集機能はなく、データ構造の閲覧ができるようになっている。 ドライバは随時変更でき、各種データベースを一元管理できるようになる。実際、RailsのActiveRecordの実力を考える

    MOONGIFT: » Rails製のデータベースフロントエンド「RailsDB」:オープンソースを毎日紹介
  • Introduction to DBIx::MoCo - naoyaのはてなダイアリー

    YAPC::Asia 2008 で OR マッパの DBIx::MoCo について発表しました。DBIx::MoCo は最近のはてなのサービスで利用しているバックエンドのソフトウェアで、Ruby 風のリスト操作や memcached による透過的なキャッシュなどをサポートしています。 http://bloghackers.net/~naoya/ppt/080516introduction_to_dbix_moco.ppt にて発表資料を公開しています。

    Introduction to DBIx::MoCo - naoyaのはてなダイアリー
  • 経産省「ベンチャー企業の経営危機データベース」が面白い ― @IT

    経済産業省が4月30日に公開した「ベンチャー企業の経営危機データベース」が面白い。テクロノジ・ベンチャーにありがちな経営上の失敗が分析されていて、これから事業を起こすことを考えている人は参考にできるだろう。 経営危機データベースは、「ベンチャー企業の多くは、起業して成長していく過程において、同じような失敗やトラブル、ヒヤリとした経験をしている」(経産省)という認識から、ベンチャー企業の「転ばぬ先の杖」として83件の実際に経営危機に陥った事例をインタビュー調査で集めた。事例は業種やその企業の成長ステージ、失敗の原因から検索することができる。 ITエンジニアが関係しそうな「情報通信業」では11件が登録されている。失敗原因で目立つのは優れた技術力を持ちながらも、市場のニーズと合わなかったり、社内の組織体制が整わずに失敗するケースだ。 「エンジニア体質から、技術重視の開発に走り顧客の要望を汲み取る

    経産省「ベンチャー企業の経営危機データベース」が面白い ― @IT
  • Amazon SimpleDBの開発をしたいなら·SimplerDB MOONGIFT

    AmazonSimpleDBは試してみただろうか。スキーマ不要で利用でき、柔軟性の高いデータベースシステムだ。データを簡単にストアして、簡単に取り出すという目的にぴたりとマッチする。Amazon EC2やS3と組み合わせれば、どのようなシステムができるだろうか。 ライブラリからSimplerDBへ接続しているところ そんな大きな可能性を秘めたSimpleDBではあるが、現状ではベータ版とあって、アカウントの取得まで時間を要すること、さらにネットワークが必須であるという点が利用に難色を示している。開発時点で課金されてしまうのも問題だ。だが、それを解決できるのがこのソフトウェアだ。 今回紹介するフリーウェアはSimplerDBRubyで作られたAmazon SimpleDBクローンだ。ソースは公開されているが、ライセンスは明記されていないようなので注意されたい。 SimplerDBはAma

    Amazon SimpleDBの開発をしたいなら·SimplerDB MOONGIFT
  • DBIx::Classでスレーブに接続する - libnitsuji.so

    レプリケーション環境で、更新系クエリはマスター、参照系クエリはスレーブに振り分けるというのはよくあることだと思います。 PerlのO/RマッパーであるDBIx::ClassにはDBIx::Class::Storage::DBI::Replicationというのがあって、これを使うと利用側で接続先を意識することなくクエリを振り分けることができそうです。しかし、どうやら参照系は必ずスレーブへ振り分けてしまうようなので、トランザクションの中ではマスターを参照したいといった場合に対応できないんじゃないかと思いました。 そこで、明示的にスレーブの接続を取得する方法がないかなーと思ったんですが見当たらなかったので書いてみました。 実装するにあたり以下のClass::DBI用に書かれたコードを参考にしてみました。 http://d.hatena.ne.jp/tokuhirom/20060713/1152

    DBIx::Classでスレーブに接続する - libnitsuji.so
  • MOONGIFT: » Hyper Estraier作者による新型DBM「Tokyo Cabinet」:オープンソースを毎日紹介

    枯れた技術は完成度が高いが、だからといって完璧な訳ではない。技術は常に刷新され、磨かれていくべきだ。そのため、他の実装が出てくるのは重要だ。 DBMと言えば、キーと値を持つごくシンプルなデータベースだ。これは昔から存在し、Berkeley DBやQDBMで完成度が高まっている。だが、さらにそれを乗り越えるソフトウェアが生み出されている。 今回書介するオープンソース・ソフトウェアはTokyo Cabinet、日発のDBM実装だ。 Tokyo CabinetはあのHyper Estraierの作者である平林幹雄氏(以下mikio氏)によるソフトウェアで、Hyper Estraierの内部で利用されているQDBMよりも高速に動作するらしい。前方一致や数値の範囲検索、さらにトランザクションも利用できる。 ハッシュは便利だが、実行されるごとになくなってしまうのが不便だ。これをTokyo Cabin

    MOONGIFT: » Hyper Estraier作者による新型DBM「Tokyo Cabinet」:オープンソースを毎日紹介
  • 覚えておきたい!「名寄せ」の基本 - ITpro

    “システムを作成するときには考慮されていなかった観点でデータを使おうとしたとき”に「使えないデータたち」は発生します。しかし,使えないデータだからと言って捨ててしまうことはできないでしょう。なぜなら,そのデータは今まで使っていたデータであり,これからも使うデータだからです。 では,使えないデータを使えるデータにするにはどうすれば良いのでしょうか。その作業は「データ・クレンジング(Data Cleansing)」と呼ばれます。データ・クレンジングに似た言葉として「名寄せ」というものがあります。名寄せはデータ・クレンジングをした結果,データ間の関連性を導き出す行為です。重複データを特定するという観点では,名寄せはデータ・クレンジングの一環です。 この連載は,名寄せ技術について,個人データの例をとりあげて具体的に説明します。データを扱うソフト技術者/開発者にとって,名寄せは必須知識の一つと言って

    覚えておきたい!「名寄せ」の基本 - ITpro
  • ActiveRecord で VIEW を使うときの注意点 - moroの日記

    備忘録。ここでいう VIEW は DBCREATE VIEW AS .. するあれです。ActionPack とは関係ないです。試したのはすべてSQLiteです。 とりあえずけっこう普通に使える。 例えば CREATE VIEW AS calculated_results をすると、CalculatedResult クラスから普通に読める。 `id`問題(後述)は残るので view をさらに include で JOIN しようとすると落ちる `id`カラムがあるのを前提に t.id as t0_id とかいう SQL を発行するのでそんなカラムないよエラーになる。当然といえば当然。 そもそも view の identifier てなんなんだろうなぁ。 実利面だけを考えれば、全レコード NULL のカラムを用意すればよろし。 rake db:schema:dump では抜けない テス

    ActiveRecord で VIEW を使うときの注意点 - moroの日記
  • [RDBMS]区分の扱い - 秋のはぶにっき

    poppen
    poppen 2006/10/22
    > 「boolだったら列でもいいよ。値が3つ以上入るんだったらテーブルとして外に切り出してね」
  • 「コネクションプーリング都市伝説」はほんとに都市伝説?(その3) - 最速配信研究会(@yamaz)

    前回のシリアル/パラレル処理の視点に立ってコネクションプールについて考えてみたい. コネクションプールが遅いとは はてなおやさんが考察しているように 普通にmod_perl でコネクションプールを素直に張るとコネクション数が爆発する. 図にすると図1のような感じで個々のapacheがコネクションを複数持つので,サーバ台数が増えるとコネクション数が飛躍的に増えることがわかると思う. 図1 コネクションが爆発してる様子(正直書くのも大変) コネクション数が増えると単純にコネクションを維持するコストも増えていくので, このあたりが「コネクションプーリング都市伝説」の根拠になっていると思われる. これはこれで全くその通りで間違いない. さて,ここでもうちょっと大きな視点に立って,クライアント<->サーバ間の通信路が 1個の伝送路をパケットによって多重化しているととらえてみたい.そうするとここで シ

    「コネクションプーリング都市伝説」はほんとに都市伝説?(その3) - 最速配信研究会(@yamaz)
  • 最速配信研究会 - 「コネクションプーリング都市伝説」はほんとに都市伝説?(その2

    ずいぶんと間が空いてしまったが, 「コネクションプーリング都市伝説」はほんとに都市伝説?(その1)の続きについて書きたい. まず題に移る前にシリアル処理とパラレル処理の違いについて説明したい. シリアル処理ととパラレル処理 シリアル/パラレル処理というのは複数のタスクがあった場合の処理の方法で シリアル処理 → タスクを一つずつ処理する. パラレル処理 → タスクを並列に処理する という違いがある.一般にタスクの処理時間が一定で共通のボトルネックが 存在する場合,パラレル処理はシリアル処理に比べて遅くなる. 図1と図2は全タスクを処理し終わる時間はどちらも3単位で違いがないように見えるが, 平均処理時間を見てみると図1は2単位が平均処理時間になるのに対して,図2の方は 2+2/3単位が平均処理時間となるので不利になっているのがわかると思う. 実際にはこれに加えてタスクの切り替えのコストが

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

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

    「コネクションプーリング都市伝説」はほんとに都市伝説?(その1) - 最速配信研究会(@yamaz)
  • Using DBDesigner to generate Rails files | Bill Katz

    An occasionally updated repository of thoughts, past work, and links. Topics include programming, web ventures, and writing. dbmodel is a tool to generate Rails files (models, scaffolds) from a free graphic database design tool, DBDesigner 4. You can create tables in DBDesigner, specify table relations, synchronize the model with a MySQL database, and then use dbmodel to automatically generate cod

  • トップページ - DB Designer 4 日本語化サイト

    オープンソースでフリーなER図作成ツール「DBDesigner4」の日語化を試みるサイトトップページ このサイトについて bookmark このサイトはfabForceで公開されているDBモデリングツール「DB Designer 4」の日語化を試みるサイトです。 個人が運営するサイトなので公式なサイトではありません。 「DB Designer 4」はGPLライセンスで公開されているオープンソースソフトウェアです。 「DB Designer 4」についての詳細情報は家サイトをご参照ください。 fabFORCE.net DBDesigner4の特徴 bookmark 直感的なGUIによるERモデル図のモデリング ERモデル図からSQL文(CREATEやDELETE)の自動生成 データベースからリバースエンジニアリングによるERモデル図の生成 データベースとERモデル図の同期化機能 軽快

  • Efficient data transfer through zero copy

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Efficient data transfer through zero copy
  • SQLite Optimization FAQ

    Jim Lyon (jplyon@attglobal.net) 10-Sep-2003 Compiled from sqlite docs, source, and yahoo postings This document is current for SQLite 2.8.6 1. Introduction 1.1. About this FAQ This FAQ is an incomplete summary of my experiences with speed-optimizing an application that uses the SQLite library. It will be of most use to people who are already familiar with using SQLite. Feel free to send any que