rabbit-slide-clear-code-mroonga-introduction 2016.12.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.rabbit +1 -0
- data/README.rd +45 -0
- data/Rakefile +61 -0
- data/config.yaml +25 -0
- data/data/search-ja.gnuplot +35 -0
- data/data/search-ja.tsv +5 -0
- data/data/style.gnuplot +29 -0
- data/images/search-mroonga-innodb.pdf +0 -0
- data/mroonga-introduction.rab +44 -0
- data/pdf/mroonga-introduction-mroonga-introduction.pdf +0 -0
- metadata +83 -0
    
        checksums.yaml
    ADDED
    
    | @@ -0,0 +1,7 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            SHA1:
         | 
| 3 | 
            +
              metadata.gz: cf53b21eadf2aecb386e4328996cb48ff30bedf2
         | 
| 4 | 
            +
              data.tar.gz: d35e1e1ee8d4b1d9eb941de319ea48ca7cd74bc4
         | 
| 5 | 
            +
            SHA512:
         | 
| 6 | 
            +
              metadata.gz: 88085f6050f0c85ce5dda43e5a70f7f2639d0f45cf49959880fa81c11f93ea2114146e5ca1d032592ea083cec25047457dd826173610b1bcdb1f4c22e7db96ed
         | 
| 7 | 
            +
              data.tar.gz: ba1a5415600842b69fd4941a23c4c3dc47193bf6b579951b174b1eebf2807e0fdfd477bdb0f13d048355abe4805d3e8b603afed9f5452ebbddb964243baa1fe9
         | 
    
        data/.rabbit
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            mroonga-introduction.rab
         | 
    
        data/README.rd
    ADDED
    
    | @@ -0,0 +1,45 @@ | |
| 1 | 
            +
            = Mroongaの紹介
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            Mroonga紹介用資料。
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            == ライセンス
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            === スライド
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            CC BY-SA 4.0
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            著作者情報は次のどれかを使ってください。
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              * 株式会社クリアコード
         | 
| 14 | 
            +
              * クリアコード
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            === 画像
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            ==== GroongaとMroongaのロゴ
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            CC BY 3.0
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            著作者:Groongaプロジェクト
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            スライドの各ページのヘッダーおよびいくつかのページ中で使用しています。
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            == 作者向け
         | 
| 27 | 
            +
             | 
| 28 | 
            +
            === 表示
         | 
| 29 | 
            +
             | 
| 30 | 
            +
              rake
         | 
| 31 | 
            +
             | 
| 32 | 
            +
            === 公開
         | 
| 33 | 
            +
             | 
| 34 | 
            +
              rake publish
         | 
| 35 | 
            +
             | 
| 36 | 
            +
            == 閲覧者向け
         | 
| 37 | 
            +
             | 
| 38 | 
            +
            === インストール
         | 
| 39 | 
            +
             | 
| 40 | 
            +
              gem install rabbit-slide-clear-code-mroonga-introduction
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            === 表示
         | 
| 43 | 
            +
             | 
| 44 | 
            +
              rabbit rabbit-slide-clear-code-mroonga-introduction.gem
         | 
| 45 | 
            +
             | 
    
        data/Rakefile
    ADDED
    
    | @@ -0,0 +1,61 @@ | |
| 1 | 
            +
            require "rabbit/task/slide"
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # Edit ./config.yaml to customize meta data
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            spec = nil
         | 
| 6 | 
            +
            Rabbit::Task::Slide.new do |task|
         | 
| 7 | 
            +
              spec = task.spec
         | 
| 8 | 
            +
              spec.files += Dir.glob("data/**/*.*")
         | 
| 9 | 
            +
              spec.files += Dir.glob("images/**/*.*")
         | 
| 10 | 
            +
              # spec.files -= Dir.glob("private/**/*.*")
         | 
| 11 | 
            +
              spec.add_runtime_dependency("rabbit-theme-clear-code")
         | 
| 12 | 
            +
            end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            desc "Tag #{spec.version}"
         | 
| 15 | 
            +
            task :tag do
         | 
| 16 | 
            +
              sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
         | 
