JAWS−UG                        #2
SimpleDB

                 (@hrsm1979)

2011   11   10
✤            @hrsm1979

✤           (2010/06 )

✤         iPhone

✤   AWS     Amazon S3

✤                        ( http://tech.furyu.jp )
✤




✤




✤
✤       10     20

    ✤




    ✤                          MAILDECO(iPhone)

    ✤                          Love

    ✤        SNS    PICTLINK
✤   SNS

✤   SNS          SNS

✤   SNS

✤         SNS



✤          200
SNS

✤       SNS           200



✤             (   )

✤




✤




✤   2
✤   1       30   PV(45,000UU/day)

✤   CM



✤                                   (Java   Web   )



✤   ↑   1
✤                     AWS

    ✤




        ✤   S (VPS)

        ✤   N   (       )

        ✤   Amazon Web Services
AWS                               1:
✤    AWS

                     AWS                   N                   S

         CPU     1ECU - 33.5ECU        1vCPU - 4vCPU               -2

                 613MB – 68.4GB        512MB – 16GB      512MB – 8GB

                 160GB – 1690G             30GB
                                                         20GB – 240GB
                 (EBS        )     (      100GB – 1TB)

    IP

LB/        /AS      /    /                /    /           /        /
AWS                    2:


✤                  N    AWS S


AWS(RDS    )                3583.85   286,708
AWS(SimpleDB   )            2088.05   167,044
N                       659,022
S                       63,840
AWS               :

✤   S (VPS)

✤   N   (     )

✤   AWS               EC2



✤   ⇛AWS
AWS
AWS


✤   EC2(Elastic Computing Cloud)

    ✤   EBS Type

    ✤   m1.large

    ✤   CentOS AMI

    ✤                     AZ
AWS

✤   S3(Simple Storage Service)

    ✤




✤   SimpleDB

    ✤




    ✤   RDB
AWS

✤   SNS(Simple Notification Service)

    ✤




✤   ELB(Elastic Load Balancer)

✤   Route53(DNS)

✤   CloudWatch(Monitoring)

✤   AutoScaling(           )
✤   SNS   SNS   API




✤




✤
✤   Oracle         MySQL

✤




✤            AWS



✤
SimpleDB
SimpleDB

✤   AWS                 KVS         (KVS)

✤   No SQL. No Admin.

    ✤




    ✤




✤              HTTP,SOAP      API

✤
SimpleDB

✤   SQL    SELECT API

✤




✤                 AZ

✤           AWS



✤
RDS


✤   AWS

✤             RDB

✤   MultiAZ

✤
SimpleDB

✤




✤   SimpleDB

✤   Java       MySQL



✤               SimpleDB

✤
SimpleDB                  (AWS SDK        )

✤                    (    )

    ✤   Select API

                                        (ms)
Asia Pacific (Tokyo)                   38.8ms
Asia Pacific (Singapore)              126.8ms
EU West (Ireland)                    332.6ms
US West (N. California)              154.1ms
US East (Virginia)                   234.9ms
US West (Oregon)                     163.7ms
SimpleDB                    (AWS SDK        )

✤                 (         )

    ✤   PutAttributes API

                                          (ms)
Asia Pacific (Tokyo)                    369.2ms
Asia Pacific (Singapore)                431.3ms
EU West (Ireland)                      659.8ms
US West (N. California)                467.4ms
US East (Virginia)                     585.3ms
US West (Oregon)                       428.5ms
SimpleDB                    (AWS SDK        )

✤                 (         )

    ✤   PutAttributes API

                                          (ms)
Asia Pacific (Tokyo)                    287.8ms
Asia Pacific (Singapore)                378.0ms
EU West (Ireland)                      648.5ms
US West (N. California)                351.5ms
US East (Virginia)                     504.8ms
US West (Oregon)                       347.4ms
SimpleDB                       (AWS SDK        )

✤                 (            )

    ✤   DeleteAttributes API

                                             (ms)
Asia Pacific (Tokyo)                       244.8ms
Asia Pacific (Singapore)                   339.7ms
EU West (Ireland)                         573.2ms
US West (N. California)                   339.7ms
US East (Virginia)                        534.0ms
US West (Oregon)                          291.8ms
SimpleDB                            (AWS SDK                         )

✤




✤   1.Asia Pacific(Tokyo)

✤   2.Asia Pacific(Singpore),US West(N. California),US West(Oregon)

✤   3. US East(Virginia)

✤   4. EU West(Ireland)
✤                          Java
    Web

    ✤   S2Container

    ✤   S2Struts

    ✤   S2Dxo

    ✤   Velocity

    ✤   AWS SDK for Java
SimpleDB


✤            Join

✤




    ✤   http://docs.amazonwebservices.com/AmazonSimpleDB/latest/
        DeveloperGuide/index.html?SDBLimits.html

✤
SimpleDB


✤         (    AZ       )

✤   RDB

✤




✤             AWS   )
AWS


