SlideShare una empresa de Scribd logo
1 de 21
© RecoChoku Co.,Ltd. Proprietary and Confidential
株式会社レコチョク
事業システム推進部 システムアーキテクトグループ
酒井 修平
2017/3/7
Oracle RACからAurora MySQLへの移行
© RecoChoku Co.,Ltd. Proprietary and Confidential
アジェンダ
22017/3/7
クラブレコチョクという会員サービスを
Oracle RACからAurora MySQLへ移行したお話
1. レコチョクとクラブレコチョクについて
2. Auroraを選択した理由
3. どのようにAuroraへ移行したか
4. どのようにAuroraを運用しているか
5. Auroraに期待するところ
© RecoChoku Co.,Ltd. Proprietary and Confidential
自己紹介
32017/3/7
● 名前
- 酒井修平 @darshuheider
● サーバサイドエンジニア
- クラブレコチョク システム担当
● 好きなAWSサービス
- Aurora
- Lambda
● 好きなアーティスト
- レキシ
- 星野源
- Negicco
- アップアップガールズ(仮)
- チャオベッラチンクエッティ
● ポジション
- 2番 セカンド
© RecoChoku Co.,Ltd. Proprietary and Confidential
レコチョクとクラブレコチョクについて
42017/3/7
• レコチョクではどんなサービスを展開しているか?
従来の事業領域(デジタル音源配信)
自社(レコチョク) 協業
従量課金制 定額課金制 従量課金制 定額課金制
新事業領域(より幅広い音楽ソリューションサービスへ)
© RecoChoku Co.,Ltd. Proprietary and Confidential
レコチョクとクラブレコチョクについて
52017/3/7
• システム全体としてはどのような感じか?
– 機能やサービス毎にシステムを構築
• 楽曲検索、決済、会員(クラブレコチョク)、楽曲情報 etc..
– 全てをAWS上に構築
• EC2 : 約1000
• RDS : 約180
• 30以上のAWSサービスを利用
© RecoChoku Co.,Ltd. Proprietary and Confidential
レコチョクとクラブレコチョクについて
62017/3/7
• クラブレコチョクとはどのようなサービスか?
– レコチョクが展開するサービスへ会員機能を提供する
– 主な機能
• 会員登録・ログイン
• 会員の属性情報管理(Myアーティスト登録)
• セッション管理
• 端末管理
© RecoChoku Co.,Ltd. Proprietary and Confidential
レコチョクとクラブレコチョクについて
72017/3/7
• クラブレコチョクとはどのようなサービスか?
– 有効会員数は約1000万
• DB全体のレコード数としては数億レコード
– アクセス数は多いと秒間250リクエストは超える
– 各サービス横断で利用されるので高い可用性が必要
© RecoChoku Co.,Ltd. Proprietary and Confidential
レコチョクとクラブレコチョクについて
82017/3/7
• クラブレコチョクシステム構成図
バッチ
会員システム
分析系システム
東京リージョン
連携システム
APIWEB
ユーザ
Elastic Load Balancer Elastic Load Balancer Elastic Load Balancer
Amazon Route 53
Amazon EC2 Amazon EC2
Amazon EC2
Amazon S3 Amazon Aurora Amazon Aurora
© RecoChoku Co.,Ltd. Proprietary and Confidential
Auroraを選択した理由
92017/3/7
• そもそも会社全体としてどのような課題があったか?
– データ総量の予測が困難になってきた
• 楽曲数の増加、動画やハイレゾ音源の対応
– コストの最適化
• 短期間でのサービス立ち上げ、急激なアクセス増に対応するため多めにイン
フラリソースを保持
– コストの明確化
• サービス、システム毎のインフラコストが把握できていない
© RecoChoku Co.,Ltd. Proprietary and Confidential
Auroraを選択した理由
102017/3/7
• クラブレコチョクはオンプレでどのように運用されていたか?
– DBはOracleでRAC構成
• 2ノード
– 2CPU 4コア
• エンタープライズ・ストレージ
• Oracle EE Partitioning + RAC オプション
• 全コンポーネントの冗長化
– DBAがインフラを運用
• 監視
– コネクション数、表領域、CPU etc..
• バックアップ
© RecoChoku Co.,Ltd. Proprietary and Confidential
Auroraを選択した理由
112017/3/7
• なぜAuroraを選択したのか?
– 高い可用性を担保するため
• 様々なサービスから利用される
• 求められる可用性については同じ
– 定期的にメンテがあるのでサービス調整はしました
– 運用工数を抑えたい
• 運用は開発チームに移管
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraへ移行したか
122017/3/7
• 大きく分けると4つの作業を実施しました
– テーブルを再作成
– SQLの修正
– データの移行
– 性能試験
• DMSなどの移行ツールが一般公開になる前だったので、全て自
前でスクリプト等を作成しました
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraへ移行したか
132017/3/7
• テーブルを再作成
– DDLの作成
• データ型を変更していく。比較的機械的な作業
• アプリ側も適宜修正
– パラメータグループの作成
• DBAから基本的な設定内容について教えてもらう
• デフォルトのトランザクション分離レベルはOracleと違うので注意
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraへ移行したか
142017/3/7
• SQLの修正
– 関数をMySQLで使えるものに変換していく
• MERGE 構文、DECODE 関数、TO_CHAR 関数 etc..
– コメントの修正
• “--” → “--(空白)” もしくは “#”
※基本的には公式ドキュメントとにらめっこしながら対応しました
https://dev.mysql.com/doc/refman/5.6/ja/compatibility.html
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraへ移行したか
152017/3/7
• データの移行
– 更新日を見ながら、過去数年分を一気に移行
• データ量が多かったことと、性能試験を本番相当のデータで実施したかったの
で、1ヶ月前からデータ移行を開始
• DATEやDATETIMEは年を下2桁だけにしてしまうと、1900年代か2000年代を勝
手に変換するので注意(生年月日が未来日の人できてしまうかも。。)
– 移行が完了したら、切り替え当日まで差分を日次で更新
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraへ移行したか
162017/3/7
• 性能試験
– 本番相当のデータを使って運用テスト、負荷テストを実施
• スロークエリをとって性能が出ていないものがないか監視
– 実行計画をとってフルスキャンしているものがないか確認
• 実際には全SQLの実行計画をとれなかったので全て見るべきだったと反省。。
⇒上記で問題のあるものに対し適宜対応を実施
・ SQLの最適化
・ インデックス追加
・ サブクエリをなくして2回SQLを投げるように修正
・ 検索専用のテーブルを追加(後方一致検索に10分以上かかってしまった)
※パラメータの修正は一切行わず
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraを運用しているか
• 最初は何を見ればいいかわからなかった。。
– 元々インフラを管理していた人とかに相談
• 標準的に見るべき項目や閾値を策定してもらう
– CPU、メモリ、クエリ数、コネクション数、スロークエリ、スループット
• ダッシュボードの作成
172017/3/7
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraを運用しているか
• Auroraに合わせた監視内容に変更しました
– CPU使用率が比較的高め
• インスタンスリソースをフルに活用する
– CPU使用率が95%を超えたことがありましたが、正常に動き続けてました。。
– インスタンスリソースによる監視はやめる
• スループットやレイテンシーの監視のみ
182017/3/7
© RecoChoku Co.,Ltd. Proprietary and Confidential
どのようにAuroraを運用しているか
• 結果的にどうだったか?
– Auroraによる障害はこれまで0
• オンプレ時代同様の高い可用性を担保
• メンテナンスによる停止もこれまであったが、ゼロダウンタイムパッチのリリースによ
り解消
– DBサーバ運用に工数をほとんど割かなくてよい
• 本来の開発業務に集中
– 性能は問題なし
• 自分たちの場合は早くなりました!
– ライセンス費用が0
192017/3/7
© RecoChoku Co.,Ltd. Proprietary and Confidential
Auroraに期待するところ
• PostgreSQL互換がほしい
– レコチョクではPostreSQLを使っているシステムも多い
• 移行がもう少し楽になっていた?
• 暗号化されたスナップショットの別リージョンへのコピー
202017/3/7
© RecoChoku Co.,Ltd. Proprietary and Confidential
We’re hiring !
212017/3/7
エンジニアブログ公開中
https://recruit.recochoku.jp/ https://techblog.recochoku.jp/