| 17 | 
            +
              sh("git", "push", "--tags")
         | 
| 18 | 
            +
            end
         | 
| 19 | 
            +
             | 
| 20 | 
            +
             | 
| 21 | 
            +
            key_graphs = []
         | 
| 22 | 
            +
            plots = Pathname.glob("data/**/*.gnuplot")
         | 
| 23 | 
            +
            plots.each do |plot|
         | 
| 24 | 
            +
              output_base_dir = plot.dirname.to_s.gsub(/\Adata/, "images")
         | 
| 25 | 
            +
              loaded_plots = []
         | 
| 26 | 
            +
              graphs = []
         | 
| 27 | 
            +
              data = []
         | 
| 28 | 
            +
             | 
| 29 | 
            +
              plot.open do |plot_file|
         | 
| 30 | 
            +
                plot_file.each_line do |line|
         | 
| 31 | 
            +
                  case line.chomp
         | 
| 32 | 
            +
                  when /\Aload "(.*?)"\z/
         | 
| 33 | 
            +
                    loaded_plots << "#{plot.dirname}/#{$1}"
         | 
| 34 | 
            +
                  when /"(.*?\.tsv)"/
         | 
| 35 | 
            +
                    data << "#{plot.dirname}/#{$1}"
         | 
| 36 | 
            +
                  when /\Aset output "(.*?)"\z/
         | 
| 37 | 
            +
                    graphs << "#{output_base_dir}/#{$1}"
         | 
| 38 | 
            +
                  end
         | 
| 39 | 
            +
                end
         | 
| 40 | 
            +
              end
         | 
| 41 | 
            +
              next if graphs.empty?
         | 
| 42 | 
            +
             | 
| 43 | 
            +
              key_graph = graphs.first
         | 
| 44 | 
            +
              key_graphs << key_graph
         | 
| 45 | 
            +
              file key_graph => [plot.to_s, *loaded_plots, *data] do
         | 
| 46 | 
            +
                cd(plot.dirname) do
         | 
| 47 | 
            +
                  sh("gnuplot", plot.basename.to_s)
         | 
| 48 | 
            +
                end
         | 
| 49 | 
            +
                graphs.each do |graph|
         | 
| 50 | 
            +
                  mkdir_p(File.dirname(graph))
         | 
| 51 | 
            +
                  mv("#{plot.dirname}/#{File.basename(graph)}",
         | 
| 52 | 
            +
                     graph)
         | 
| 53 | 
            +
                end
         | 
| 54 | 
            +
              end
         | 
| 55 | 
            +
            end
         | 
| 56 | 
            +
             | 
| 57 | 
            +
            desc "Generate graphs"
         | 
| 58 | 
            +
            task :graph => key_graphs
         | 
| 59 | 
            +
             | 
| 60 | 
            +
            task :run => :graph
         | 
| 61 | 
            +
            task :pdf => :graph
         | 
    
        data/config.yaml
    ADDED
    
    | @@ -0,0 +1,25 @@ | |
| 1 | 
            +
            ---
         | 
| 2 | 
            +
            id: mroonga-introduction
         | 
| 3 | 
            +
            base_name: mroonga-introduction
         | 
| 4 | 
            +
            tags:
         | 
| 5 | 
            +
            - rabbit
         | 
| 6 | 
            +
            - mroonga
         | 
| 7 | 
            +
            - mysql
         | 
| 8 | 
            +
            - mariadb
         | 
| 9 | 
            +
            presentation_date: 
         | 
| 10 | 
            +
            version: 2016.12.26.0
         | 
| 11 | 
            +
            licenses:
         | 
| 12 | 
            +
            - CC-BY-SA-4.0
         | 
| 13 | 
            +
            - CC-BY-3.0
         | 
| 14 | 
            +
            slideshare_id: 
         | 
| 15 | 
            +
            speaker_deck_id: 
         | 
| 16 | 
            +
            ustream_id: 
         | 
| 17 | 
            +
            vimeo_id: 
         | 
| 18 | 
            +
            youtube_id: 
         | 
| 19 | 
            +
            author:
         | 
| 20 | 
            +
              markup_language: :rd
         | 