✤                24   365

✤   AWS




✤   →cloudpack
✤   SimpleDB

    ✤                     SimpleDB

✤   EBS

    ✤   1   1        10

✤




    ✤           S3
✤   2011      6

✤   SNS

    ✤   →

✤       SNS

✤   EC2
✤       PC



✤       EC2

✤




✤   →         15
✤   EC2

✤




✤
✤   EC2,S3

✤   SimpleDB                      (   $30)

    ✤   2011/06 - $700(    930)

    ✤   2011/07 - $2,000

    ✤   2011/08 - $2,800
✤   API            ,

✤         SimpleMonthlyCalculator
             300

✤   →                      BoxUsage
BoxUsage

✤   BoxUsage

    ✤




    ✤                                     (          )



    ✤   1             GetAttribute API              10,000
               Select API                BoxUsage
✤   BoxUsage

    ✤           SelectAPI

        ✤   →

    ✤




        ✤   →
SimpleDB



✤         API

✤   API                    API
                BoxUsage
API

✤




    ✤   S2Caching

    ✤   →API

✤




✤   SimpleDB
✤   2011   11

    ✤   BoxUsage   3   1
✤   EC2

    ✤         5            100

    ✤   EC2       4   12
SimpleDB


✤   2011     10      API               :   1

✤   2011     10   RequestTimeOut           7

    ✤    →

✤   10                     0.000007%
✤




✤




✤   AWS
SimpleDB

✤




✤




✤




✤   →
SimpleDB

✤




✤   RDB

✤




✤   →RDB
✤   SimpleDB

✤   No SQL.No Admin.

✤   SimpleDB

✤   SimpleMonthlyCalculator   BoxUsage
               Web
✤




✤   FuRyu Tech Blog

    ✤   http://tech.furyu.jp
✤




✤   Android/iPhone

✤




✤   http://www.furyu.jp/company/recruit/career.html
SimpleDBを使った ソーシャルアプリ構築事例