Más contenido relacionado

La actualidad más candente

[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -
[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -
[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -Shuji Kikuchi
 
Using Amazon Aurora for Enterprise Workloads
Using Amazon Aurora for Enterprise WorkloadsUsing Amazon Aurora for Enterprise Workloads
Using Amazon Aurora for Enterprise WorkloadsAmazon Web Services Japan
 
Aurora新時代の幕開けとDynamoDBの進化
Aurora新時代の幕開けとDynamoDBの進化Aurora新時代の幕開けとDynamoDBの進化
Aurora新時代の幕開けとDynamoDBの進化Classmethod,Inc.
 
AWSでスケールアウト&スケールアップ
AWSでスケールアウト&スケールアップAWSでスケールアウト&スケールアップ
AWSでスケールアウト&スケールアップHiroyasu Suzuki
 
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)Amazon Web Services Japan
 
Amazon Aurora 最新アップデートと日本のお客様の移行事例
Amazon Aurora 最新アップデートと日本のお客様の移行事例Amazon Aurora 最新アップデートと日本のお客様の移行事例
Amazon Aurora 最新アップデートと日本のお客様の移行事例Amazon Web Services Japan
 
オンプレからAuroraへの移行とその効果
オンプレからAuroraへの移行とその効果オンプレからAuroraへの移行とその効果
オンプレからAuroraへの移行とその効果Masato Kataoka
 
エンタープライズワークロードにおけるAmazon Auroraの活用
エンタープライズワークロードにおけるAmazon Auroraの活用エンタープライズワークロードにおけるAmazon Auroraの活用
エンタープライズワークロードにおけるAmazon Auroraの活用Amazon Web Services Japan
 
EC2 Deep Dive at CTO Night&Day 2016
EC2 Deep Dive at CTO Night&Day 2016 EC2 Deep Dive at CTO Night&Day 2016
EC2 Deep Dive at CTO Night&Day 2016 Yasuhiro Matsuo
 
2017年1月のAWSサービスアップデートまとめ
 2017年1月のAWSサービスアップデートまとめ 2017年1月のAWSサービスアップデートまとめ
2017年1月のAWSサービスアップデートまとめAmazon Web Services Japan
 
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化 ~Amazon Aurora 導入事例紹介~
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化  ~Amazon Aurora 導入事例紹介~[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化  ~Amazon Aurora 導入事例紹介~
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化 ~Amazon Aurora 導入事例紹介~Amazon Web Services Japan
 
SAP on AWS紹介資料 - Dec, 2014
SAP on AWS紹介資料 - Dec, 2014SAP on AWS紹介資料 - Dec, 2014
SAP on AWS紹介資料 - Dec, 2014Matsumoto Hiroki
 
AWS Database Migration Serviceの紹介
AWS Database Migration Serviceの紹介AWS Database Migration Serviceの紹介
AWS Database Migration Serviceの紹介Kunio Kawahara
 
Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話Shota Umeda
 
オンプレミスRDBMSをAWSへ移行する手法
オンプレミスRDBMSをAWSへ移行する手法オンプレミスRDBMSをAWSへ移行する手法
オンプレミスRDBMSをAWSへ移行する手法Amazon Web Services Japan
 
SAPでクラウドはじめてみませんか? AWS and Azure
SAPでクラウドはじめてみませんか? AWS and AzureSAPでクラウドはじめてみませんか? AWS and Azure
SAPでクラウドはじめてみませんか? AWS and AzureMasaru Hiroki
 
Oracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけてOracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけてYoichi Sai
 
【JAWS DAYS 2016】ランサーズを支えるAurora
【JAWS DAYS 2016】ランサーズを支えるAurora【JAWS DAYS 2016】ランサーズを支えるAurora
【JAWS DAYS 2016】ランサーズを支えるAuroraYuki Kanazawa
 

La actualidad más candente (20)

[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -
[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -
[AKIBA.AWS] EC2の基礎 - パフォーマンスを100%引き出すオプション設定 -
 
Using Amazon Aurora for Enterprise Workloads
Using Amazon Aurora for Enterprise WorkloadsUsing Amazon Aurora for Enterprise Workloads
Using Amazon Aurora for Enterprise Workloads
 
Aurora新時代の幕開けとDynamoDBの進化
Aurora新時代の幕開けとDynamoDBの進化Aurora新時代の幕開けとDynamoDBの進化
Aurora新時代の幕開けとDynamoDBの進化
 
Amazon Aurora
Amazon AuroraAmazon Aurora
Amazon Aurora
 
AWSでスケールアウト&スケールアップ
AWSでスケールアウト&スケールアップAWSでスケールアウト&スケールアップ
AWSでスケールアウト&スケールアップ
 
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)
Amazon Aurora Deep Dive (re:Invent 2015 DAT405 日本語翻訳版)
 
Amazon Aurora 最新アップデートと日本のお客様の移行事例
Amazon Aurora 最新アップデートと日本のお客様の移行事例Amazon Aurora 最新アップデートと日本のお客様の移行事例
Amazon Aurora 最新アップデートと日本のお客様の移行事例
 
オンプレからAuroraへの移行とその効果
オンプレからAuroraへの移行とその効果オンプレからAuroraへの移行とその効果
オンプレからAuroraへの移行とその効果
 
エンタープライズワークロードにおけるAmazon Auroraの活用
エンタープライズワークロードにおけるAmazon Auroraの活用エンタープライズワークロードにおけるAmazon Auroraの活用
エンタープライズワークロードにおけるAmazon Auroraの活用
 
Aurora
AuroraAurora
Aurora
 
EC2 Deep Dive at CTO Night&Day 2016
EC2 Deep Dive at CTO Night&Day 2016 EC2 Deep Dive at CTO Night&Day 2016
EC2 Deep Dive at CTO Night&Day 2016
 
2017年1月のAWSサービスアップデートまとめ
 2017年1月のAWSサービスアップデートまとめ 2017年1月のAWSサービスアップデートまとめ
2017年1月のAWSサービスアップデートまとめ
 
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化 ~Amazon Aurora 導入事例紹介~
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化  ~Amazon Aurora 導入事例紹介~[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化  ~Amazon Aurora 導入事例紹介~
[Aurora事例祭り]毎日新聞ニュースサイトをクラウド化 ~Amazon Aurora 導入事例紹介~
 
SAP on AWS紹介資料 - Dec, 2014
SAP on AWS紹介資料 - Dec, 2014SAP on AWS紹介資料 - Dec, 2014
SAP on AWS紹介資料 - Dec, 2014
 
AWS Database Migration Serviceの紹介
AWS Database Migration Serviceの紹介AWS Database Migration Serviceの紹介
AWS Database Migration Serviceの紹介
 
Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話
 
オンプレミスRDBMSをAWSへ移行する手法
オンプレミスRDBMSをAWSへ移行する手法オンプレミスRDBMSをAWSへ移行する手法
オンプレミスRDBMSをAWSへ移行する手法
 
SAPでクラウドはじめてみませんか? AWS and Azure
SAPでクラウドはじめてみませんか? AWS and AzureSAPでクラウドはじめてみませんか? AWS and Azure
SAPでクラウドはじめてみませんか? AWS and Azure
 
Oracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけてOracleからamazon auroraへの移行にむけて
Oracleからamazon auroraへの移行にむけて
 
【JAWS DAYS 2016】ランサーズを支えるAurora
【JAWS DAYS 2016】ランサーズを支えるAurora【JAWS DAYS 2016】ランサーズを支えるAurora
【JAWS DAYS 2016】ランサーズを支えるAurora
 

Similar a Oracle racからaurora my sqlへの移行

#reco_tech OracleからAuroraへ feat. 開発しかやってこなかったエンジニア
#reco_tech   OracleからAuroraへ feat. 開発しかやってこなかったエンジニア#reco_tech   OracleからAuroraへ feat. 開発しかやってこなかったエンジニア
#reco_tech OracleからAuroraへ feat. 開発しかやってこなかったエンジニアrecotech
 
AWS Black Belt Techシリーズ AWS Data Pipeline
AWS Black Belt Techシリーズ  AWS Data PipelineAWS Black Belt Techシリーズ  AWS Data Pipeline
AWS Black Belt Techシリーズ AWS Data PipelineAmazon Web Services Japan
 
20131209_buildinsidermeetup
20131209_buildinsidermeetup20131209_buildinsidermeetup
20131209_buildinsidermeetupkumake
 
Intro2 Sqlanalyzer
Intro2 SqlanalyzerIntro2 Sqlanalyzer
Intro2 Sqlanalyzersaeka
 
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能Ryusuke Kajiyama
 
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)Hirofumi Kubo
 
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかWebアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかChihiro Ito
 
Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Makoto Sato
 
APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集Yosuke Arai
 
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)オラクルエンジニア通信
 
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0Start of a New era: Apache YARN 3.1 and Apache HBase 2.0
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0DataWorks Summit
 
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)オラクルエンジニア通信
 
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA)
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA) ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA)
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA) オラクルユニバーシティ
 
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓オラクルユニバーシティ
 
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)NTT DATA Technology & Innovation
 
