タグ

ブックマーク / ijin.github.io (3)

  • Data PipelineによるDynamoDBのexport - @ijin

    ちょっとハマったのでメモ。 DynamoDBにはRDSみたいなスナップショットによるバックアップ機能がなく、データを一括でexportするにはフルスキャンしかありません。 AWSではData Pipelineによるs3へのexportテンプレートがあって、それを使うとEMRクラスタが立ち上がりHive経由で大量の処理をして、s3へ書き出してくれます。 1000万件程度の小さな件数だとデフォルトのテンプレートがそのまま使えるけど、1億件近くになると失敗したりタイムアウトしたりするので、パラメータの調整が必要になってきます。 前提 約1億件 20GB Provisioned Throughput (reads): 1000 Read Throughput Percent: 1.0 2時間以内のexport エラー 具体的には以下のようなエラーに遭遇しました。 Caused by: org.ap

  • ConsulによるMySQLフェールオーバー - @ijin

    先日(6/22/14)、6月なのにどういう分けか早めに開催されたJuly Tech Festa 2014でConsulについて発表してきた。そのユースケースの一つとしてMySQL failoverをちょっとだけ紹介したので、ここに詳しく書いておく。 MHA MySQLレプリケーションの障害時にフェールオーバーしたい場合、MHAを使うの結構ポピュラー(日では)だと思います。MHAは最新binlogの適用、Slaveの昇格とレプリケーションの張替えまではやってくれますが、実際のフェールオーバーの部分はユーザに委ねられていて、master_ip_failover_scriptのテンプレートをカスタマイズするか独自実装する必要があり、一般的な実現方法としてはカタログデータベースの更新かVirtual IPの切替等があります。 Virtual IPだと居残りセッションの問題や切替の保証難しかったり

  • リージョン間高速データ転送 - @ijin

    先日のJAWS DAYSのセッション「Behind the scenes of Presidential Campaign」でリージョン間のデータ転送を高速化するツールとしてtsunami udpとcloudoptを使った話が出てたので試してみました。 通常、遠距離のサーバはRTTが大きくなるのでスループットが下がり、巨大なデータ転送には苦労しますが、なんと27TBを9時間で転送したとのこと!実際はマシンを並列にして同時転送したらしいので1台での実験です。 前提 東京(server1) -> アメリカ西海岸(server2) RTT: 120msぐらい EC2 instance type: m1.large OS: Ubuntu 12.04 ベーステスト 10Gファイルの作成 server1$ mkdir _tmp; cd _tmp server1$ dd if=/dev/zero of=

  • 1