Submit Search
既存システムへの新技術活用法 ~fluntd/MongoDB~
4 likes
2,047 views
じゅん なかざ
社内にfluentd導入時の調査内容メモ 最後のmongodbの説明は完全に蛇足感w
Technology
Read more
1 of 35
Download now
Downloaded 34 times
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
32
33
34
35
More Related Content
PDF
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
Insight Technology, Inc.
PDF
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
Insight Technology, Inc.
PDF
PHP開発者のためのNoSQL入門
じゅん なかざ
PDF
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo!デベロッパーネットワーク
PDF
[db tech showcase Tokyo 2014] L32: Apache Cassandraに注目!!(IoT, Bigdata、NoSQLのバ...
Insight Technology, Inc.
PDF
[db tech showcase Tokyo 2017] D15: ビッグデータ x 機械学習の高速分析をVerticaで実現!by ヒューレット・パッ...
Insight Technology, Inc.
PDF
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
Insight Technology, Inc.
PDF
MySQL Cluster 新機能解説 7.5 and beyond
Mikiya Okuno
[db tech showcase Tokyo 2017] E26: 窓は開かれた! SQL Server on Linux で拡がる可能性 by 日本マ...
Insight Technology, Inc.
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
Insight Technology, Inc.
PHP開発者のためのNoSQL入門
じゅん なかざ
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
Yahoo!デベロッパーネットワーク
[db tech showcase Tokyo 2014] L32: Apache Cassandraに注目!!(IoT, Bigdata、NoSQLのバ...
Insight Technology, Inc.
[db tech showcase Tokyo 2017] D15: ビッグデータ x 機械学習の高速分析をVerticaで実現!by ヒューレット・パッ...
Insight Technology, Inc.
[db tech showcase Tokyo 2017] E34: データベース・サービスを好きなところで動かそう Db2 Warehouse by 日...
Insight Technology, Inc.
MySQL Cluster 新機能解説 7.5 and beyond
Mikiya Okuno
What's hot
(20)
PDF
Data Scientists Love SQL Server
Tomoyuki Oota
PDF
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
PDF
Windows Server 2016 Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
PDF
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Colin Charles
PDF
MongoDBご紹介:事例紹介もあり
ippei_suzuki
PDF
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
PDF
Managed Instance チートシート
Masayuki Ozawa
PPTX
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
Ryusuke Kajiyama
PDF
これからLDAPを始めるなら 「389-ds」を使ってみよう
Nobuyuki Sasaki
PDF
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
Insight Technology, Inc.
PDF
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
Ryusuke Kajiyama
PDF
今さら聞けない! Windows Server 2012 R2 Active Directory入門【グローバルナレッジ無料セミナー資料】
Trainocate Japan, Ltd.
PDF
Cloud Foundry: Open Platform as a Service
Shunsuke Kurumatani
PDF
About NoSQL
hideaki honda
PDF
Windows File Service 総復習-Windows Server 2012 R2編 第1版
junichi anno
PPTX
Qlik Replicate - 双方向レプリケーション(Bidirectional Replication)の利用
QlikPresalesJapan
PDF
今さら聞けない!Windows Server 2016Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
PDF
20160929 inno db_fts_jp
yoyamasaki
PDF
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
Insight Technology, Inc.
PPTX
[db tech showcase 2017 Tokyo] D31 - MySQL 8.0の日本語キャラクタ・セットと文字照合
Ryusuke Kajiyama
Data Scientists Love SQL Server
Tomoyuki Oota
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
Windows Server 2016 Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Colin Charles
MongoDBご紹介:事例紹介もあり
ippei_suzuki
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
Managed Instance チートシート
Masayuki Ozawa
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
Ryusuke Kajiyama
これからLDAPを始めるなら 「389-ds」を使ってみよう
Nobuyuki Sasaki
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
Insight Technology, Inc.
MySQLのNoSQL機能 - MySQL JSON & HTTP Plugin for MySQL
Ryusuke Kajiyama
今さら聞けない! Windows Server 2012 R2 Active Directory入門【グローバルナレッジ無料セミナー資料】
Trainocate Japan, Ltd.
Cloud Foundry: Open Platform as a Service
Shunsuke Kurumatani
About NoSQL
hideaki honda
Windows File Service 総復習-Windows Server 2012 R2編 第1版
junichi anno
Qlik Replicate - 双方向レプリケーション(Bidirectional Replication)の利用
QlikPresalesJapan
今さら聞けない!Windows Server 2016Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
20160929 inno db_fts_jp
yoyamasaki
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ...
Insight Technology, Inc.
[db tech showcase 2017 Tokyo] D31 - MySQL 8.0の日本語キャラクタ・セットと文字照合
Ryusuke Kajiyama
Ad
Viewers also liked
(6)
PPT
セキュアなサーバを構築しよう(CentOS 5.xまで対応)
Kensuke Nezu
PDF
Fluentd v0.12 master guide
N Masahiro
PPTX
Fluentd+elasticsearch+kibana(fluentd編)
Daisuke Kikuchi
PPTX
それFluentdで! #fluentd
Atsuko Shibuya
PDF
「コトナス」:出会わなくても良いアプリ『Match★Contact』
cotonas_en
PDF
fluentd を利用した大規模ウェブサービスのロギング
Yuichi Tateno
セキュアなサーバを構築しよう(CentOS 5.xまで対応)
Kensuke Nezu
Fluentd v0.12 master guide
N Masahiro
Fluentd+elasticsearch+kibana(fluentd編)
Daisuke Kikuchi
それFluentdで! #fluentd
Atsuko Shibuya
「コトナス」:出会わなくても良いアプリ『Match★Contact』
cotonas_en
fluentd を利用した大規模ウェブサービスのロギング
Yuichi Tateno
Ad
Similar to 既存システムへの新技術活用法 ~fluntd/MongoDB~
(20)
PDF
Fluentd casual
oranie Narut
PDF
Guide to Cassandra for Production Deployments
smdkk
PDF
OSSで支えられるライブドアの巨大ログ集計 #nhntech
SATOSHI TAGOMORI
PDF
社内向けTech Talk資料~Fluentdの基本紹介~
Daisuke Ikeda
PDF
BPStudy20121221
Shinichiro Takezaki
PDF
MongoDB2.2の新機能
Shoken Fujisaki
PPTX
[デブサミ秋2015] 新卒入社エンジニアが2年間fluentdを運用して学んだ事いろいろ
gree_tech
PDF
Fluentとmongoで作るサービス
直也 堀松
PDF
TokyoWebminig カジュアルなHadoop
Teruo Kawasaki
PDF
社会ネットワーク分析第7回
Satoru Mikami
KEY
Webサーバ勉強会 LT資料
学 松崎
PDF
Mongodb 紹介
Ryo Matsumura
PDF
Fluentd in #tkrk10
SATOSHI TAGOMORI
PDF
Elasticsearch入門 pyfes 201207
Jun Ohtani
PDF
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
Takahiro Inoue
PPTX
Fluentd+MongoDB+Groovy
Daisuke Ando
PDF
Hadoopによるリクルートでの技術調査とその活用
Chiaki Hatanaka
PDF
Big Data入門に見せかけたFluentd入門
Keisuke Takahashi
PDF
Facebookのリアルタイム Big Data 処理
maruyama097
KEY
ソーシャルゲームログ解析基盤のMongoDB活用事例
知教 本間
Fluentd casual
oranie Narut
Guide to Cassandra for Production Deployments
smdkk
OSSで支えられるライブドアの巨大ログ集計 #nhntech
SATOSHI TAGOMORI
社内向けTech Talk資料~Fluentdの基本紹介~
Daisuke Ikeda
BPStudy20121221
Shinichiro Takezaki
MongoDB2.2の新機能
Shoken Fujisaki
[デブサミ秋2015] 新卒入社エンジニアが2年間fluentdを運用して学んだ事いろいろ
gree_tech
Fluentとmongoで作るサービス
直也 堀松
TokyoWebminig カジュアルなHadoop
Teruo Kawasaki
社会ネットワーク分析第7回
Satoru Mikami
Webサーバ勉強会 LT資料
学 松崎
Mongodb 紹介
Ryo Matsumura
Fluentd in #tkrk10
SATOSHI TAGOMORI
Elasticsearch入門 pyfes 201207
Jun Ohtani
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
Takahiro Inoue
Fluentd+MongoDB+Groovy
Daisuke Ando
Hadoopによるリクルートでの技術調査とその活用
Chiaki Hatanaka
Big Data入門に見せかけたFluentd入門
Keisuke Takahashi
Facebookのリアルタイム Big Data 処理
maruyama097
ソーシャルゲームログ解析基盤のMongoDB活用事例
知教 本間
既存システムへの新技術活用法 ~fluntd/MongoDB~
1.
既存システムへの新技術活用法 ~fluntd/MongoDB~
株式会社シーエー・アドバンス 技術推進グループ 仲里 淳矢 Copyright © CA ADvance .inc 2012
2.
自己紹介 •株式会社シーエー・アドバンスの仲里です。(エンジニア歴4年目) •技術推進グループに所属してます。 •沖縄高専卒です。 •開発環境は主にvim使ってます。 •主な業務内容 •
PHPによる社内管理画面開発(SEM系、GoogleAdwords等) • 社内のインフラ整備 •CentOS6上で動く、ApacheとかMySQLの保守 • NoSQL推進 •MongoDB導入 •社内の既存システムのNoSQL対応(パフォーマンスUpのため) •KyotoCabinet導入 • Fluentdの導入 2 Copyright © CA ADvance .inc 2012
3.
アジェンダ ①はじめに ②fluentd
③fluentd導入事例 ④MongoDB 3 Copyright © CA ADvance .inc 2012
4.
①はじめに
4 Copyright © CA ADvance .inc 2012
5.
背景 •なぜ、我々は社内にfluentdを導入したのか •ファイルに書き込んだログの目視確認をどうに
かしたい(不具合発生時) #tail,grepはもう嫌だ>_< •ログ解析の簡易化を図りたい •そもそも、レガシーなログ取込をどうにかしたい •DBに残すようにすればいいのでは、どうする? 5 Copyright © CA ADvance .inc 2012
6.
背景 そうだ、fluentd をいれよう!
6 Copyright © CA ADvance .inc 2012
7.
①fluentd
7 Copyright © CA ADvance .inc 2012
8.
fluentdとは •一言で言うと、ログ取込デーモン •JSON形式で、いろんなシステムに保存できる!
8 Copyright © CA ADvance .inc 2012
9.
fluentdの特徴 •JSON形式で構造化された状態で保存される •プラグインを利用して、いろんなシステムから、 好きなデータ格納先に保存できる(※下図参照) •安定性が高い プラグイン導入で対応
これもプラグインで buffer { } { } •PHP •File •Ruby •MySQL •Apache •MongoDB [input] 図)ログ取込例 [output] 9 Copyright © CA ADvance .inc 2012
10.
fluentdインストール ※rubyをインストール環境を容易 ・fluentdのインストール # gem install
fluentd ・confの生成 # fluentd –-setup /etc/fluetd 10 Copyright © CA ADvance .inc 2012
11.
fluentdインストール ・confの設定 # vim /etc/fluentd/log_server.conf ・起動 #
fluentd -c /etc/fluentd/log_server.conf 11 Copyright © CA ADvance .inc 2012
12.
fluentd設定ファイル例
12 Copyright © CA ADvance .inc 2012
13.
③fluentd導入事例
13 Copyright © CA ADvance .inc 2012
14.
fluentd導入事例 •複数のWebサーバーから上がってくる、AP側のログ データを、ログファイル吐き出しから、fluentd経由で のMongoDB吐き出しに変えました。 結果、 ログが一箇所にまとまることができた。
⇨不具合発生時に効果を発揮! ログ表示画面を作成 ⇨データ確認や、ユーザーの追跡が容易に! 14 Copyright © CA ADvance .inc 2012
15.
fluentd構成イメージ •社内インフラの構成
web01 PHP fluentd MongoDB web02 PHP fluentd 15 Copyright © CA ADvance .inc 2012
16.
fluentdまとめ •複数のログデータを一元管理 •ログの出先を変えたくなったら、設定ファイルを
変えるだけで対応可能 •言語が違っても向け先を統一できる •IN{PHP, Ruby, Apache, etc} •OUT{MySQL, MongoDB, Cassandra, Growl, tail, etc} 16 Copyright © CA ADvance .inc 2012
17.
fluentdまとめ •fluentdがバッファを貯めこむ仕組みを保持してい るため、出力先が落ちてても、ログを貯めこむことが 可能。なので、
安定性が高い! 17 Copyright © CA ADvance .inc 2012
18.
というわけでみんな
を入れてみよう! 18 Copyright © CA ADvance .inc 2012
19.
④MongoDB
19 Copyright © CA ADvance .inc 2012
20.
はじめに(背景) •社内システムへのfulentd導入にあたり、ログデータ の出力先をMongoDBにしました。 •今回、MongoDBを取り入れた理由として、(小規模 な)MongoDBの運用を行い、フローを確立した上で、 開発陣のナレッジとして、知識共有し、戦力にできる か見極めるためです。
20 Copyright © CA ADvance .inc 2012
21.
はじめに(背景) •その、MongoDBの導入にあたり、自分が調査した 内容について、スライドにまとめてみました。
21 Copyright © CA ADvance .inc 2012
22.
MonoDB とは • MongoDB
は、高パフォーマンス、スキーマレス、オープン ソースのドキュメント指向データベースである。 • MongoDB は、BSONというJSONのバイナリ版のような 形式でドキュメントを表現し、そのコレクションを管理す る。この形式は、複雑な階層を持たせることができ、な おかつクエリやインデックスが容易である。 MongoDB – Wikipedia http://ja.wikipedia.org/wiki/MongoDB 22 Copyright © CA ADvance .inc 2012
23.
MonoDB の特徴 •
高可用性 • スレーブが死んでも自動で切り離しできる • レプリカ機能 • 新しいノード接続時、自動でデータの同期もしてくれる! • スキーマレス • あとでカラムが自由に増やせる。つまり、柔軟に対応可! ※バグ出ても気づきにくい 23 Copyright © CA ADvance .inc 2012
24.
MonoDB の特徴 • インデックスのサポート
(複数インデックス可) • オート・シャーディング(スケールアウト) • Map Reduce(集計処理) • GridFS(ファイル格納システム) 24 Copyright © CA ADvance .inc 2012
25.
データ構造 •
データ格納例 DataBase→Collection→Key→Row→Value ※MySQLとほぼ一緒 25 Copyright © CA ADvance .inc 2012
26.
データ構造 •
MySQLで例えると、 Collection ≒ Table 26 Copyright © CA ADvance .inc 2012
27.
使い方(CLI) #データ検索 > db.users.find({},
{a:1,b:1}) #データ登録 > db.users.insert({a:1,b:1}) #データ削除 > db.things.remove({_id: myobject._id}); 27 Copyright © CA ADvance .inc 2012
28.
SQL と MongoDB
の比較 SQL Mongo クエリ言語 CREATE TABLE USERS (a Number, b Number) 暗黙的に行われます INSERT INTO USERS VALUES(1,1) db.users.insert({a:1,b:1}) db.users.find({}, {a:1,b:1}) SELECT a,b FROM users SELECT * FROM users db.users.find() SELECT * FROM users WHERE age=18 db.users.find({age:18}) SELECT * FROM users WHERE age=18 ORDER BY db.users.find({age:18}).sort({name:1}) name SELECT * FROM users WHERE age>18 db.users.find({'age':{$gt:18}})}) 28 Copyright © CA ADvance .inc 2012
29.
クエリ発行 •インデックスの作成や、コレクションのtruncateもできます! db.users.ensureIndex({user_id:1}); db.users.remove(); •Upsertと機能があって、これが地味に便利そう
•データがあれば、アップデート、なければインサートしてく れるみたい 29 Copyright © CA ADvance .inc 2012
30.
MapReduce • バッチでのデータ処理や集計処理で利用します。 • 基本、入力値として、コレクションを投入し、
出力値として、コレクションへデータを流します。 • 使いドコロとしては、細かいデータをデイリー・マンスリー でまとめたい時、効力を発揮するかも! • Javascriptで組んでMongoDB に流しこむイメージです。 30 Copyright © CA ADvance .inc 2012
31.
サンプルプログラム 1/2
31 Copyright © CA ADvance .inc 2012
32.
サンプルプログラム 2/2
32 Copyright © CA ADvance .inc 2012
33.
サンプルプログラム(出力結果)
33 Copyright © CA ADvance .inc 2012
34.
まとめ • 耐障害性が高く、自動でレプリカへの同期も
やってくれるので、スケールアウトが容易 • スキーマレスでメンテも楽! • 集計したい時は、MapReduceを使おう • MongoDBDateハマりやすい 34 Copyright © CA ADvance .inc 2012
35.
ご清聴ありがとうございました。
35 Copyright © CA ADvance .inc 2012
Download