| 21 | 
            +
              name: ClearCode
         | 
| 22 | 
            +
              email: rubygems@clear-code.com
         | 
| 23 | 
            +
              rubygems_user: clear-code
         | 
| 24 | 
            +
              slideshare_user: 
         | 
| 25 | 
            +
              speaker_deck_user: 
         | 
| @@ -0,0 +1,35 @@ | |
| 1 | 
            +
            load "style.gnuplot"
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            set datafile missing "NaN"
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            set style data histogram
         | 
| 6 | 
            +
            set style histogram cluster gap 1
         | 
| 7 | 
            +
            set style fill solid border -1
         | 
| 8 | 
            +
            set boxwidth 0.9
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            set bmargin 4
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            set xlabel "クエリー"
         | 
| 13 | 
            +
            set ylabel " 実行時間(秒)\n(短いほど速い)"
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            set label 1 \
         | 
| 16 | 
            +
                      "データ:日本語版Wikipedia" \
         | 
| 17 | 
            +
                      at first -1,380 left
         | 
| 18 | 
            +
            set label 2 \
         | 
| 19 | 
            +
                      "レコード数:約185万" \
         | 
| 20 | 
            +
                      at first -1,330 left
         | 
| 21 | 
            +
            set label 3 \
         | 
| 22 | 
            +
                      "InnoDBはクエリーによっては遅い" \
         | 
| 23 | 
            +
                      textcolor "#ef2929" \
         | 
| 24 | 
            +
                      at first -1,225 left
         | 
| 25 | 
            +
            set label 4 \
         | 
| 26 | 
            +
                      "Mroongaは安定して速い" \
         | 
| 27 | 
            +
                      textcolor "#ef2929" \
         | 
| 28 | 
            +
                      at first -1,25 left
         | 
| 29 | 
            +
            set output "search-mroonga-innodb.pdf"
         | 
| 30 | 
            +
            plot "search-ja.tsv" using 2:xtic(1) \
         | 
| 31 | 
            +
                   title columnheader \
         | 
| 32 | 
            +
                   linestyle 5, \
         | 
| 33 | 
            +
                 "search-ja.tsv" using 6 \
         | 
| 34 | 
            +
                   title columnheader \
         | 
| 35 | 
            +
                   linestyle 1
         | 
    
        data/data/search-ja.tsv
    ADDED
    
    | @@ -0,0 +1,5 @@ | |
| 1 | 
            +
            Query	Mroonga	"N hits(Mroonga)"	"InnoDB ngram"	"N hits(InnoDB ngram)"	"InnoDB MeCab"	"N hits(InnoDB MeCab)"
         | 
| 2 | 
            +
            "PostgreSQL\nOR\nMySQL"	0.02	368	NaN	NaN	0.005	368
         | 
| 3 | 
            +
            データベース	0.09	17180	36	17180	0.03	16108
         | 
| 4 | 
            +
            テレビアニメ	0.1	22954	182	22954	380	33525
         | 
| 5 | 
            +
            日本	0.2	627724	1.2	627724	1.3	568978
         | 
    
        data/data/style.gnuplot
    ADDED
    
    | @@ -0,0 +1,29 @@ | |
| 1 | 
            +
            set terminal pdfcairo enhanced color transparent rounded
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            set key outside center top horizontal reverse Left samplen 2
         | 
| 4 | 
            +
            unset border
         | 
| 5 | 
            +
            set xtics scale 0
         | 
| 6 | 
            +
            set ytics scale 0
         | 
| 7 | 
            +
            set grid ytics linewidth 1 linetype -1
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            set key font "Sans,18"
         | 
| 10 | 
            +
            set title font "Sans,18"
         | 
| 11 | 
            +
            set xlabel font "Sans,18"
         | 
| 12 | 
            +
            set ylabel font "Sans,18"
         | 
| 13 | 
            +
            set label 1 font "Sans,18"
         | 
| 14 | 
            +
            set label 2 font "Sans,18"
         | 
| 15 | 
            +
            set label 3 font "Sans,18"
         | 
| 16 | 
            +
            set label 4 font "Sans,18"
         | 