[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008Toru Kimura
 
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)さくらインターネット株式会社
 

Similar a Oracle racからaurora my sqlへの移行 (20)

#reco_tech OracleからAuroraへ feat. 開発しかやってこなかったエンジニア
#reco_tech   OracleからAuroraへ feat. 開発しかやってこなかったエンジニア#reco_tech   OracleからAuroraへ feat. 開発しかやってこなかったエンジニア
#reco_tech OracleからAuroraへ feat. 開発しかやってこなかったエンジニア
 
AWS Black Belt Techシリーズ AWS Data Pipeline
AWS Black Belt Techシリーズ  AWS Data PipelineAWS Black Belt Techシリーズ  AWS Data Pipeline
AWS Black Belt Techシリーズ AWS Data Pipeline
 
20131209_buildinsidermeetup
20131209_buildinsidermeetup20131209_buildinsidermeetup
20131209_buildinsidermeetup
 
Intro2 Sqlanalyzer
Intro2 SqlanalyzerIntro2 Sqlanalyzer
Intro2 Sqlanalyzer
 
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
[中国地方DB勉強会] 第22回 Webアプリ開発をデータベース側から変革していく - MySQL 8.0新機能
 
Serverless analytics on aws
Serverless analytics on awsServerless analytics on aws
Serverless analytics on aws
 
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)
hbstudy#82 SRE大全 FullGCとの闘い (UZABSE SRE Team Hirofumi Kubo)
 
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかWebアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
 
Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版
 
APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集APEX UG Japan meetup 2018#3 - APEX18.1大特集
APEX UG Japan meetup 2018#3 - APEX18.1大特集
 
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
GoldenGateテクニカルセミナー3「Oracle GoldenGate Technical Deep Dive」(2016/5/11)
 
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0Start of a New era: Apache YARN 3.1 and Apache HBase 2.0
Start of a New era: Apache YARN 3.1 and Apache HBase 2.0
 
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)
オラクル・データベース・クラウド~さらなる進化のご紹介(Oracle Cloud Days Tokyo 2015)
 
Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版Yahoo! JAPANのOracle構成-2017年版
Yahoo! JAPANのOracle構成-2017年版
 
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA)
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA) ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA)
ORACLE MASTER Bronze Oracle Database 12c 傾向と対策 (SQL および Bronze DBA)
 
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓
20170510_ORACLE MASTER Silver Oracle Database 12c 徹底特訓
 
Tech deepdive#2 datastore_180317_share
Tech deepdive#2 datastore_180317_shareTech deepdive#2 datastore_180317_share
Tech deepdive#2 datastore_180317_share
 
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)
OpenLineage による Airflow のデータ来歴の収集と可視化(Airflow Meetup Tokyo #3 発表資料)
 
[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008[Aws]database migration seminar_20191008
[Aws]database migration seminar_20191008
 
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
 

Más de recotech

RecoChoku tech night #09 -reinvent2018報告会- オープニング
RecoChoku tech night #09 -reinvent2018報告会-  オープニングRecoChoku tech night #09 -reinvent2018報告会-  オープニング
RecoChoku tech night #09 -reinvent2018報告会- オープニングrecotech
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-recotech
 
Amazon Kinesis Streams デモ
Amazon Kinesis Streams デモAmazon Kinesis Streams デモ
Amazon Kinesis Streams デモrecotech
 
Amazon SageMaker の紹介 + デモ
Amazon SageMaker の紹介 + デモ Amazon SageMaker の紹介 + デモ
Amazon SageMaker の紹介 + デモ recotech
 
Aws導入時にまず考える〇〇のこと
Aws導入時にまず考える〇〇のことAws導入時にまず考える〇〇のこと
Aws導入時にまず考える〇〇のことrecotech
 
業界あるある Music偏
 業界あるある Music偏 業界あるある Music偏
業界あるある Music偏recotech
 
レコチョク・ラボが考える人工知能
レコチョク・ラボが考える人工知能レコチョク・ラボが考える人工知能
レコチョク・ラボが考える人工知能recotech
 
Git hubenterpriseを導入してみて
Git hubenterpriseを導入してみてGit hubenterpriseを導入してみて
Git hubenterpriseを導入してみてrecotech
 
Swaggerを利用した新規サービス開発
Swaggerを利用した新規サービス開発Swaggerを利用した新規サービス開発
Swaggerを利用した新規サービス開発recotech
 
レコチョクのサービス群を支えるApiたち
レコチョクのサービス群を支えるApiたちレコチョクのサービス群を支えるApiたち
レコチョクのサービス群を支えるApiたちrecotech
 
そうだApi公開しよう feat. 有志のエンジニア
そうだApi公開しよう feat. 有志のエンジニアそうだApi公開しよう feat. 有志のエンジニア
そうだApi公開しよう feat. 有志のエンジニアrecotech
 
Mackerel x Twilio ~レコチョクの場合~
Mackerel x Twilio ~レコチョクの場合~Mackerel x Twilio ~レコチョクの場合~
Mackerel x Twilio ~レコチョクの場合~recotech
 
#reco_tech Cloud searchでレコチョク検索の実現に向けて
#reco_tech   Cloud searchでレコチョク検索の実現に向けて#reco_tech   Cloud searchでレコチョク検索の実現に向けて
#reco_tech Cloud searchでレコチョク検索の実現に向けてrecotech
 
#reco_tech AWSへ全面移行した今を話ます。
#reco_tech   AWSへ全面移行した今を話ます。#reco_tech   AWSへ全面移行した今を話ます。
#reco_tech AWSへ全面移行した今を話ます。recotech
 
WIZY企画の裏側
WIZY企画の裏側WIZY企画の裏側
WIZY企画の裏側recotech
 
#recotech_AWS移行してみたけどぶっちゃけどうよ。
#recotech_AWS移行してみたけどぶっちゃけどうよ。#recotech_AWS移行してみたけどぶっちゃけどうよ。
#recotech_AWS移行してみたけどぶっちゃけどうよ。recotech
 
#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側recotech
 
#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたことrecotech
 

Más de recotech (18)

RecoChoku tech night #09 -reinvent2018報告会- オープニング
RecoChoku tech night #09 -reinvent2018報告会-  オープニングRecoChoku tech night #09 -reinvent2018報告会-  オープニング
RecoChoku tech night #09 -reinvent2018報告会- オープニング
 
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
 
Amazon Kinesis Streams デモ
Amazon Kinesis Streams デモAmazon Kinesis Streams デモ
Amazon Kinesis Streams デモ
 
Amazon SageMaker の紹介 + デモ
Amazon SageMaker の紹介 + デモ Amazon SageMaker の紹介 + デモ
Amazon SageMaker の紹介 + デモ
 
Aws導入時にまず考える〇〇のこと
Aws導入時にまず考える〇〇のことAws導入時にまず考える〇〇のこと
Aws導入時にまず考える〇〇のこと
 
業界あるある Music偏
 業界あるある Music偏 業界あるある Music偏
業界あるある Music偏
 
レコチョク・ラボが考える人工知能
レコチョク・ラボが考える人工知能レコチョク・ラボが考える人工知能
レコチョク・ラボが考える人工知能
 
Git hubenterpriseを導入してみて
Git hubenterpriseを導入してみてGit hubenterpriseを導入してみて
Git hubenterpriseを導入してみて
 
Swaggerを利用した新規サービス開発
Swaggerを利用した新規サービス開発Swaggerを利用した新規サービス開発
Swaggerを利用した新規サービス開発
 
レコチョクのサービス群を支えるApiたち
レコチョクのサービス群を支えるApiたちレコチョクのサービス群を支えるApiたち
レコチョクのサービス群を支えるApiたち
 
そうだApi公開しよう feat. 有志のエンジニア
そうだApi公開しよう feat. 有志のエンジニアそうだApi公開しよう feat. 有志のエンジニア
そうだApi公開しよう feat. 有志のエンジニア
 
Mackerel x Twilio ~レコチョクの場合~
Mackerel x Twilio ~レコチョクの場合~Mackerel x Twilio ~レコチョクの場合~
Mackerel x Twilio ~レコチョクの場合~
 
#reco_tech Cloud searchでレコチョク検索の実現に向けて
#reco_tech   Cloud searchでレコチョク検索の実現に向けて#reco_tech   Cloud searchでレコチョク検索の実現に向けて
#reco_tech Cloud searchでレコチョク検索の実現に向けて
 
#reco_tech AWSへ全面移行した今を話ます。
#reco_tech   AWSへ全面移行した今を話ます。#reco_tech   AWSへ全面移行した今を話ます。
#reco_tech AWSへ全面移行した今を話ます。
 
WIZY企画の裏側
WIZY企画の裏側WIZY企画の裏側
WIZY企画の裏側
 
#recotech_AWS移行してみたけどぶっちゃけどうよ。
#recotech_AWS移行してみたけどぶっちゃけどうよ。#recotech_AWS移行してみたけどぶっちゃけどうよ。
#recotech_AWS移行してみたけどぶっちゃけどうよ。
 
#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側#recotech_WIZY開発の裏側
#recotech_WIZY開発の裏側
 
#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと#recotech_レガシーなシステムから立て直すためにしたこと
#recotech_レガシーなシステムから立て直すためにしたこと
 

Último

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 

Último (9)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 

Oracle racからaurora my sqlへの移行

  • 1. © RecoChoku Co.,Ltd. Proprietary and Confidential 株式会社レコチョク 事業システム推進部 システムアーキテクトグループ 酒井 修平 2017/3/7 Oracle RACからAurora MySQLへの移行
  • 2. © RecoChoku Co.,Ltd. Proprietary and Confidential アジェンダ 22017/3/7 クラブレコチョクという会員サービスを Oracle RACからAurora MySQLへ移行したお話 1. レコチョクとクラブレコチョクについて 2. Auroraを選択した理由 3. どのようにAuroraへ移行したか 4. どのようにAuroraを運用しているか 5. Auroraに期待するところ
  • 3. © RecoChoku Co.,Ltd. Proprietary and Confidential 自己紹介 32017/3/7 ● 名前 - 酒井修平 @darshuheider ● サーバサイドエンジニア - クラブレコチョク システム担当 ● 好きなAWSサービス - Aurora - Lambda ● 好きなアーティスト - レキシ - 星野源 - Negicco - アップアップガールズ(仮) - チャオベッラチンクエッティ ● ポジション - 2番 セカンド
  • 4. © RecoChoku Co.,Ltd. Proprietary and Confidential レコチョクとクラブレコチョクについて 42017/3/7 • レコチョクではどんなサービスを展開しているか? 従来の事業領域(デジタル音源配信) 自社(レコチョク) 協業 従量課金制 定額課金制 従量課金制 定額課金制 新事業領域(より幅広い音楽ソリューションサービスへ)
  • 5. © RecoChoku Co.,Ltd. Proprietary and Confidential レコチョクとクラブレコチョクについて 52017/3/7 • システム全体としてはどのような感じか? – 機能やサービス毎にシステムを構築 • 楽曲検索、決済、会員(クラブレコチョク)、楽曲情報 etc.. – 全てをAWS上に構築 • EC2 : 約1000 • RDS : 約180 • 30以上のAWSサービスを利用
  • 6. © RecoChoku Co.,Ltd. Proprietary and Confidential レコチョクとクラブレコチョクについて 62017/3/7 • クラブレコチョクとはどのようなサービスか? – レコチョクが展開するサービスへ会員機能を提供する – 主な機能 • 会員登録・ログイン • 会員の属性情報管理(Myアーティスト登録) • セッション管理 • 端末管理
  • 7. © RecoChoku Co.,Ltd. Proprietary and Confidential レコチョクとクラブレコチョクについて 72017/3/7 • クラブレコチョクとはどのようなサービスか? – 有効会員数は約1000万 • DB全体のレコード数としては数億レコード – アクセス数は多いと秒間250リクエストは超える – 各サービス横断で利用されるので高い可用性が必要
  • 8. © RecoChoku Co.,Ltd. Proprietary and Confidential レコチョクとクラブレコチョクについて 82017/3/7 • クラブレコチョクシステム構成図 バッチ 会員システム 分析系システム 東京リージョン 連携システム APIWEB ユーザ Elastic Load Balancer Elastic Load Balancer Elastic Load Balancer Amazon Route 53 Amazon EC2 Amazon EC2 Amazon EC2 Amazon S3 Amazon Aurora Amazon Aurora
  • 9. © RecoChoku Co.,Ltd. Proprietary and Confidential Auroraを選択した理由 92017/3/7 • そもそも会社全体としてどのような課題があったか? – データ総量の予測が困難になってきた • 楽曲数の増加、動画やハイレゾ音源の対応 – コストの最適化 • 短期間でのサービス立ち上げ、急激なアクセス増に対応するため多めにイン フラリソースを保持 – コストの明確化 • サービス、システム毎のインフラコストが把握できていない
  • 10. © RecoChoku Co.,Ltd. Proprietary and Confidential Auroraを選択した理由 102017/3/7 • クラブレコチョクはオンプレでどのように運用されていたか? – DBはOracleでRAC構成 • 2ノード – 2CPU 4コア • エンタープライズ・ストレージ • Oracle EE Partitioning + RAC オプション • 全コンポーネントの冗長化 – DBAがインフラを運用 • 監視 – コネクション数、表領域、CPU etc.. • バックアップ
  • 11. © RecoChoku Co.,Ltd. Proprietary and Confidential Auroraを選択した理由 112017/3/7 • なぜAuroraを選択したのか? – 高い可用性を担保するため • 様々なサービスから利用される • 求められる可用性については同じ – 定期的にメンテがあるのでサービス調整はしました – 運用工数を抑えたい • 運用は開発チームに移管
  • 12. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraへ移行したか 122017/3/7 • 大きく分けると4つの作業を実施しました – テーブルを再作成 – SQLの修正 – データの移行 – 性能試験 • DMSなどの移行ツールが一般公開になる前だったので、全て自 前でスクリプト等を作成しました
  • 13. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraへ移行したか 132017/3/7 • テーブルを再作成 – DDLの作成 • データ型を変更していく。比較的機械的な作業 • アプリ側も適宜修正 – パラメータグループの作成 • DBAから基本的な設定内容について教えてもらう • デフォルトのトランザクション分離レベルはOracleと違うので注意
  • 14. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraへ移行したか 142017/3/7 • SQLの修正 – 関数をMySQLで使えるものに変換していく • MERGE 構文、DECODE 関数、TO_CHAR 関数 etc.. – コメントの修正 • “--” → “--(空白)” もしくは “#” ※基本的には公式ドキュメントとにらめっこしながら対応しました https://dev.mysql.com/doc/refman/5.6/ja/compatibility.html
  • 15. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraへ移行したか 152017/3/7 • データの移行 – 更新日を見ながら、過去数年分を一気に移行 • データ量が多かったことと、性能試験を本番相当のデータで実施したかったの で、1ヶ月前からデータ移行を開始 • DATEやDATETIMEは年を下2桁だけにしてしまうと、1900年代か2000年代を勝 手に変換するので注意(生年月日が未来日の人できてしまうかも。。) – 移行が完了したら、切り替え当日まで差分を日次で更新
  • 16. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraへ移行したか 162017/3/7 • 性能試験 – 本番相当のデータを使って運用テスト、負荷テストを実施 • スロークエリをとって性能が出ていないものがないか監視 – 実行計画をとってフルスキャンしているものがないか確認 • 実際には全SQLの実行計画をとれなかったので全て見るべきだったと反省。。 ⇒上記で問題のあるものに対し適宜対応を実施 ・ SQLの最適化 ・ インデックス追加 ・ サブクエリをなくして2回SQLを投げるように修正 ・ 検索専用のテーブルを追加(後方一致検索に10分以上かかってしまった) ※パラメータの修正は一切行わず
  • 17. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraを運用しているか • 最初は何を見ればいいかわからなかった。。 – 元々インフラを管理していた人とかに相談 • 標準的に見るべき項目や閾値を策定してもらう – CPU、メモリ、クエリ数、コネクション数、スロークエリ、スループット • ダッシュボードの作成 172017/3/7
  • 18. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraを運用しているか • Auroraに合わせた監視内容に変更しました – CPU使用率が比較的高め • インスタンスリソースをフルに活用する – CPU使用率が95%を超えたことがありましたが、正常に動き続けてました。。 – インスタンスリソースによる監視はやめる • スループットやレイテンシーの監視のみ 182017/3/7
  • 19. © RecoChoku Co.,Ltd. Proprietary and Confidential どのようにAuroraを運用しているか • 結果的にどうだったか? – Auroraによる障害はこれまで0 • オンプレ時代同様の高い可用性を担保 • メンテナンスによる停止もこれまであったが、ゼロダウンタイムパッチのリリースによ り解消 – DBサーバ運用に工数をほとんど割かなくてよい • 本来の開発業務に集中 – 性能は問題なし • 自分たちの場合は早くなりました! – ライセンス費用が0 192017/3/7
  • 20. © RecoChoku Co.,Ltd. Proprietary and Confidential Auroraに期待するところ • PostgreSQL互換がほしい – レコチョクではPostreSQLを使っているシステムも多い • 移行がもう少し楽になっていた? • 暗号化されたスナップショットの別リージョンへのコピー 202017/3/7
  • 21. © RecoChoku Co.,Ltd. Proprietary and Confidential We’re hiring ! 212017/3/7 エンジニアブログ公開中 https://recruit.recochoku.jp/ https://techblog.recochoku.jp/