image

  • フォト Amazonギフト券
    ※この時計の時刻は、閲覧しているパソコンのものであり、必ずしも正確な時間とは限りません

検索

最近のトラックバック

無料ブログはココログ

« ピックアップ:Sudoku 100,000,000 数独マニアへ、市場調査をしない Apple のビジョン, etc... | トップページ | ピックアップ:Wii販売数が半減以下に, 携帯電話に Scala を活用する, etc... »

2009-08-01

sqlitel3 から mysql5 に変更したら

sqlite3 での DB 作成時間、検索時間は使用に耐えないので、
利用する DB を sqlite3 から mydql5 に変えてみた。

 DataMapper.setup(:default, "sqlite3://#{File.dirname(File.expand_path(__FILE__))}/db.sqlite3")

    DataMapper.setup(:default, "mysql://root:root@localhost/dm_test")
に変更するだけ。
ただし、  コンソールから Database を作成しておく必要がある。
    $ mysql -u root -p
    > create database dm_test;
    > quit

しかし、走らせるといくつかエラーが発生した。

その1:
======
$ ruby XbrlDatamap.rb file init

  Incorrect date value: '-4712-01-01' for column 'period_instant'  のエラーが出た。
対処:
  Date.new => Date.today
に変更。
Date 値に対するチェックが sqlite3 は甘いみたいだ。

その2:
======
$ ruby sample00.rb -i /Users/youichikato/work/www/EDGAR/data/*/*/*-*[0-9].xml

   Data too long for column 'val' at row 1 (MysqlError) のエラーがでた。
対処:
fact の DataMap 定義
  property :val, Text
  =>
  property :val, String, :length => 4096
デフォルトの文字列の長さの扱いが sqlite3 と mysql では異なってる?

上記変更後の DB 作成は
364.710000   9.420000 374.130000 (465.242776)
約 8 分!
sqlite3 の 25 倍の速さ!

NetIncomeLoss 科目の検索も
  2.040000   0.040000   2.080000 (  2.368310)
と 2 秒程度で、sqlite3 の 8 倍の速さ!

変更したソースコードは 以下に commit 済み。
http://sourceforge.jp/projects/ruby-xbrl/svn/view/trunk/Edinet/tools/datamap/?root=ruby-xbrl

つぎは、この検索機能を sinatra で web アプリに仕立てる予定。
(jruby でも動作するようにするのは、その後だな...)

« ピックアップ:Sudoku 100,000,000 数独マニアへ、市場調査をしない Apple のビジョン, etc... | トップページ | ピックアップ:Wii販売数が半減以下に, 携帯電話に Scala を活用する, etc... »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/184434/45797977

この記事へのトラックバック一覧です: sqlitel3 から mysql5 に変更したら:

» 数独DS [数独DS]
数独DSの最新動画や評価レビュー、攻略情報なら「数独DS」へ! [続きを読む]

« ピックアップ:Sudoku 100,000,000 数独マニアへ、市場調査をしない Apple のビジョン, etc... | トップページ | ピックアップ:Wii販売数が半減以下に, 携帯電話に Scala を活用する, etc... »

mokuji

2013年12月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

google

  • twitter
  • __
  • _
    Googleボットチェッカー

合わせて読む

  • 合わせて読む
    フィードメーター - katoy: cocolog あわせて読みたい

リンク