| 17 | 
            +
            set label 5 font "Sans,18"
         | 
| 18 | 
            +
            set label 6 font "Sans,18"
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            set style line 1 lt 1 lc rgbcolor "#3465a4" lw 2.5 pt 7 ps 1
         | 
| 21 | 
            +
            set style line 2 lt 1 lc rgbcolor "#edd400" lw 2.5 pt 7 ps 1
         | 
| 22 | 
            +
            set style line 3 lt 1 lc rgbcolor "#888a85" lw 2.5 pt 5 ps 1
         | 
| 23 | 
            +
            set style line 4 lt 1 lc rgbcolor "#f57900" lw 2.5 pt 5 ps 1
         | 
| 24 | 
            +
            set style line 5 lt 1 lc rgbcolor "#ad7fa8" lw 2.5 pt 9 ps 1
         | 
| 25 | 
            +
            set style line 6 lt 1 lc rgbcolor "#4e9a06" lw 2.5 pt 9 ps 1
         | 
| 26 | 
            +
            set style line 7 lt 1 lc rgbcolor "#ef2929" lw 2.5 pt 1 ps 1
         | 
| 27 | 
            +
            set style line 8 lt 1 lc rgbcolor "#5c3566" lw 2.5 pt 1 ps 1
         | 
| 28 | 
            +
            set style line 9 lt 1 lc rgbcolor "#c17d11" lw 2.5 pt 3 ps 1
         | 
| 29 | 
            +
            set style line 10 lt 1 lc rgbcolor "#dce775" lw 2.5 pt 3 ps 1
         | 
| Binary file | 
| @@ -0,0 +1,44 @@ | |
| 1 | 
            +
            = Mroongaの紹介
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            : author
         | 
| 4 | 
            +
               クリアコード
         | 
| 5 | 
            +
            : theme
         | 
| 6 | 
            +
               clear-code
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            = MySQLの課題
         | 
| 9 | 
            +
             | 
| 10 | 
            +
              * (('wait'))組込全文検索機能
         | 
| 11 | 
            +
                * 5.6から日本語対応だが遅い
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            (('wait'))
         | 
| 14 | 
            +
            (('tag:center'))
         | 
| 15 | 
            +
            ↓\n
         | 
| 16 | 
            +
            Mroonga:日本語対応で速い
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            = 速度
         | 
| 19 | 
            +
             | 
| 20 | 
            +
              # image
         | 
| 21 | 
            +
              # src = images/search-mroonga-innodb.pdf
         | 
| 22 | 
            +
              # relative_width = 100
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            == スライドプロパティ
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            : enable-title-on-image
         | 
| 27 | 
            +
               false
         | 
| 28 | 
            +
             | 
| 29 | 
            +
            = 速い理由
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            高速な\n
         | 
| 32 | 
            +
            フレーズ検索\n
         | 
| 33 | 
            +
            (('note:フレーズ検索:連続した単語を検索(日本語全文検索では必須)'))\n
         | 
| 34 | 
            +
            (('note:例:「テレビアニメ」=「テレビ」+「アニメ」が連続'))
         | 
| 35 | 
            +
             | 
| 36 | 
            +
            = さらに速い
         | 
| 37 | 
            +
             | 
| 38 | 
            +
              * よく使うSQLを最適化
         | 
| 39 | 
            +
                * (({COUNT(*)}))\n
         | 
| 40 | 
            +
                  →不要な列を読まない
         | 
| 41 | 
            +
                * (({ORDER BY LIMIT}))\n
         | 
| 42 | 
            +
                  →不要な行を読まない
         | 
| 43 | 
            +
              * 更新中も検索性能の劣化がない
         | 
| 44 | 
            +
                * 更新中も検索処理をブロックしない
         | 
| Binary file | 
    
        metadata
    ADDED
    
    | @@ -0,0 +1,83 @@ | |
| 1 | 
            +
            --- !ruby/object:Gem::Specification
         | 
| 2 | 
            +
            name: rabbit-slide-clear-code-mroonga-introduction
         | 
| 3 | 
            +
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            +
              version: 2016.12.26.0
         | 
| 5 | 
            +
            platform: ruby
         | 