SimpleDBを使った ソーシャルアプリ構築事例

  • 1.
    JAWS−UG #2 SimpleDB (@hrsm1979) 2011 11 10
  • 2.
    @hrsm1979 ✤ (2010/06 ) ✤ iPhone ✤ AWS Amazon S3 ✤ ( http://tech.furyu.jp )
  • 3.
  • 4.
    10 20 ✤ ✤ MAILDECO(iPhone) ✤ Love ✤ SNS PICTLINK
  • 5.
    SNS ✤ SNS SNS ✤ SNS ✤ SNS ✤ 200
  • 6.
    SNS ✤ SNS 200 ✤ ( ) ✤ ✤ ✤ 2
  • 7.
    1 30 PV(45,000UU/day) ✤ CM ✤ (Java Web ) ✤ ↑ 1
  • 8.
    AWS ✤ ✤ S (VPS) ✤ N ( ) ✤ Amazon Web Services
  • 9.
    AWS 1: ✤ AWS AWS N S CPU 1ECU - 33.5ECU 1vCPU - 4vCPU -2 613MB – 68.4GB 512MB – 16GB 512MB – 8GB 160GB – 1690G 30GB 20GB – 240GB (EBS ) ( 100GB – 1TB) IP LB/ /AS / / / / / /
  • 10.
    AWS 2: ✤ N AWS S AWS(RDS ) 3583.85 286,708 AWS(SimpleDB ) 2088.05 167,044 N 659,022 S 63,840
  • 11.
    AWS : ✤ S (VPS) ✤ N ( ) ✤ AWS EC2 ✤ ⇛AWS
  • 12.
  • 13.
    AWS ✤ EC2(Elastic Computing Cloud) ✤ EBS Type ✤ m1.large ✤ CentOS AMI ✤ AZ
  • 14.
    AWS ✤ S3(Simple Storage Service) ✤ ✤ SimpleDB ✤ ✤ RDB
  • 15.
    AWS ✤ SNS(Simple Notification Service) ✤ ✤ ELB(Elastic Load Balancer) ✤ Route53(DNS) ✤ CloudWatch(Monitoring) ✤ AutoScaling( )
  • 16.
    SNS SNS API ✤ ✤
  • 17.
    Oracle MySQL ✤ ✤ AWS ✤
  • 18.
  • 19.
    SimpleDB ✤ AWS KVS (KVS) ✤ No SQL. No Admin. ✤ ✤ ✤ HTTP,SOAP API ✤
  • 20.
    SimpleDB ✤ SQL SELECT API ✤ ✤ AZ ✤ AWS ✤
  • 21.
    RDS ✤ AWS ✤ RDB ✤ MultiAZ ✤
  • 22.
    SimpleDB ✤ ✤ SimpleDB ✤ Java MySQL ✤ SimpleDB ✤
  • 23.
    SimpleDB (AWS SDK ) ✤ ( ) ✤ Select API (ms) Asia Pacific (Tokyo) 38.8ms Asia Pacific (Singapore) 126.8ms EU West (Ireland) 332.6ms US West (N. California) 154.1ms US East (Virginia) 234.9ms US West (Oregon) 163.7ms
  • 24.
    SimpleDB (AWS SDK ) ✤ ( ) ✤ PutAttributes API (ms) Asia Pacific (Tokyo) 369.2ms Asia Pacific (Singapore) 431.3ms EU West (Ireland) 659.8ms US West (N. California) 467.4ms US East (Virginia) 585.3ms US West (Oregon) 428.5ms
  • 25.
    SimpleDB (AWS SDK ) ✤ ( ) ✤ PutAttributes API (ms) Asia Pacific (Tokyo) 287.8ms Asia Pacific (Singapore) 378.0ms EU West (Ireland) 648.5ms US West (N. California) 351.5ms US East (Virginia) 504.8ms US West (Oregon) 347.4ms
  • 26.
    SimpleDB (AWS SDK ) ✤ ( ) ✤ DeleteAttributes API (ms) Asia Pacific (Tokyo) 244.8ms Asia Pacific (Singapore) 339.7ms EU West (Ireland) 573.2ms US West (N. California) 339.7ms US East (Virginia) 534.0ms US West (Oregon) 291.8ms
  • 27.
    SimpleDB (AWS SDK ) ✤ ✤ 1.Asia Pacific(Tokyo) ✤ 2.Asia Pacific(Singpore),US West(N. California),US West(Oregon) ✤ 3. US East(Virginia) ✤ 4. EU West(Ireland)
  • 28.
    Java Web ✤ S2Container ✤ S2Struts ✤ S2Dxo ✤ Velocity ✤ AWS SDK for Java
  • 29.
    SimpleDB ✤ Join ✤ ✤ http://docs.amazonwebservices.com/AmazonSimpleDB/latest/ DeveloperGuide/index.html?SDBLimits.html ✤
  • 30.
    SimpleDB ✤ ( AZ ) ✤ RDB ✤ ✤ AWS )
  • 31.
    AWS ✤ 24 365 ✤ AWS ✤ →cloudpack
  • 32.
    SimpleDB ✤ SimpleDB ✤ EBS ✤ 1 1 10 ✤ ✤ S3
  • 33.
    2011 6 ✤ SNS ✤ → ✤ SNS ✤ EC2
  • 34.
    PC ✤ EC2 ✤ ✤ → 15
  • 35.
    EC2 ✤ ✤
  • 36.
    EC2,S3 ✤ SimpleDB ( $30) ✤ 2011/06 - $700( 930) ✤ 2011/07 - $2,000 ✤ 2011/08 - $2,800
  • 37.
    API , ✤ SimpleMonthlyCalculator 300 ✤ → BoxUsage
  • 38.
    BoxUsage ✤ BoxUsage ✤ ✤ ( ) ✤ 1 GetAttribute API 10,000 Select API BoxUsage
  • 39.
    BoxUsage ✤ SelectAPI ✤ → ✤ ✤ →
  • 40.
    SimpleDB ✤ API ✤ API API BoxUsage
  • 41.
    API ✤ ✤ S2Caching ✤ →API ✤ ✤ SimpleDB
  • 42.
    2011 11 ✤ BoxUsage 3 1
  • 43.
    EC2 ✤ 5 100 ✤ EC2 4 12
  • 44.
    SimpleDB ✤ 2011 10 API : 1 ✤ 2011 10 RequestTimeOut 7 ✤ → ✤ 10 0.000007%
  • 45.
  • 46.
  • 47.
    SimpleDB ✤ ✤ RDB ✤ ✤ →RDB
  • 48.
    SimpleDB ✤ No SQL.No Admin. ✤ SimpleDB ✤ SimpleMonthlyCalculator BoxUsage Web
  • 49.
    ✤ ✤ FuRyu Tech Blog ✤ http://tech.furyu.jp
  • 50.
    ✤ ✤ Android/iPhone ✤ ✤ http://www.furyu.jp/company/recruit/career.html