{"id":34164,"date":"2019-11-26T22:42:29","date_gmt":"2019-11-26T13:42:29","guid":{"rendered":"https:\/\/jirak.net\/wp\/amazon-dynamodb-%ea%b8%b0%ec%a1%b4-%eb%a1%9c%ec%bb%ac-%ed%85%8c%ec%9d%b4%eb%b8%94%ec%9d%84-%ea%b8%80%eb%a1%9c%eb%b2%8c-%ed%85%8c%ec%9d%b4%eb%b8%94%eb%a1%9c-%ec%a0%84%ed%99%98-%ea%b0%80%eb%8a%a5\/"},"modified":"2019-11-26T23:34:51","modified_gmt":"2019-11-26T14:34:51","slug":"amazon-dynamodb-%ea%b8%b0%ec%a1%b4-%eb%a1%9c%ec%bb%ac-%ed%85%8c%ec%9d%b4%eb%b8%94%ec%9d%84-%ea%b8%80%eb%a1%9c%eb%b2%8c-%ed%85%8c%ec%9d%b4%eb%b8%94%eb%a1%9c-%ec%a0%84%ed%99%98-%ea%b0%80%eb%8a%a5","status":"publish","type":"post","link":"https:\/\/jirak.net\/wp\/amazon-dynamodb-%ea%b8%b0%ec%a1%b4-%eb%a1%9c%ec%bb%ac-%ed%85%8c%ec%9d%b4%eb%b8%94%ec%9d%84-%ea%b8%80%eb%a1%9c%eb%b2%8c-%ed%85%8c%ec%9d%b4%eb%b8%94%eb%a1%9c-%ec%a0%84%ed%99%98-%ea%b0%80%eb%8a%a5\/","title":{"rendered":"Amazon DynamoDB \uae30\uc874 \ub85c\uceec \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc804\ud658 \uac00\ub2a5"},"content":{"rendered":"<p>Amazon DynamoDB \uae30\uc874 \ub85c\uceec \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc804\ud658 \uac00\ub2a5<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/jirak.net\/wp\/wp-content\/uploads\/2019\/11\/2019-global-table.png\" width=\"1874\" height=\"1284\"><\/p>\n<p>\uc218\uc2ed\ub9cc\uc758 AWS \uace0\uac1d\ub4e4\uc774 <a title=\"\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\">Amazon DynamoDB<\/a>\ub97c \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. 2017\ub144\uc5d0\ub294 \uba40\ud2f0 \ub9ac\uc804\uc758 \uba40\ud2f0 \ub9c8\uc2a4\ud130 <span title=\"\">DynamoDB<\/span> \ud14c\uc774\ube14\uc744 \ubc30\ud3ec\ud560 \uc218 \uc788\ub294 <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/GlobalTables.html\">\uae00\ub85c\ubc8c \ud14c\uc774\ube14<\/a>\uc744 \ucd9c\uc2dc\ud588\uc2b5\ub2c8\ub2e4. \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud560 \ub54c, \ud14c\uc774\ube14\uc744 \uc81c\uacf5\ud560 AWS \ud2b9\uc815 \ub9ac\uc804\uc744 \uc9c0\uc815\ud558\uae30\ub9cc \ud558\uba74 \uac01 \ub9ac\uc804\uc5d0 \ub3d9\uc77c\ud55c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud558\uace0 \uc9c0\uc18d\uc801\uc778 \ub370\uc774\ud130 \ubcc0\uacbd \ub0b4\uc6a9\uc744 \ud574\ub2f9\ud558\ub294 \ubaa8\ub4e0 \ub9ac\uc804\uc73c\ub85c \uc804\ud30c\ub97c \uc218\ud589\ud569\ub2c8\ub2e4.<\/p>\n<p>AWS \uace0\uac1d\uc740 <a href=\"https:\/\/aws.amazon.com\/blogs\/database\/how-to-use-amazon-dynamodb-global-tables-to-power-multiregion-architectures\/\">\ub450 \uac00\uc9c0 \uc911\uc694\ud55c \uc774\uc720<\/a> \ub54c\ubb38\uc5d0 <a title=\"\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\">DynamoDB<\/a> \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uccab\uc9f8\ub294 \uc9c0\uc5f0 \uc2dc\uac04\uc774 \uc9e7\uc740 \ud658\uacbd\uc744 \uace0\uac1d\uc5d0\uac8c \uc81c\uacf5\ud558\ub294 \uac83\uc774\uace0, \ub458\uc9f8\ub294 \ubc31\uc5c5 \ub610\ub294 \uc7ac\ud574 \ubcf5\uad6c \ud504\ub85c\uc138\uc2a4\ub97c \uc9c0\uc6d0\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc9c0\uc5f0 \uc2dc\uac04\uc740 \uc815\ubcf4\uac00 \ub124\ud2b8\uc6cc\ud06c\ub97c \ud1b5\ud574 \uc774\ub3d9\ud558\ub294 \ub370 \uac78\ub9ac\ub294 \uc2dc\uac04\uc785\ub2c8\ub2e4. \uc9c0\uc5f0 \uc2dc\uac04\uc774 \uc9e7\uc740 \uc571\uc740 <a href=\"https:\/\/dl.acm.org\/citation.cfm?id=2609627\">\uace0\uac1d \ucc38\uc5ec\ub3c4\uac00 \ub192\uace0<\/a> <a href=\"https:\/\/www.gigaspaces.com\/blog\/amazon-found-every-100ms-of-latency-cost-them-1-in-sales\/\">\ub354 \ub9ce\uc740 \uc218\uc775\uc744 \ucc3d\ucd9c<\/a>\ud569\ub2c8\ub2e4. \uace0\uac1d\uacfc \uc778\uc811\ud55c \uc5ec\ub7ec \ub9ac\uc804\uc5d0 \ubc31\uc5d4\ub4dc\ub97c \ubc30\ud3ec\ud558\uba74 \uc571\uc758 \uc9c0\uc5f0 \uc2dc\uac04\uc744 \uc904\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \ub9ac\uc804\uc5d0 \ub370\uc774\ud130\uc758 \uc804\uccb4 \uc0ac\ubcf8\uc774 \uc788\uc73c\uba74 \ub9ac\uc804 \uc124\uc815\uc774 \uc190\uc0c1\ub418\uac70\ub098 \ub9e4\uc6b0 \ub4dc\ubb3c\uc9c0\ub9cc \ub9ac\uc804\uc5d0 \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud558\ub294 \uacbd\uc6b0 \ub2e4\ub978 \ub9ac\uc804\uc73c\ub85c \ud2b8\ub798\ud53d\uc744 \uc27d\uac8c \uc804\ud658\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. Amazon CTO\uc778 Werner Vogels \ubc15\uc0ac\ub294 \u201c\uc7a5\uc560\ub294 \ud53c\ud560 \uc218 \uc5c6\uc73c\uba70, \uc5b4\ub5a4 \uac83\uc774\ub4e0 \uc2dc\uac04\uc774 \uc9c0\ub098\uba74 \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud560 \uc218\ubc16\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4\u201d\ub77c\uace0 <a href=\"https:\/\/www.allthingsdistributed.com\/2016\/03\/10-lessons-from-10-years-of-aws.html\">\uc5b8\uae09\ud55c \ubc14 \uc788\uc2b5\ub2c8\ub2e4<\/a>.<\/p>\n<p>\uc624\ub298\ubd80\ud130\ub294 <a title=\"\" href=\"https:\/\/console.aws.amazon.com\">AWS \uad00\ub9ac \ucf58\uc194<\/a>\uc5d0\uc11c \uba87 \ubc88 \ud074\ub9ad\ud558\uac70\ub098 <a title=\"\" href=\"https:\/\/aws.amazon.com\/cli\/\">AWS CLI(\uba85\ub839\uc904 \uc778\ud130\ud398\uc774\uc2a4)<\/a> \ub610\ub294 <a title=\"Amazon DynamoDB API\" href=\"https:\/\/docs.aws.amazon.com\/en_pv\/amazondynamodb\/latest\/APIReference\/Welcome.html\">Amazon DynamoDB API<\/a>\ub97c \uc0ac\uc6a9\ud558\uc5ec \uae30\uc874 <span title=\"\">DynamoDB<\/span> \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \ubcc0\ud658\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uacfc\uac70\uc5d0\ub294 \ube48 \ud14c\uc774\ube14\ub9cc \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \ubcc0\ud658\ud560 \uc218 \uc788\uc5c8\uc2b5\ub2c8\ub2e4. \ub530\ub77c\uc11c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud560 \ub54c \ud14c\uc774\ube14\uc758 \ub9ac\uc804 \uc0ac\uc6a9 \ubc94\uc704\ub97c \ucd94\uce21\ud574\uc57c \ud588\uc2b5\ub2c8\ub2e4. \uc774\uc81c \uc5b8\uc81c\ub4e0\uc9c0 \uae30\uc874 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \ucd94\uac00 \ub9ac\uc804\uc73c\ub85c \ud655\uc7a5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-7560\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7b52009b64fd0a2a49e6d8a939753077792b0554\/2019\/11\/26\/2019-global-table.png\" alt=\"\" width=\"1874\" height=\"1284\" \/><\/p>\n<p>\ubcf5\uc81c\ub97c \uc124\uc815\ud558\ub294 \ub3d9\uc548\uc5d0\ub3c4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \uacc4\uc18d \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud14c\uc774\ube14\uc5d0 \ub9ac\uc804\uc744 \ucd94\uac00\ud558\uba74 <span title=\"\">DynamoDB<\/span>\uc5d0\uc11c \uae30\uc874 \ud14c\uc774\ube14\uc758 \uc2a4\ub0c5\uc0f7\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc0c8 \ubcf5\uc81c\ubcf8\uc744 \ucc44\uc6b0\uae30 \uc2dc\uc791\ud569\ub2c8\ub2e4. <span title=\"\">DynamoDB<\/span>\uac00 \uc0c8 \ubcf5\uc81c\ubcf8\uc744 \uad6c\ucd95\ud558\ub294 \ub3d9\uc548\uc5d0\ub3c4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc740 \uae30\uc874 \ub9ac\uc804\uc5d0 \uacc4\uc18d \uae30\ub85d\ud560 \uc218 \uc788\uc73c\uba70 \uacb0\uad6d\uc5d0\ub294 \ubaa8\ub4e0 \uc778\ud50c\ub77c\uc774\ud2b8 \uc5c5\ub370\uc774\ud2b8\uac00 \uc0c8 \ubcf5\uc81c\ubcf8\uc73c\ub85c \ubcf5\uc81c\ub429\ub2c8\ub2e4.<\/p>\n<p><a title=\"\" href=\"https:\/\/aws.amazon.com\/cli\/\">AWS CLI(\uba85\ub839\uc904 \uc778\ud130\ud398\uc774\uc2a4)<\/a>\ub97c \uc0ac\uc6a9\ud558\uc5ec <span title=\"\">DynamoDB<\/span> \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud558\uae30 \uc704\ud574 \uba3c\uc800 \ubbf8\uad6d \uc11c\ubd80(\uc624\ub808\uace4) \ub9ac\uc804(<code>us-west-2<\/code>)\uc5d0\uc11c \ub85c\uceec \ud14c\uc774\ube14\uc744 \ub9cc\ub4e4\uc5b4 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-bash\">aws dynamodb create-table --region us-west-2 \n                          --table-name demo-global-table \n                          --key-schema AttributeName=id,KeyType=HASH \n                          --attribute-definitions AttributeName=id,AttributeType=S \n                          --billing-mode PAY_PER_REQUEST<\/code><\/pre>\n<p>\uc774 \uba85\ub839\uc740 \ub2e4\uc74c\uc744 \ubc18\ud658\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-json\">{\n    &quot;TableDescription&quot;: {\n        &quot;AttributeDefinitions&quot;: [\n            {\n                &quot;AttributeName&quot;: &quot;id&quot;,\n                &quot;AttributeType&quot;: &quot;S&quot;\n            }\n        ],\n        &quot;TableName&quot;: &quot;demo-global-table&quot;,\n        KeySchema:\n            {\n                &quot;AttributeName&quot;: &quot;id&quot;,\n                &quot;KeyType&quot;: &quot;HASH&quot;\n            }\n        ],\n        &quot;TableStatus&quot;: &quot;CREATING&quot;,\n        &quot;CreationDateTime&quot;: 1570278914.419,\n        &quot;ProvisionedThroughput&quot;: {\n            &quot;NumberOfDecreasesToday&quot;: 0,\n            &quot;ReadCapacityUnits&quot;: 0,\n            &quot;WriteCapacityUnits&quot;: 0\n        },\n        &quot;TableSizeBytes&quot;: 0,\n        &quot;ItemCount&quot;: 0,\n        &quot;TableArn&quot;: &quot;arn:aws:dynamodb:us-west-2:400000000003:table\/demo-global-table&quot;,\n        &quot;TableId&quot;: &quot;0a04bd34-bbff-42dd-ae18-78d05ce641fd&quot;,\n        &quot;BillingModeSummary&quot;: {\n            &quot;BillingMode&quot;: &quot;PAY_PER_REQUEST&quot;\n        }\n    }\n}<\/code><\/pre>\n<p>\ud14c\uc774\ube14\uc774 \uc0dd\uc131\ub418\uba74 \uba87 \uac00\uc9c0 \ud56d\ubaa9\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-bash\">aws dynamodb batch-write-item --region us-west-2 --request-items file:\/\/.\/batch-write-items.json<\/code><\/pre>\n<p>(json \ud30c\uc77c\uc740 <a href=\"https:\/\/gist.github.com\/sebsto\/ceccba054f165c78e5b41368dc55642b\">gist<\/a>\ub85c \uc0ac\uc6a9 \uac00\ub2a5\ud569\ub2c8\ub2e4.)<\/p>\n<p>\uadf8\ub7f0 \ub2e4\uc74c \ubbf8\uad6d \ub3d9\ubd80(\ubc84\uc9c0\ub2c8\uc544 \ubd81\ubd80) \ub9ac\uc804(us-east-1)\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574 \ud14c\uc774\ube14\uc744 \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-bash\">aws dynamodb update-table --region us-west-2 --table-name demo-global-table --add-region us-east-1 (TBD??)<\/code><\/pre>\n<p>\uc774 \uba85\ub839\uc740 \uae34 JSON\uc744 \ubc18\ud658\ud569\ub2c8\ub2e4. \uc8fc\uc758\ub97c \uae30\uc6b8\uc5ec\uc57c \ud558\ub294 \uc18d\uc131\uc785\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-json\">{\n...\n        &quot;TableStatus&quot;: &quot;UPDATING&quot;,\n        &quot;TableSizeBytes&quot;: 124,\n        &quot;ItemCount&quot;: 3,\n        &quot;StreamSpecification&quot;: {\n            &quot;StreamEnabled&quot;: true,\n            &quot;StreamViewType&quot;: &quot;NEW_AND_OLD_IMAGES&quot;\n        },\n        &quot;LatestStreamLabel&quot;: &quot;2019-10-22T19:33:37.819&quot;,\n        &quot;LatestStreamArn&quot;: &quot;arn:aws:dynamodb:us-west-2:400000000003:table\/demo-global-table\/stream\/2019-10-22T19:33:37.819&quot;\n    }\n...\n}<\/code><\/pre>\n<p><a title=\"\" href=\"https:\/\/console.aws.amazon.com\">AWS \uad00\ub9ac \ucf58\uc194<\/a>\uc5d0\uc11c \ub3d9\uc77c\ud55c \uc5c5\ub370\uc774\ud2b8\ub97c \uc801\uc6a9\ud558\uace0 \uc5c5\ub370\uc774\ud2b8\ud560 \ud14c\uc774\ube14\uc744 \uc120\ud0dd\ud55c \ub2e4\uc74c <strong>Global Tables<\/strong>\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-46-39.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-31573\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-46-39.png\" alt=\"\" width=\"934\" height=\"680\" \/><\/a>\uc2a4\ud2b8\ub9ac\ubc0d \ud65c\uc131\ud654\ub294 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc758 \ud544\uc218 \uc694\uac74\uc785\ub2c8\ub2e4. <strong>Enable stream<\/strong>\uc744 \ud074\ub9ad\ud55c \ub2e4\uc74c <strong>Add region<\/strong>\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-47-30.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-31574\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-47-30.png\" alt=\"\" width=\"749\" height=\"430\" \/><\/a>\ubcf5\uc81c\ud560 \ub9ac\uc804\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uba74 <strong>EU West (Ireland)<\/strong>\ub97c \uc120\ud0dd\ud558\uace0 <strong>Create replica<\/strong>\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-49-47.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-31575\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-49-47.png\" alt=\"\" width=\"934\" height=\"342\" \/><\/a><a title=\"\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\">DynamoDB<\/a>\uc5d0\uc11c\ub294 \ube44\ub3d9\uae30\uc801\uc73c\ub85c \ud14c\uc774\ube14\uc744 \uc0c8 \ub9ac\uc804\uc5d0 \ubcf5\uc81c\ud569\ub2c8\ub2e4. <a title=\"\" href=\"https:\/\/console.aws.amazon.com\">AWS Management Console<\/a>\uc5d0\uc11c \ubcf5\uc81c \uc9c4\ud589 \uc0c1\ud669\uc744 \ubaa8\ub2c8\ud130\ub9c1\ud569\ub2c8\ub2e4. \ucd5c\uc885\uc801\uc73c\ub85c \ud14c\uc774\ube14\uc758 \uc0c1\ud0dc\ub294 <strong>Creating<\/strong>\uc5d0\uc11c <strong>Active<\/strong>\ub85c \ubcc0\uacbd\ub429\ub2c8\ub2e4. <code>DescribeTable<\/code> API\ub97c \ud638\ucd9c\ud558\uc5ec \uc0c1\ud0dc\ub97c \uc810\uac80\ud558\uace0 <code>TableStatus = Active<\/code>\ub97c \ud655\uc778\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-51-05.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-31576\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/da4b9237bacccdf19c0760cab7aec4a8359010b0\/2019\/10\/22\/2019-10-22_21-51-05.png\" alt=\"\" width=\"928\" height=\"290\" \/><\/a><\/p>\n<p>\uc7a0\uc2dc \ud6c4\uc5d0 \uc0c8 \ub9ac\uc804\uc5d0\uc11c \ud14c\uc774\ube14\uc744 \ucffc\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<pre><code class=\"lang-bash\">aws dynamodb get-item --region eu-east-1 --table-name demo-global-table --key '{&quot;id&quot; : {&quot;S&quot; : &quot;0123456789&quot;}}'<\/code><\/pre>\n<pre><code class=\"lang-json\">\n{\n    &quot;Item&quot;: {\n        &quot;firstname&quot;: {\n            &quot;S&quot;: &quot;Jeff&quot;\n        },\n        &quot;id&quot;: {\n            &quot;S&quot;: &quot;0123456789&quot;\n        },\n        &quot;lastname&quot;: {\n            &quot;S&quot;: &quot;Barr&quot;\n        }\n    }\n}<\/code><\/pre>\n<p>\uc624\ub298\ubd80\ud130 <strong>\uae30\uc874 \ud14c\uc774\ube14<\/strong>\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc5c5\ub370\uc774\ud2b8\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.&nbsp;\uba87 \uc8fc \ud6c4\uc5d0\ub294 \uc774 \uc0c8\ub85c\uc6b4 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud560 \uc218 \uc788\ub3c4\ub85d <strong>\uae30\uc874 \uae00\ub85c\ubc8c \ud14c\uc774\ube14<\/strong>\uc744 \uc5c5\ub370\uc774\ud2b8\ud560 \uc218 \uc788\ub294 \ub3c4\uad6c\uac00 \ucd9c\uc2dc\ub420 \uac83\uc785\ub2c8\ub2e4. \uc5c5\ub370\uc774\ud2b8 \uc790\uccb4\ub294 \ubd88\uacfc \uba87 \ubd84\uc774\uba74 \uc644\ub8cc\ub429\ub2c8\ub2e4. \uc5c5\ub370\uc774\ud2b8\uac00 \uc9c4\ud589 \uc911\uc778 \ub3d9\uc548\uc5d0\ub3c4 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0\uc11c \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><span style=\"text-decoration: underline\"><strong>\uae30\ud0c0 \uae30\ub2a5 \uac1c\uc120<\/strong><\/span><br \/> \ub370\uc774\ud130 \ub3d9\uae30\ud654\uc5d0 \uc0ac\uc6a9\ub418\ub294 \ub0b4\ubd80 \uba54\ucee4\ub2c8\uc998\ub3c4 \uac04\uc18c\ud654\ub418\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uc804\uc5d0\ub294 \ub370\uc774\ud130\uc758 \ub3d9\uae30\ud654 \uc0c1\ud0dc\ub97c \uc720\uc9c0\ud558\uae30 \uc704\ud574 <span title=\"\">DynamoDB<\/span> \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc5d0\uc11c <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/Streams.html\"><span title=\"\">DynamoDB<\/span> \uc2a4\ud2b8\ub9bc\uc744 \ud65c\uc6a9\ud588\uc73c\uba70<\/a> \uc2a4\ud0a4\ub9c8\uc5d0\uc11c \uc138 \uac00\uc9c0 \uc18d\uc131(<code>aws:rep:*<\/code>)\uc744 \ucd94\uac00\ud588\uc2b5\ub2c8\ub2e4. <span title=\"\">DynamoDB<\/span>\ub294 \uc774\uc81c \uae30\ubcf8\uc801\uc73c\ub85c \ubcf5\uc81c\ub97c \uad00\ub9ac\ud569\ub2c8\ub2e4. \ub370\uc774\ud130\uc5d0 \ub3d9\uae30\ud654 \uc18d\uc131\uc744 \ub178\ucd9c\ud558\uc9c0 \uc54a\uc73c\uba70 \ucd94\uac00\uc801\uc778 \uc4f0\uae30 \uc6a9\ub7c9\uc744 \uc18c\ube44\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n<ul>\n<li>\uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc758 \uac01 \ub9ac\uc804\uc5d0\uc11c \ud55c \ubc88\uc758 \uc4f0\uae30 \uc791\uc5c5\ub9cc \ubc1c\uc0dd\ud558\ubbc0\ub85c \ud14c\uc774\ube14\uc5d0 \ud544\uc694\ud55c \ubcf5\uc81c\ub41c \uc4f0\uae30 \uc6a9\ub7c9\uc758 \uc18c\ube44\uac00 \uac10\uc18c\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc774 \ub54c\ubb38\uc5d0 \ub450 \ubc88\uc9f8 <span title=\"\">DynamoDB<\/span> \uc2a4\ud2b8\ub9bc \ub808\ucf54\ub4dc\ub294 \ub354 \uc774\uc0c1 \uac8c\uc2dc\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\uc774\uc804\uc5d0 \ucc44\uc6cc\uc84c\ub358 \uc138 \uac1c\uc758 <code>aws:rep:*<\/code> \ud2b9\uc131\uc740 \ud56d\ubaa9 \ub808\ucf54\ub4dc\uc5d0 \ub354 \uc774\uc0c1 \uc0bd\uc785\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n<p>\uc774\uc640 \uac19\uc740 \ubcc0\ud654\ub294 \uc571\uc5d0 \ub450 \uac00\uc9c0 \uc601\ud5a5\uc744 \ubbf8\uce69\ub2c8\ub2e4. \uccab\uc9f8, \uae00\ub85c\ubc8c \ud14c\uc774\ube14 \uc0ac\uc6a9 \uc2dc \ub3d9\uae30\ud654 \uad00\ub9ac\uc5d0 \ucd94\uac00\uc801\uc778 \uc4f0\uae30 \uc6a9\ub7c9\uc774 \ud544\uc694\ud558\uc9c0 \uc54a\uc73c\ubbc0\ub85c <span title=\"\">DynamoDB<\/span> \ube44\uc6a9\uc774 \uc808\uac10\ub429\ub2c8\ub2e4. \ub458\uc9f8, \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uc138 \uac00\uc9c0 \uae30\uc220\uc801\uc778 \ud56d\ubaa9(<code>aws:rep:*<\/code>)\uc5d0 \uc758\uc874\ud558\ub294 \uacbd\uc6b0 \uc57d\uac04\uc758 \ucf54\ub4dc \ubcc0\uacbd\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. \ud2b9\ud788, <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/DynamoDBMapper.html\">DynamoDB Mapper<\/a>\ub294 \ud56d\ubaa9 \ub808\ucf54\ub4dc\uc5d0 <code>aws:rep:*<\/code> \uc18d\uc131\uc744 \ud544\uc694\ub85c \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc774\ub7ec\ud55c \ubcc0\uacbd \uc0ac\ud56d\uacfc \ub354\ubd88\uc5b4 \ub2f9\uc0ac\ub294 <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/APIReference\/API_UpdateTable.html\"><code>UpdateTable<\/code><\/a> API\ub3c4 \uc5c5\ub370\uc774\ud2b8\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc758 <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/GSI.html\">GSI(\uae00\ub85c\ubc8c \ubcf4\uc870 \uc778\ub371\uc2a4)<\/a>, <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/HowItWorks.ReadWriteCapacityMode.html\">\uacb0\uc81c \ubaa8\ub4dc<\/a>, <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/EncryptionAtRest.html\">\uc11c\ubc84 \uce21 \uc554\ud638\ud654<\/a> \ub610\ub294 <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/HowItWorks.ReadWriteCapacityMode.html\">\uc4f0\uae30 \uc6a9\ub7c9 \ub2e8\uc704<\/a>\ub97c \uc218\uc815\ud558\ub294 \uc791\uc5c5\uc740 \ubaa8\ub4e0 \ub2e4\ub978 \ubcf5\uc81c\ubcf8\uc5d0 \ube44\ub3d9\uae30\uc801\uc73c\ub85c \uc801\uc6a9\ub429\ub2c8\ub2e4.<\/p>\n<p><span style=\"text-decoration: underline\"><strong>\uac00\uc6a9\uc131<\/strong><\/span><br \/> \ud5a5\uc0c1\ub41c <a title=\"\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\">Amazon DynamoDB<\/a> <a href=\"https:\/\/docs.aws.amazon.com\/amazondynamodb\/latest\/developerguide\/GlobalTables.html\">\uae00\ub85c\ubc8c \ud14c\uc774\ube14<\/a>\uc740 <a title=\"\" href=\"https:\/\/aws.amazon.com\/dynamodb\/\">Amazon DynamoDB<\/a> \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 13\uac1c \ub9ac\uc804\uc5d0\uc11c \uc0ac\uc6a9 \uac00\ub2a5\ud558\uba70 \ud5a5\ud6c4 \ub354 \ub9ce\uc740 \ub9ac\uc804\uc774 \uacc4\ud68d\ub418\uace0 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/aws.amazon.com\/dynamodb\/pricing\/on-demand\/\">\uc694\uae08<\/a>\uc5d0\ub294 \ubcc0\ud654\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ucd94\uac00 \ub9ac\uc804\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \ub9ac\uc18c\uc2a4 \ubc0f \ub9ac\uc804 \uac04 \ub370\uc774\ud130 \uc804\uc1a1\uc5d0 \ub300\ud574\uc11c\ub9cc \ube44\uc6a9\uc744 \uc9c0\ubd88\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uc5c5\ub370\uc774\ud2b8\uc5d0\ub294 \uace0\uac1d\ub4e4\uc758 \uac00\uc7a5 \uc77c\ubc18\uc801\uc778 \ud53c\ub4dc\ubc31\uc774 \ubc18\uc601\ub418\uc5c8\uc73c\uba70 \ud5a5\ud6c4 \ucd94\uac00 \uae30\ub2a5\uc744 \uad6c\ucd95\ud558\uae30 \uc704\ud55c \ud50c\ub7ab\ud3fc\uc73c\ub85c \uc0ac\uc6a9\ub420 \uac83\uc785\ub2c8\ub2e4. \uace0\uac1d \uc5ec\ub7ec\ubd84\uaed8\uc11c \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\uc2dd\uc740 \uc5b4\ub5a0\ud558\uba70 \uc571\uc5d0 \uc911\uc694\ud55c \uc694\uc18c\ub294 \ubb34\uc5c7\uc778\uc9c0 <a href=\"https:\/\/eu-west-1.console.aws.amazon.com\/dynamodb\/home\">\uacc4\uc18d\ud574\uc11c \uc54c\ub824 \uc8fc\uc2ed\uc2dc\uc624<\/a>.<\/p>\n<p><a title=\"Twitter\uc758 Seb\" href=\"https:\/\/twitter.com\/sebsto\">\u2014 seb<\/a><\/p>\n<p>Source: <a href=\"https:\/\/aws.amazon.com\/ko\/blogs\/korea\/new-convert-your-single-region-amazon-dynamodb-tables-to-global-tables\/\" target=\"_blank\" rel=\"noopener noreferrer\">Amazon DynamoDB \uae30\uc874 \ub85c\uceec \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc804\ud658 \uac00\ub2a5<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>Amazon DynamoDB \uae30\uc874 \ub85c\uceec \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc804\ud658 \uac00\ub2a5 \uc218\uc2ed\ub9cc\uc758 AWS \uace0\uac1d\ub4e4\uc774 Amazon DynamoDB\ub97c \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. 2017\ub144\uc5d0\ub294 \uba40\ud2f0 \ub9ac\uc804\uc758 \uba40\ud2f0 \ub9c8\uc2a4\ud130 DynamoDB \ud14c\uc774\ube14\uc744 \ubc30\ud3ec\ud560 \uc218 \uc788\ub294 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \ucd9c\uc2dc\ud588\uc2b5\ub2c8\ub2e4. \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud560 \ub54c, \ud14c\uc774\ube14\uc744 \uc81c\uacf5\ud560 AWS \ud2b9\uc815 \ub9ac\uc804\uc744 \uc9c0\uc815\ud558\uae30\ub9cc \ud558\uba74 \uac01 \ub9ac\uc804\uc5d0 \ub3d9\uc77c\ud55c \ud14c\uc774\ube14\uc744 \uc0dd\uc131\ud558\uace0 \uc9c0\uc18d\uc801\uc778 \ub370\uc774\ud130 \ubcc0\uacbd \ub0b4\uc6a9\uc744 \ud574\ub2f9\ud558\ub294 \ubaa8\ub4e0 \ub9ac\uc804\uc73c\ub85c \uc804\ud30c\ub97c \uc218\ud589\ud569\ub2c8\ub2e4. AWS \uace0\uac1d\uc740 \ub450 \uac00\uc9c0 \uc911\uc694\ud55c \uc774\uc720 \ub54c\ubb38\uc5d0 DynamoDB \uae00\ub85c\ubc8c \ud14c\uc774\ube14\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uccab\uc9f8\ub294 \uc9c0\uc5f0 \uc2dc\uac04\uc774 \uc9e7\uc740 \ud658\uacbd\uc744 \uace0\uac1d\uc5d0\uac8c \uc81c\uacf5\ud558\ub294 \uac83\uc774\uace0, \ub458\uc9f8\ub294 \ubc31\uc5c5 \ub610\ub294 \uc7ac\ud574 \ubcf5\uad6c \ud504\ub85c\uc138\uc2a4\ub97c \uc9c0\uc6d0\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc9c0\uc5f0 \uc2dc\uac04\uc740 \uc815\ubcf4\uac00 \ub124\ud2b8\uc6cc\ud06c\ub97c \ud1b5\ud574 \uc774\ub3d9\ud558\ub294 \ub370 \uac78\ub9ac\ub294 \uc2dc\uac04\uc785\ub2c8\ub2e4. \uc9c0\uc5f0 \uc2dc\uac04\uc774 \uc9e7\uc740 \uc571\uc740 \uace0\uac1d \ucc38\uc5ec\ub3c4\uac00 \ub192\uace0 \ub354 \ub9ce\uc740 \uc218\uc775\uc744 \ucc3d\ucd9c\ud569\ub2c8\ub2e4. \uace0\uac1d\uacfc \uc778\uc811\ud55c \uc5ec\ub7ec \ub9ac\uc804\uc5d0 \ubc31\uc5d4\ub4dc\ub97c \ubc30\ud3ec\ud558\uba74 \uc571\uc758 \uc9c0\uc5f0 \uc2dc\uac04\uc744 \uc904\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \ub9ac\uc804\uc5d0 \ub370\uc774\ud130\uc758 \uc804\uccb4 \uc0ac\ubcf8\uc774 \uc788\uc73c\uba74 \ub9ac\uc804 \uc124\uc815\uc774 \uc190\uc0c1\ub418\uac70\ub098 \ub9e4\uc6b0 \ub4dc\ubb3c\uc9c0\ub9cc \ub9ac\uc804\uc5d0 \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud558\ub294 \uacbd\uc6b0 \ub2e4\ub978 \ub9ac\uc804\uc73c\ub85c \ud2b8\ub798\ud53d\uc744 \uc27d\uac8c \uc804\ud658\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. Amazon CTO\uc778 Werner Vogels <a class=\"mh-excerpt-more\" href=\"https:\/\/jirak.net\/wp\/amazon-dynamodb-%ea%b8%b0%ec%a1%b4-%eb%a1%9c%ec%bb%ac-%ed%85%8c%ec%9d%b4%eb%b8%94%ec%9d%84-%ea%b8%80%eb%a1%9c%eb%b2%8c-%ed%85%8c%ec%9d%b4%eb%b8%94%eb%a1%9c-%ec%a0%84%ed%99%98-%ea%b0%80%eb%8a%a5\/\" title=\"Amazon DynamoDB \uae30\uc874 \ub85c\uceec \ud14c\uc774\ube14\uc744 \uae00\ub85c\ubc8c \ud14c\uc774\ube14\ub85c \uc804\ud658 \uac00\ub2a5\">[ more&#8230; ]<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":34165,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[169],"tags":[656],"class_list":["post-34164","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","tag-aws"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/34164","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/comments?post=34164"}],"version-history":[{"count":1,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/34164\/revisions"}],"predecessor-version":[{"id":34166,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/34164\/revisions\/34166"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/media\/34165"}],"wp:attachment":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/media?parent=34164"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/categories?post=34164"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/tags?post=34164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}