| 6 | 
            +
            authors:
         | 
| 7 | 
            +
            - ClearCode
         | 
| 8 | 
            +
            autorequire: 
         | 
| 9 | 
            +
            bindir: bin
         | 
| 10 | 
            +
            cert_chain: []
         | 
| 11 | 
            +
            date: 2016-12-26 00:00:00.000000000 Z
         | 
| 12 | 
            +
            dependencies:
         | 
| 13 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 14 | 
            +
              name: rabbit
         | 
| 15 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 | 
            +
                requirements:
         | 
| 17 | 
            +
                - - ">="
         | 
| 18 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            +
                    version: 2.0.2
         | 
| 20 | 
            +
              type: :runtime
         | 
| 21 | 
            +
              prerelease: false
         | 
| 22 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 | 
            +
                requirements:
         | 
| 24 | 
            +
                - - ">="
         | 
| 25 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            +
                    version: 2.0.2
         | 
| 27 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 28 | 
            +
              name: rabbit-theme-clear-code
         | 
| 29 | 
            +
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 | 
            +
                requirements:
         | 
| 31 | 
            +
                - - ">="
         | 
| 32 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            +
                    version: '0'
         | 
| 34 | 
            +
              type: :runtime
         | 
| 35 | 
            +
              prerelease: false
         | 
| 36 | 
            +
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 | 
            +
                requirements:
         | 
| 38 | 
            +
                - - ">="
         | 
| 39 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            +
                    version: '0'
         | 
| 41 | 
            +
            description: Mroonga紹介用資料。
         | 
| 42 | 
            +
            email:
         | 
| 43 | 
            +
            - rubygems@clear-code.com
         | 
| 44 | 
            +
            executables: []
         | 
| 45 | 
            +
            extensions: []
         | 
| 46 | 
            +
            extra_rdoc_files: []
         | 
| 47 | 
            +
            files:
         | 
| 48 | 
            +
            - ".rabbit"
         | 
| 49 | 
            +
            - README.rd
         | 
| 50 | 
            +
            - Rakefile
         | 
| 51 | 
            +
            - config.yaml
         | 
| 52 | 
            +
            - data/search-ja.gnuplot
         | 
| 53 | 
            +
            - data/search-ja.tsv
         | 
| 54 | 
            +
            - data/style.gnuplot
         | 
| 55 | 
            +
            - images/search-mroonga-innodb.pdf
         | 
| 56 | 
            +
            - mroonga-introduction.rab
         | 
| 57 | 
            +
            - pdf/mroonga-introduction-mroonga-introduction.pdf
         | 
| 58 | 
            +
            homepage: http://slide.rabbit-shocker.org/authors/clear-code/mroonga-introduction/
         | 
| 59 | 
            +
            licenses:
         | 
| 60 | 
            +
            - CC-BY-SA-4.0
         | 
| 61 | 
            +
            - CC-BY-3.0
         | 
| 62 | 
            +
            metadata: {}
         | 
| 63 | 
            +
            post_install_message: 
         | 
| 64 | 
            +
            rdoc_options: []
         | 
| 65 | 
            +
            require_paths:
         | 
| 66 | 
            +
            - lib
         | 
| 67 | 
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 68 | 
            +
              requirements:
         | 
| 69 | 
            +
              - - ">="
         | 
| 70 | 
            +
                - !ruby/object:Gem::Version
         | 
| 71 | 
            +
                  version: '0'
         | 
| 72 | 
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 73 | 
            +
              requirements:
         | 
| 74 | 
            +
              - - ">="
         | 
| 75 | 
            +
                - !ruby/object:Gem::Version
         | 
| 76 | 
            +
                  version: '0'
         | 
| 77 | 
            +
            requirements: []
         | 
| 78 | 
            +
            rubyforge_project: 
         | 
| 79 | 
            +
            rubygems_version: 2.5.2
         | 
| 80 | 
            +
            signing_key: 
         | 
| 81 | 
            +
            specification_version: 4
         | 
| 82 | 
            +
            summary: Mroongaの紹介
         | 
| 83 | 
            +
            test_files: []
         |