Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
yamabiko使ってみました。#TechLunch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Livesense Inc.
PRO
April 21, 2014
Technology
64
0
Share
yamabiko使ってみました。#TechLunch
yamabiko使ってみました。
2014/01/8 (水) 12:00-13:00 @ Livesense TechLunch
発表者:原田 貴義
Livesense Inc.
PRO
April 21, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
50
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
61
27新卒_総合職採用_会社説明資料
livesense
PRO
0
4.8k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
9.3k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
380
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
610
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
64k
Other Decks in Technology
See All in Technology
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
6
1.9k
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
220
コーディングエージェントはTypeScriptの 型エラーをどう自己修正しているのか
melonps
3
270
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
1
140
AI時代に求められる思考のパラダイムシフト
nrinetcom
PRO
0
110
既存プロダクトQAから新規プロダクトQAへ
ryotakahashi
0
170
TypeScriptはどのようにどこまで推論できるのか ─ とにかく as は禁止で
ypresto
1
290
JTCでRedmine利用者2700人を実現した手法 第二部
nobuonakamura
0
150
Geek Woman の育ち方 〜コミュニティとAIと〜
chicaco
0
170
GCASアップデート(202603-202605)
techniczna
0
240
Personal knowledge bases using LLM
lycorptech_jp
PRO
0
120
AWSアップデートから考える継続的な運用改善
toru_kubota
2
330
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
350
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Paper Plane
katiecoart
PRO
1
50k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
200
The Language of Interfaces
destraynor
162
26k
Designing for Performance
lara
611
70k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
350
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
360
Designing for Timeless Needs
cassininazir
1
220
Transcript
yamabikoΛ͞ΘͬͯΈ·ͨ͠ Βͩɹ͔ͨΑ͠
ॳΊʹ yamabiko͕࡞ΒΕͨͷͰࢼ͠ʹͬͯΈ·ͨ͠ɻ
yamabiko໋໊ͷલ y-ken͞Μͱ੮͕ྡͳͷͰϦϦʔεલʹ͕͋Γ·ͨ͠ɻ y-ken > h-taka͞Μ͍͍ͷग़དྷ·ͨ͠ʂ y-ken > ੌ͍ͷग़དྷ·ͨ͠ʂ h-taka <
΄ʔ ͱ͍͏ձΛ΄΅ຖ͍ͯ͠·ͨ͠ɻ (͜ͷ͜ΖԿͷ͜ͱ͔ͩͬ͞ͺΓΘ͔͍ͬͯ·ͤΜɻ)
yamabiko໋໊ͷޙ y-ken͞Μͱ੮͕ྡͳͷͰ y-ken > ໊͍͍લͰ͢Ͷʂʂ y-ken > ໘ന͍ͷ͕ग़དྷ·ͨ͠ʂ h-taka <
΄ʔ ͱ͍͏ձΛ΄΅ຖΓ্͕Γ·ͨ͠ɻ (͜ͷ͜ΖԿͷ͜ͱ͔ͩͬ͞ͺΓΘ͔͍ͬͯ·ͤΜɻ)
yamabiko໋໊ͷޙ y-ken͞Μͱ੮͕ྡͳͷͰ y-ken > ͔ͤͬ͘࡞ͬͨͷͰࣾͷਓʹ৮ͬͯཉ͍͠Ͱ͢ Ͷɻ y-ken > Ͷɻ y-ken
> Ͷ!! h-taka < ... ͱ͍͏͜ͱͰ࢝ʹগ͠৮ͬͯΈ·ͨ͠ɻ
ͱ͍͏͜ͱͰ Yamabiko͞ΜΛΠϯετʔϧͯ͠؆୯ʹࢼ͠·ͨ͠ɻ ͍ͭͰͳͷͰrails͔ΒσʔλΛѻ͑Δςετ͠·ͨ͠ɻ
ຊͷྲྀΕ • Yamabikoશମ૾ • ElasticsearchΠϯετʔϧ • fluent-plugin-mysql-replicatorΠϯετʔϧ • yamabikoΠϯετʔϧ •
replicator_managerςʔϒϧՃ • ͓·͚ʹrails-tire͔Β༻͢Δɻ
શମ૾ ৄͪ͘͜͠Βɻ https://confluence.livesense.jp/pages/viewpage.action?pageId=117455003 MySQL͔ΒElasticsearchͷඇಉظϨϓϦέʔγϣϯΛߦ͏ϛυϧΣΞ
ElasticsearchΠϯετʔϧ Elasticsearchμϯϩʔυ ղౚ͠·͢ɻ ࡉ͔͍ઃఆΛ͠·͢ɻ /etc/init.d/elasticsearch start
Elasticsearch։࢝͠·͢ɻ /etc/init.d/elasticsearch start Starting ElasticSearch... Waiting for ElasticSearch....... running: PID:15742
Elasticsearchؔ࿈ͦͷଞ • Elasticsearch-headΛΠϯετʔϧ͠·͢ɻ
fluent-plugin-mysql-replicatorΠϯετʔϧ sudo gem install fluent-plugin-mysql-replicator sudo /usr/lib64/fluent/ruby/bin/fluent-gem install / fluent-plugin-mysql-replicator
yamabikoΠϯετʔϧ ҎԼͷrpmΛμϯϩʔυ͢Δɻ https://github.com/y-ken/yamabiko/releases/download/2013.12.13/yamabiko- libyaml-0.1.4-1.el6.x86_64.rpm https://github.com/y-ken/yamabiko/releases/download/2013.12.13/ yamabiko-1.1.18-0.el6.x86_64.rpm rpmΛΠϯετʔϧ͢Δɻ sudo yum install
yamabiko-libyaml-0.1.4-1.el6.x86_64.rpm yamabiko-1.1.18-0.el6.x86_64.rpm
yamabikoΠϯετʔϧ Τϥʔ͕ൃੜ͢Δɻ sudo yum install yamabiko-1.1.18-0.el6.x86_64.rpm࣮ߦ࣌ʹҎԼͷΤϥʔ͕ൃੜɻ Error: Package: yamabiko-1.1.18-0.el6.x86_64 (/yamabiko-1.1.18-0.el6.x86_64)
Requires: mysql-devel
yamabikoΠϯετʔϧ Τϥʔ͕ൃੜ͢Δɻ ࢦఆ͢Δύοέʔδ໊͕ҟͳΔͨΊɺrpmΛrebuild͠·ͨ͠ɻ sudo yum install rpmrebuild rpmrebuild -e -p
yamabiko-1.1.18-0.el6.x86_64.rpm > Requires: mysql-devel < Requires: MySQL-devel rebuildͨ͠rpmΛ࠶Πϯετʔϧ্ͯ͠ख͘ग़དྷ·ͨ͠ɻ
replicator_managerςʔϒϧՃ ࠓճMySQLʹYamabikoཧDBͱؔ࿈tableΛ༻͠· ͢ɻ DB: replicator_manager TB: settings : ಉظ͢Δ༰ΛՃ͠·͢ɻ hash_tables
: ಉظ݁Ռ͕Ճ͞Ε·͢ɻ
yamabiko.confͷઃఆมߋ MySQLͷଓઌΛมߋ͠·͢ɻ มߋҎԼͷͱ͓ΓͰ͢ɻ > tag hosts.host.${event}.${primary_key} < tag replicator.${name}.${event}.${primary_key} >
<match replicator.**> < <match hosts.**> ͱ͍͏ײ͡ͰσϞ͠·͢ɻ
͓·͚ʹrails-tire͔Β༻͢Δɻ railsͷमਖ਼(scaffoldΛ༻͍ͯ͠·͢ɻ) model < include Tire::Model::Search < include Tire::Model::Callbacks <
def self.search(params) < লུ < end controller > model.all < model.search(params)
͓·͚ʹrails-tire͔Β༻͢Δɻ Ͱ̎
·ͱΊ ɾෳઃఆ͕ඞཁͳͷͰͳΕΔ·Ͱେมɻ ɾDBςʔϒϧΛෳ༻ग़དྷΔͷͰ֦ு͘͢͠ཧͦ͢͠͏ ɾใ͕ฐࣾconfluenceͷํ͕ଟ͍ɻ ɾಉظ͢Δ͍࣌ؒҹɻ ɾ୯७ʹΠϯετʔϧͯͬͯ͠Έͨͷʹमਖ਼ґཔΛग़͍ͯͨ͠ɻ