1 00:00:00,000 --> 00:00:04,969 >> [MÜZİK OYUN] 2 00:00:04,969 --> 00:00:06,010 Rick, Houlihan: Pekala. 3 00:00:06,010 --> 00:00:06,600 Herkese merhaba. 4 00:00:06,600 --> 00:00:07,670 Benim adım Rick Houlihan olduğunu. 5 00:00:07,670 --> 00:00:10,330 Ben üst düzey bir anapara değilim AWS de çözümler mimar. 6 00:00:10,330 --> 00:00:14,070 Ben NoSQL odaklanmak ve DynamoDB teknolojileri. 7 00:00:14,070 --> 00:00:16,930 Ben konuşmak için bugün buradayım O hakkında biraz. 8 00:00:16,930 --> 00:00:18,970 >> Benim arka plan öncelikle veri katmanı. 9 00:00:18,970 --> 00:00:21,390 Ben yarısını gelişimini geçirdi kariyer, veritabanı yazma 10 00:00:21,390 --> 00:00:25,930 veri erişimi, çözümleri çeşitli uygulamalar için. 11 00:00:25,930 --> 00:00:30,000 Ben Bulut sanallaştırma oldum yaklaşık 20 yıldır. 12 00:00:30,000 --> 00:00:33,460 Bulut Bulut önce Yani, Biz yarar bilgisayar onu aramak için kullanılır. 13 00:00:33,460 --> 00:00:37,170 Ve fikir, bu gibi oldu PG & E, ne kullanmak için ödeme yaparsınız. 14 00:00:37,170 --> 00:00:38,800 Bugün bulut diyoruz. 15 00:00:38,800 --> 00:00:41,239 >> Ancak yıllar geçtikçe, ben çalıştığım şirketlerin bir çift için 16 00:00:41,239 --> 00:00:42,530 Muhtemelen hiç duymadım. 17 00:00:42,530 --> 00:00:47,470 Ama teknik bir liste derledik başarıları, sana derdim herhalde. 18 00:00:47,470 --> 00:00:51,620 Ben Bulut sistemlerde sekiz patenti bulunmaktadır sanallaştırma, mikroişlemci tasarımı, 19 00:00:51,620 --> 00:00:54,440 karmaşık olay işleme, ve diğer alanlarda da. 20 00:00:54,440 --> 00:00:58,290 >> Bu günlerde Yani, ben NoSQL çoğunlukla odak teknolojiler ve yeni nesil 21 00:00:58,290 --> 00:00:59,450 veri tabanı. 22 00:00:59,450 --> 00:01:03,370 Ve ben gidiyorum genellikle ne var seninle bugün konuşuyor burada olmak. 23 00:01:03,370 --> 00:01:06,030 Yani ne bekleyebilirsiniz Bu oturumdan, 24 00:01:06,030 --> 00:01:08,254 Biz kısa aracılığıyla gidersiniz veri işleme tarihçesi. 25 00:01:08,254 --> 00:01:10,420 O her zaman yararlı olur Biz nereden geldiğini anlamaya 26 00:01:10,420 --> 00:01:12,400 Biz olmamızın sebebi ve nerede olduğumuzu. 27 00:01:12,400 --> 00:01:15,600 Ve biz biraz konuşalım NoSQL teknolojisi hakkında biraz 28 00:01:15,600 --> 00:01:17,500 temel bir açıdan. 29 00:01:17,500 --> 00:01:19,870 >> Biz biraz içine alacak DynamoDB internals. 30 00:01:19,870 --> 00:01:24,350 DynamoDB AWS hayır lezzet. 31 00:01:24,350 --> 00:01:27,340 Bu tamamen yönetilen ve barındırılan NoSQL çözümü. 32 00:01:27,340 --> 00:01:32,420 Ve biz masaya hakkında biraz konuşacağım yapısı, API'ler, veri tipleri, indeksler, 33 00:01:32,420 --> 00:01:35,177 ve iç donanım bazı bu DynamoDB teknolojisi. 34 00:01:35,177 --> 00:01:37,760 Biz tasarım bazı içine alırsınız desenleri ve en iyi uygulamaları. 35 00:01:37,760 --> 00:01:39,968 Sizinle nasıl bahsedeceğiz Bazıları için bu teknolojiyi kullanır 36 00:01:39,968 --> 00:01:41,430 Bugünün uygulamalarının. 37 00:01:41,430 --> 00:01:44,820 Ve sonra biz biraz konuşacağım Evrim veya ortaya çıkışı hakkında 38 00:01:44,820 --> 00:01:48,980 programlamada yeni bir paradigma denilen olay güdümlü uygulamalar 39 00:01:48,980 --> 00:01:51,580 ve DynamoDB de o oynuyor nasıl. 40 00:01:51,580 --> 00:01:54,690 Ve size biraz bırakacağım Bir referans mimarisi tartışması 41 00:01:54,690 --> 00:01:59,540 bu yüzden bazıları hakkında konuşabilirsiniz yollar sen DynamoDB kullanabilirsiniz. 42 00:01:59,540 --> 00:02:04,116 >> Bu yüzden ilk bu soru off-- Ben bir sürü veritabanı ne olduğunu duydum. 43 00:02:04,116 --> 00:02:06,240 Bir sürü insan onlar düşünüyorum Bir veritabanı ne olduğunu biliyorum. 44 00:02:06,240 --> 00:02:08,360 Google'ın size, bu görürsünüz. 45 00:02:08,360 --> 00:02:11,675 Bu tutulan bir veri yapılandırılmış bir set Bir bilgisayar, özellikle de bir o 46 00:02:11,675 --> 00:02:13,600 çeşitli şekillerde ulaşılabilir. 47 00:02:13,600 --> 00:02:16,992 Bunun iyi bir olduğunu varsayalım Modern bir veritabanının tanımı. 48 00:02:16,992 --> 00:02:19,450 Ama ben, çünkü sevmiyorum o birkaç şey ima eder. 49 00:02:19,450 --> 00:02:20,935 Bu yapıyı ifade eder. 50 00:02:20,935 --> 00:02:23,120 Ve bunun bir bilgisayarda olduğunu ima eder. 51 00:02:23,120 --> 00:02:25,750 Ve veritabanları vermedi bilgisayarlarda her zaman var. 52 00:02:25,750 --> 00:02:28,020 Veritabanları aslında birçok yönden var. 53 00:02:28,020 --> 00:02:32,000 >> Bir Yani daha iyi bir tanım Veritabanı böyle bir şeydir. 54 00:02:32,000 --> 00:02:34,786 Bir veritabanı bir organize saklamak, yönetmek için bir mekanizma, 55 00:02:34,786 --> 00:02:35,910 ve bilgi alma. 56 00:02:35,910 --> 00:02:36,868 Bu About.com değil. 57 00:02:36,868 --> 00:02:42,080 Yani ben gerçekten görüşmeler bunun nedeni bu gibi Bir veritabanı deposu olma, 58 00:02:42,080 --> 00:02:44,800 Bir depo bilgi, ille 59 00:02:44,800 --> 00:02:46,780 Bir bilgisayarda oturur bir şey. 60 00:02:46,780 --> 00:02:49,290 Ve tarih boyunca, biz Her zaman bilgisayar olmadı. 61 00:02:49,290 --> 00:02:52,110 >> Şimdi, ben ortalama sorarsanız ne geliştirici bugün 62 00:02:52,110 --> 00:02:54,770 Bir veritabanı, ben olsun cevap. 63 00:02:54,770 --> 00:02:56,070 Somewhere I şeyler sopa olabilir. 64 00:02:56,070 --> 00:02:56,670 Sağ? 65 00:02:56,670 --> 00:02:58,725 Ve bu doğrudur. 66 00:02:58,725 --> 00:02:59,600 Ama talihsiz. 67 00:02:59,600 --> 00:03:02,700 Veritabanı gerçekten Çünkü Modern app temeli. 68 00:03:02,700 --> 00:03:04,810 Bu vakıf var Her uygulama. 69 00:03:04,810 --> 00:03:07,240 Ve bunu nasıl inşa veritabanı nasıl yapı 70 00:03:07,240 --> 00:03:11,750 veri nasıl dikte gidiyor Ölçeklerken uygulama gerçekleştirir. 71 00:03:11,750 --> 00:03:14,640 >> Yani benim işim bugün bir sürü ile ilgili ne 72 00:03:14,640 --> 00:03:17,180 ne zaman geliştiriciler olur Bu yaklaşım 73 00:03:17,180 --> 00:03:19,510 ve sonrasında başa Bir uygulamada bu 74 00:03:19,510 --> 00:03:24,966 Şimdi asıl ötesinde ölçekleme Kötü tasarım niyet ve acı. 75 00:03:24,966 --> 00:03:26,840 Yani umarım sizi Bugün yürüyüp, sen olacak 76 00:03:26,840 --> 00:03:29,010 araçları bir çift var devam edeceğiz senin kemer 77 00:03:29,010 --> 00:03:32,566 bu aynı hataları yapmaktan. 78 00:03:32,566 --> 00:03:33,066 Pekala. 79 00:03:33,066 --> 00:03:36,360 Yani birazcık bahsedelim veritabanı teknolojisinin zaman çizelgesi. 80 00:03:36,360 --> 00:03:38,830 Ben bir okudum düşünüyorum makale değil uzun zaman önce 81 00:03:38,830 --> 00:03:43,020 ve çizgiler, bir şey söyledi çok şiirsel ifadesi var. 82 00:03:43,020 --> 00:03:46,590 O dedi tarih Verilerin işlenmesi olduğunu 83 00:03:46,590 --> 00:03:49,350 Yüksek filigran dolu veri bolluğu. 84 00:03:49,350 --> 00:03:49,920 TAMAM. 85 00:03:49,920 --> 00:03:52,532 Şimdi, ben bu tür doğru sanırım. 86 00:03:52,532 --> 00:03:54,990 Ama ben aslında hiç bir unsur olarak bakmak Tarih aslında doldurulur 87 00:03:54,990 --> 00:03:56,820 Veri basıncının yüksek filigran. 88 00:03:56,820 --> 00:04:00,040 Veri hızı için yutma iner asla. 89 00:04:00,040 --> 00:04:01,360 Bu sadece kadar gider. 90 00:04:01,360 --> 00:04:03,670 >> Ve yenilik oluşur Biz veri basıncı, gördüğünüz 91 00:04:03,670 --> 00:04:07,825 bir veri miktarını Şimdi sisteme geliyor. 92 00:04:07,825 --> 00:04:12,027 Ve bu işlenemeyen verimli zamanında ve maliyet ya. 93 00:04:12,027 --> 00:04:14,110 Başlamadan Ve o zaman Veri basıncına bakmak için. 94 00:04:14,110 --> 00:04:15,920 >> Yani biz baktığımızda İlk veri tabanı, bu 95 00:04:15,920 --> 00:04:17,180 kulağımıza arasında idi biridir. 96 00:04:17,180 --> 00:04:18,310 Hepimiz onunla doğmuş ediyoruz. 97 00:04:18,310 --> 00:04:19,194 Güzel bir veritabanı var. 98 00:04:19,194 --> 00:04:21,110 Bu yüksek kullanılabilirlik vardır. 99 00:04:21,110 --> 00:04:21,959 Her zaman üzerinde. 100 00:04:21,959 --> 00:04:23,930 Sen her zaman alabilirsiniz. 101 00:04:23,930 --> 00:04:24,890 >> Ama tek bir kullanıcı var. 102 00:04:24,890 --> 00:04:26,348 Seninle benim düşüncelerimi paylaşmak olamaz. 103 00:04:26,348 --> 00:04:28,370 Sen benim düşüncelerimi alınamıyor Bunları istediğiniz zaman. 104 00:04:28,370 --> 00:04:30,320 Ve onların abilitiy o kadar iyi değil. 105 00:04:30,320 --> 00:04:32,510 Biz şeyleri unutmak. 106 00:04:32,510 --> 00:04:36,540 Her şimdi ve sonra, bizden biri yaprakları ve başka bir varoluş geçer 107 00:04:36,540 --> 00:04:39,110 ve biz her şeyi kaybetmek Bu veritabanındaki oldu. 108 00:04:39,110 --> 00:04:40,640 Yani tüm bu iyi değil. 109 00:04:40,640 --> 00:04:43,189 >> Ve bu zaman içinde iyi çalıştı biz gün geri vardı 110 00:04:43,189 --> 00:04:46,230 ne zaman biz gerçekten bilmek gerekli tek şey Nereye yarın gidecek 111 00:04:46,230 --> 00:04:49,630 ya da biz en iyi yiyecek toplamak nerede. 112 00:04:49,630 --> 00:04:52,820 Ama biz başladık bir şekilde büyümek için medeniyet ve devlet başladı 113 00:04:52,820 --> 00:04:55,152 vücuda gelmiş, ve işletmeler, gelişmeye başladı 114 00:04:55,152 --> 00:04:57,360 Biz biz fark etmeye başladım biraz daha gerekenler 115 00:04:57,360 --> 00:04:58,210 Bizim baş koymak olabilir. 116 00:04:58,210 --> 00:04:58,870 Pekala? 117 00:04:58,870 --> 00:05:00,410 >> Biz kayıt sistemlerini gerekli. 118 00:05:00,410 --> 00:05:02,220 Biz mümkün veri depolamak gereken yerler gerekiyordu. 119 00:05:02,220 --> 00:05:05,450 Bu yüzden, yazı belgeler başladı kütüphaneler ve arşivler oluşturmak. 120 00:05:05,450 --> 00:05:08,000 Biz geliştirmeye başladı Sistem bir defter muhasebe. 121 00:05:08,000 --> 00:05:12,200 Ve defter sayma sistem , yüzyıllar boyunca dünya koştu 122 00:05:12,200 --> 00:05:15,580 ve belki de bin olarak biz tür noktasına büyüdü 123 00:05:15,580 --> 00:05:18,420 nerede veri yükü aştı bu sistemlerin özelliği 124 00:05:18,420 --> 00:05:19,870 Bunu içermesi mümkün. 125 00:05:19,870 --> 00:05:22,070 >> Ve bu aslında 1880'lerde oldu. 126 00:05:22,070 --> 00:05:22,570 Sağ? 127 00:05:22,570 --> 00:05:24,390 1880 ABD sayımında. 128 00:05:24,390 --> 00:05:26,976 Bu nerede dönüm gerçekten Modern veri işleme etmektedir. 129 00:05:26,976 --> 00:05:28,850 Bu noktada olduğunu veri bu miktar, 130 00:05:28,850 --> 00:05:32,060 Bu tarafından toplanan ediliyordu ABD hükümeti noktası var 131 00:05:32,060 --> 00:05:34,005 nerede işlemek için sekiz yıl sürdü. 132 00:05:34,005 --> 00:05:36,350 >> Şimdi, sekiz senedir olarak Eğer, sayım biliyorum 133 00:05:36,350 --> 00:05:39,180 çalışır, her 10 senedir o yüzden Oldukça açık o zaman biz 134 00:05:39,180 --> 00:05:41,419 1890 nüfus sayımını var veri miktarı o 135 00:05:41,419 --> 00:05:43,210 işlenecek gidiyordu hükümet tarafından oldu 136 00:05:43,210 --> 00:05:46,335 10 yıldan fazla olacak, öyle başlatılan yeni nüfus sayımına alacaktı. 137 00:05:46,335 --> 00:05:47,250 Bu bir sorun oldu. 138 00:05:47,250 --> 00:05:49,000 >> Yani adam Herman adında Hollerith birlikte geldi 139 00:05:49,000 --> 00:05:52,640 ve o birim rekor yumruk icat Kartlar, delikli kart okuyucu, delikli kart 140 00:05:52,640 --> 00:05:58,420 tab ve harmanlama ve Bu teknoloji için mekanizmalar. 141 00:05:58,420 --> 00:06:01,860 Ve o oluşan bu şirket Zaman, diğerleri bir çift ile birlikte, 142 00:06:01,860 --> 00:06:05,450 aslında oldu bir direklerinden biri bugün bildiğimiz küçük şirket IBM çağırdı. 143 00:06:05,450 --> 00:06:08,417 >> Böylece IBM aslen oldu Veritabanı iş. 144 00:06:08,417 --> 00:06:09,750 Ve bu yaptıklarını gerçekten. 145 00:06:09,750 --> 00:06:11,110 Onlar veri işleme yaptılar. 146 00:06:11,110 --> 00:06:15,400 >> Yumruk çoğalması böylece kartları, ustaca bir mekanizma 147 00:06:15,400 --> 00:06:18,560 bu kaldıraç edememek teknoloji sıralı sonuç kümelerini yoklamak için. 148 00:06:18,560 --> 00:06:20,726 Bu resimde görebilirsiniz orada biz biraz-- var 149 00:06:20,726 --> 00:06:23,970 Biraz small-- ama gördüğünüz Çok ustaca mekanik mekanizması 150 00:06:23,970 --> 00:06:26,970 Biz delikli kart güverte nerede. 151 00:06:26,970 --> 00:06:28,720 Ve birilerinin alma Biraz tornavida 152 00:06:28,720 --> 00:06:31,400 aracılığı ile yapışmasını yuvaları ve yukarı kaldırarak 153 00:06:31,400 --> 00:06:34,820 o maçı almak için sıralanmış sonuçlar ayarlayın. 154 00:06:34,820 --> 00:06:36,270 >> Bu bir kümelenme olduğunu. 155 00:06:36,270 --> 00:06:38,690 Biz bu her zaman yapmak Bilgisayarda Bugün 156 00:06:38,690 --> 00:06:40,100 veritabanında bunu nerede. 157 00:06:40,100 --> 00:06:41,620 Biz doğru, elle yapmak için kullanılan? 158 00:06:41,620 --> 00:06:42,994 İnsanlar bunları birlikte koydu. 159 00:06:42,994 --> 00:06:45,440 Ve yayılması oldu Bu yumruk kartları 160 00:06:45,440 --> 00:06:50,070 Biz denilen hangi veri davul içine ve veri makaraları, kağıt şerit. 161 00:06:50,070 --> 00:06:55,980 >> Veri işleme endüstrisi aldı Oyuncu piyano bir ders. 162 00:06:55,980 --> 00:06:57,855 Oyuncu geri piyanolar Yüzyılın dönüş 163 00:06:57,855 --> 00:07:02,100 yuvaları ile kağıt makaraları kullanmak için kullanılır üzerinde oynamak için hangi tuşları söylemek. 164 00:07:02,100 --> 00:07:05,380 Bu teknoloji uyarlanmıştır Yani Sonunda, dijital veri depolamak için 165 00:07:05,380 --> 00:07:08,070 Onlar bu verileri koymak olabilir çünkü Bu kağıt şerit makaralar üzerine. 166 00:07:08,070 --> 00:07:10,870 >> Şimdi, bir sonucu olarak, veri nasıl actually-- oldu 167 00:07:10,870 --> 00:07:14,960 Bu veriler doğrudan erişebilirsiniz oldu Eğer depolanan nasıl bağlıdır. 168 00:07:14,960 --> 00:07:17,825 Yani bir kaset verileri koyarsanız, Ben doğrusal veri erişim vardı. 169 00:07:17,825 --> 00:07:20,475 Ben bütün rulo zorunda bant tüm verilere erişmek için. 170 00:07:20,475 --> 00:07:22,600 Ben yumruk veri koyarsanız Kartlar, bunu erişebilir 171 00:07:22,600 --> 00:07:26,270 Biraz daha rastgele moda, belki değil en kısa sürede. 172 00:07:26,270 --> 00:07:30,770 >> Ama nasıl sınırlamalar vardı biz depolanan nasıl dayalı verilere erişim. 173 00:07:30,770 --> 00:07:32,890 Ve böylece bu bir sorun olduğunu 50'li girecek. 174 00:07:32,890 --> 00:07:37,890 Yine, biz biz olarak görmek başlayabilirsiniz işlemek için yeni teknolojiler geliştirmek 175 00:07:37,890 --> 00:07:41,670 Veri, sağ, yukarı açılır yeni çözümler kapı, 176 00:07:41,670 --> 00:07:45,852 Yeni programlar için, yeni Bu veriler için uygulamalar. 177 00:07:45,852 --> 00:07:47,810 Ve gerçekten, yönetişim neden olmuş olabilir 178 00:07:47,810 --> 00:07:49,435 neden biz bu sistemlerin bazıları geliştirdi. 179 00:07:49,435 --> 00:07:52,290 Ama iş hızla oldu Evrim arkasında sürücü 180 00:07:52,290 --> 00:07:54,720 Modern veritabanı ve modern bir dosya sistemi. 181 00:07:54,720 --> 00:07:56,870 >> Sonraki şey Böylece 50'lerde geldi oldu 182 00:07:56,870 --> 00:08:00,780 Dosya sistemi ve oldu rasgele erişim depolama gelişimi. 183 00:08:00,780 --> 00:08:02,050 Bu güzel oldu. 184 00:08:02,050 --> 00:08:06,230 Şimdi, aniden, biz koyabilirsiniz bizim Bu sabit diskler üzerinde herhangi bir yere dosyaları 185 00:08:06,230 --> 00:08:09,760 ve biz rastgele bu verilere erişebilir. 186 00:08:09,760 --> 00:08:11,950 Bunu ayrıştırmak dosyaları dışarı bilgi. 187 00:08:11,950 --> 00:08:14,920 Ve biz Dünyanın en tüm çözüldü veri işleme ile ilgili sorunlar. 188 00:08:14,920 --> 00:08:17,550 >> Ve bu yaklaşık 20 kadar ya da Evrim kadar 30 yıl 189 00:08:17,550 --> 00:08:22,100 ilişkisel veritabanı, hangi Dünya artık biz karar verdiğinde ise 190 00:08:22,100 --> 00:08:27,940 yenilgiler bir depo olması gerekir dosyanın arasında veri yayılma 191 00:08:27,940 --> 00:08:29,540 biz inşa ettik sistemler. Sağ? 192 00:08:29,540 --> 00:08:34,270 Çok sayıda dağıtılmış çok fazla veri yerler, veri de-çoğaltılması, 193 00:08:34,270 --> 00:08:37,120 ve depolama maliyeti büyük oldu. 194 00:08:37,120 --> 00:08:43,760 >> 70'lerde, en pahalı kaynak Bir bilgisayar olduğu depolama oldu. 195 00:08:43,760 --> 00:08:46,200 İşlemci oldu Sabit maliyet olarak inceledi. 196 00:08:46,200 --> 00:08:49,030 Ben kutu satın aldığınızda, CPU bazı iş yapar. 197 00:08:49,030 --> 00:08:51,960 Bu ister iplik için gidiyor aslında çalışma ya da değil. 198 00:08:51,960 --> 00:08:53,350 Bu gerçekten bir batık maliyet var. 199 00:08:53,350 --> 00:08:56,030 >> Ama ne bir olarak bana maliyeti iş depolama. 200 00:08:56,030 --> 00:09:00,020 Gelecek daha fazla disk satın almak varsa ay, ben ödemek gerçek bir maliyet var. 201 00:09:00,020 --> 00:09:01,620 Ve depolama pahalıdır. 202 00:09:01,620 --> 00:09:05,020 >> Şimdi ileri 40 yıl ve biz farklı bir sorunumuz var. 203 00:09:05,020 --> 00:09:10,020 Hesaplamak artık En pahalı bir kaynak. 204 00:09:10,020 --> 00:09:11,470 Depolama ucuz. 205 00:09:11,470 --> 00:09:14,570 Biz herhangi bir yere gidebilir demek bulut ve biz ucuz depolama bulabilirsiniz. 206 00:09:14,570 --> 00:09:17,190 Ama ne bulamıyorum ucuz hesaplama olduğunu. 207 00:09:17,190 --> 00:09:20,700 >> Bugünün evrimi So teknoloji, veritabanı teknolojisi, 208 00:09:20,700 --> 00:09:23,050 gerçekten etrafında odaklanmıştır dağıtık veritabanları 209 00:09:23,050 --> 00:09:26,960 Bu muzdarip yok ölçek aynı tip 210 00:09:26,960 --> 00:09:29,240 İlişkisel veritabanlarının sınırlamalar. 211 00:09:29,240 --> 00:09:32,080 Biz hakkında biraz konuşacağım aslında ne anlama geldiğini. 212 00:09:32,080 --> 00:09:34,760 >> Ancak nedenlerinden biri bu-- biz arkasında sürücü 213 00:09:34,760 --> 00:09:38,290 Veri basıncı hakkında konuştuk. 214 00:09:38,290 --> 00:09:41,920 Veri basıncı şey Bu yenilik sürücüler. 215 00:09:41,920 --> 00:09:44,610 Ve bakıyorum eğer Son beş yılda, 216 00:09:44,610 --> 00:09:48,180 Bu hangi veri grafiğidir Genel işletme genelinde yük 217 00:09:48,180 --> 00:09:49,640 son beş yıl içinde gibi görünüyor. 218 00:09:49,640 --> 00:09:52,570 >> Ve Genel kural Bu days-- Eğer Google-- giderseniz 219 00:09:52,570 --> 00:09:55,290 Verilerin 90% olduğu Bugün saklamak, ve oldu 220 00:09:55,290 --> 00:09:57,330 son iki yıl içinde üretilen. 221 00:09:57,330 --> 00:09:57,911 TAMAM. 222 00:09:57,911 --> 00:09:59,410 Şimdi, bu yeni bir eğilim değil. 223 00:09:59,410 --> 00:10:01,230 Bu oldu bir eğilim 100 yıl için dışarı gidiyor. 224 00:10:01,230 --> 00:10:03,438 Hiç Herman Hollerith beri punch kart geliştirdi, 225 00:10:03,438 --> 00:10:08,040 Biz veri depoları inşa ettik ve olağanüstü hızlarda veri toplama. 226 00:10:08,040 --> 00:10:10,570 >> Yani son 100 yıldır, Bu eğilim gördüm. 227 00:10:10,570 --> 00:10:11,940 Yani değiştirmek için gitmiyor. 228 00:10:11,940 --> 00:10:14,789 İleriye dönük olarak, biz görmeye gidiyoruz Bu, değilse bir hızlandırılmış eğilim. 229 00:10:14,789 --> 00:10:16,330 Ve bu neye benzediğini görebilirsiniz. 230 00:10:16,330 --> 00:10:23,510 >> 2010 yılında bir iş vardı varsa yönetimi altında veri terabayt 231 00:10:23,510 --> 00:10:27,080 Onlar anlamına geliyor bugün veri 6,5 petabayt yönetimi. 232 00:10:27,080 --> 00:10:30,380 Yani 6500 kat daha fazla veri var. 233 00:10:30,380 --> 00:10:31,200 Ve bunu biliyorum. 234 00:10:31,200 --> 00:10:33,292 Ben her gün bu işletmeler ile çalışır. 235 00:10:33,292 --> 00:10:35,000 Beş yıl önce, ben şirketlere konuşmak istiyorum 236 00:10:35,000 --> 00:10:38,260 ne bir ağrı hakkında benimle kim konuşmak istiyorum verinin terabayt yönetmektir. 237 00:10:38,260 --> 00:10:39,700 Ve onlar konuşmak istiyorum Gördüğümüz nasıl bana 238 00:10:39,700 --> 00:10:41,825 Bu muhtemelen gidiyor Bir petabayt ya da iki olmak üzere 239 00:10:41,825 --> 00:10:43,030 bir kaç yıl içinde. 240 00:10:43,030 --> 00:10:45,170 >> Bunlar aynı şirketler Ben ile toplantı yapıyorum, bugün, 241 00:10:45,170 --> 00:10:48,100 ve onlar benimle konuşuyor Sorun yönetmek orada yaşıyorsanız 242 00:10:48,100 --> 00:10:51,440 on, veri 20 petabayt. 243 00:10:51,440 --> 00:10:53,590 Patlaması Yani endüstrisinde veri 244 00:10:53,590 --> 00:10:56,670 muazzam yönlendirdiğini Daha iyi çözümler için gereklidir. 245 00:10:56,670 --> 00:11:00,980 Ve ilişkisel veritabanı Sadece talebe kadar yaşayan değil. 246 00:11:00,980 --> 00:11:03,490 >> Ve böylece lineer var Veri basıncı arasındaki korelasyon 247 00:11:03,490 --> 00:11:05,210 ve teknik yenilik. 248 00:11:05,210 --> 00:11:07,780 Tarih bize göstermiştir Bu, o zaman, 249 00:11:07,780 --> 00:11:11,090 zaman veri hacmi İşlenmiş gereken 250 00:11:11,090 --> 00:11:15,490 Sistemin kapasitesini aştığı makul bir süre içinde işlemek için 251 00:11:15,490 --> 00:11:18,870 veya makul bir maliyetle, Daha sonra yeni teknolojiler 252 00:11:18,870 --> 00:11:21,080 Bu sorunları çözmek için icat edilir. 253 00:11:21,080 --> 00:11:24,090 Bu yeni teknolojiler, sırayla, kapıyı aç 254 00:11:24,090 --> 00:11:27,840 sorunlar başka bir dizi, hangi daha fazla veri topluyor. 255 00:11:27,840 --> 00:11:29,520 >> Şimdi, bu durdurmak için gitmiyoruz. 256 00:11:29,520 --> 00:11:30,020 Sağ? 257 00:11:30,020 --> 00:11:31,228 Biz bu durdurmak için gitmiyoruz. 258 00:11:31,228 --> 00:11:31,830 Neden? 259 00:11:31,830 --> 00:11:35,520 Her şeyi bilemeyiz, çünkü evrende bilmek var. 260 00:11:35,520 --> 00:11:40,510 Ve sürece biz, hayatta oldum olarak insanın tarih boyunca, 261 00:11:40,510 --> 00:11:43,440 biz her zaman daha fazla şey öğrenmek tahrik var. 262 00:11:43,440 --> 00:11:49,840 >> Bu yüzden biz hareket her inç gibi görünüyor Bilimsel keşif yolda, 263 00:11:49,840 --> 00:11:54,620 Biz veri miktarını katlanarak artıyor Biz katlanarak işlemek gerektiğini 264 00:11:54,620 --> 00:11:59,920 Biz daha fazla ve daha fazla ortaya çıkarmak olarak hayatın işleyişinin, 265 00:11:59,920 --> 00:12:04,530 evren nasıl çalıştığıyla ilgili yaklaşık bilimsel keşif sürüş 266 00:12:04,530 --> 00:12:06,440 ve buluş, Bugün yapıyoruz. 267 00:12:06,440 --> 00:12:09,570 Veri hacmi sadece sürekli artar. 268 00:12:09,570 --> 00:12:12,120 Yani başa edememek Bu sorun çok büyük. 269 00:12:12,120 --> 00:12:14,790 270 00:12:14,790 --> 00:12:17,410 >> Şeylerden biri So Biz NoSQL neden olarak görünüyor? 271 00:12:17,410 --> 00:12:19,200 Nasıl NoSQL Bu sorunu çözmek nedir? 272 00:12:19,200 --> 00:12:24,980 Peki, ilişkisel veri tabanları, Yapılandırılmış sorgu dili, 273 00:12:24,980 --> 00:12:28,600 SQL-- gerçekten bir yapı var İlişkisel bu şeyler database-- 274 00:12:28,600 --> 00:12:30,770 depolama için optimize edilmiş. 275 00:12:30,770 --> 00:12:33,180 >> 70'lerde, yine Disk pahalıdır. 276 00:12:33,180 --> 00:12:36,990 Depolama sağlama egzersiz kurumsal hiç bitmeyen olduğunu. 277 00:12:36,990 --> 00:12:37,490 Biliyorum. 278 00:12:37,490 --> 00:12:38,020 Ben yaşadım. 279 00:12:38,020 --> 00:12:41,250 Ben bir depolama sürücüleri yazdı Enterprised superserver şirketi 280 00:12:41,250 --> 00:12:42,470 geri 90'larda. 281 00:12:42,470 --> 00:12:45,920 Ve alt satırda başka bozucu olduğunu Depolama dizisi sadece bir şey olduğunu 282 00:12:45,920 --> 00:12:47,600 işletmedeki her gün oldu. 283 00:12:47,600 --> 00:12:49,030 Ve bu hiçbir zaman durdu. 284 00:12:49,030 --> 00:12:52,690 Yüksek yoğunluklu depolama, talep Yüksek yoğunluklu depolama için, 285 00:12:52,690 --> 00:12:56,340 ve daha verimli depolama için durdu asla devices--. 286 00:12:56,340 --> 00:13:00,160 >> Ve NoSQL büyük bir teknolojidir veriyi normalleştirir çünkü. 287 00:13:00,160 --> 00:13:02,210 Bu veri de-çoğaltır. 288 00:13:02,210 --> 00:13:07,180 Bir yapıda veri koyar Her erişim desen agnostik olduğunu. 289 00:13:07,180 --> 00:13:11,600 Çoklu uygulamalar söz vurabilir SQL veritabanı, ad hoc sorguları çalıştırmak, 290 00:13:11,600 --> 00:13:15,950 ve şekil veri almak onlar Onların iş yükleri için işlemek gerekir. 291 00:13:15,950 --> 00:13:17,570 Bu fantastik geliyor. 292 00:13:17,570 --> 00:13:21,350 Ama alt satırda herhangi ile Sistem, bu her şeyi agnostik olmadığını, 293 00:13:21,350 --> 00:13:23,500 hiçbir şey için optimize edilmiştir. 294 00:13:23,500 --> 00:13:24,050 Tamam mı? 295 00:13:24,050 --> 00:13:26,386 >> Ve biz ne olsun ilişkisel veritabanı. 296 00:13:26,386 --> 00:13:27,510 Bu depolama için optimize edilmiş. 297 00:13:27,510 --> 00:13:28,280 Bu normalize var. 298 00:13:28,280 --> 00:13:29,370 Bu ilişkisel değil. 299 00:13:29,370 --> 00:13:31,660 Bu ad hoc sorguları destekler. 300 00:13:31,660 --> 00:13:34,000 Ve bu ve dikey ölçekler. 301 00:13:34,000 --> 00:13:39,030 >> Ben daha büyük bir SQL veritabanı almak gerekiyorsa ya da daha güçlü bir SQL veritabanı, 302 00:13:39,030 --> 00:13:41,090 Ben demir daha büyük bir parça satın almak gidin. 303 00:13:41,090 --> 00:13:41,600 Tamam mı? 304 00:13:41,600 --> 00:13:44,940 Ben müşterilerinin çok çalıştık büyük yükseltmeleri yoluyla olmuştur 305 00:13:44,940 --> 00:13:48,340 Onların SQL altyapısında sadece Altı ay sonra bulmak için, 306 00:13:48,340 --> 00:13:49,750 yine duvara vuruyorlar. 307 00:13:49,750 --> 00:13:55,457 Ve Oracle veya MSSQL cevap veya başkası daha büyük bir kutu olsun. 308 00:13:55,457 --> 00:13:58,540 Peki er ya da geç, bir satın alamazsınız kutu büyük ve gerçek bir sorun. 309 00:13:58,540 --> 00:14:00,080 Biz aslında bir şeyleri değiştirmek gerekiyor. 310 00:14:00,080 --> 00:14:01,080 Peki bu nasıl çalışır? 311 00:14:01,080 --> 00:14:06,560 Bu çevrimdışı için iyi çalışır analitik, OLAP tipi iş yükleri. 312 00:14:06,560 --> 00:14:08,670 SQL nereye ait Ve bu gerçekten. 313 00:14:08,670 --> 00:14:12,540 Şimdi, birçok çevrimiçi bugün kullanılan işlem işleme tipi 314 00:14:12,540 --> 00:14:13,330 uygulamaları. 315 00:14:13,330 --> 00:14:16,460 Ve en gayet güzel çalışıyor kullanımı belli bir düzeyde, 316 00:14:16,460 --> 00:14:18,670 ama sadece ölçek değil NoSQL yaptığı yol. 317 00:14:18,670 --> 00:14:20,660 Ve biz biraz konuşalım Bu yüzden hakkında biraz. 318 00:14:20,660 --> 00:14:23,590 >> Şimdi, NoSQL, diğer taraftan, Daha fazla bilgi işlem için optimize edilmiştir. 319 00:14:23,590 --> 00:14:24,540 Tamam mı? 320 00:14:24,540 --> 00:14:26,830 O kadar agnostik değil erişim deseni. 321 00:14:26,830 --> 00:14:31,620 Biz de-normalize dediğimiz mı yapı veya bir hiyerarşik yapı. 322 00:14:31,620 --> 00:14:35,000 Ilişkisel bir veritabanında veri Birden fazla tablodan araya 323 00:14:35,000 --> 00:14:36,850 İhtiyacınız görünümünü üretmek için. 324 00:14:36,850 --> 00:14:40,090 Bir NoSQL veri tabanında veriler bir belge içinde saklanır 325 00:14:40,090 --> 00:14:42,100 hiyerarşik yapısını içermektedir. 326 00:14:42,100 --> 00:14:45,670 Normal olacağını tüm veriler bu görünüm elde etmek için bir araya 327 00:14:45,670 --> 00:14:47,160 tek bir belge saklanır. 328 00:14:47,160 --> 00:14:50,990 Ve biz hakkında biraz konuşacağım nasıl çizelgeleri bir çift çalışır. 329 00:14:50,990 --> 00:14:55,320 >> Ama burada fikir depolamak olduğunu Bu örneği görünümler gibi veri. 330 00:14:55,320 --> 00:14:56,410 Tamam mı? 331 00:14:56,410 --> 00:14:58,610 Yatay ölçek. 332 00:14:58,610 --> 00:14:59,556 Sağ? 333 00:14:59,556 --> 00:15:02,100 Ben artırmak gerekiyorsa Benim NoSQL küme boyutu, 334 00:15:02,100 --> 00:15:03,700 Ben daha büyük bir kutu almak gerekmez. 335 00:15:03,700 --> 00:15:05,200 Ben başka bir kutu olsun. 336 00:15:05,200 --> 00:15:07,700 Ve ben, birlikte bu küme ve ben bu verileri shard olabilir. 337 00:15:07,700 --> 00:15:10,780 Biz hakkında biraz konuşacağız sharding ne olmak 338 00:15:10,780 --> 00:15:14,270 Bu veritabanını ölçekli mümkün Birden fazla fiziksel cihazlar arasında 339 00:15:14,270 --> 00:15:18,370 ve bariyer kaldırmak dikey ölçek beni gerektirir. 340 00:15:18,370 --> 00:15:22,080 >> Bu yüzden gerçekten çevrimiçi için yerleşik işlem ve ölçek. 341 00:15:22,080 --> 00:15:25,480 Büyük bir ayrım var Burada raporlama arasında, değil mi? 342 00:15:25,480 --> 00:15:27,810 Raporlama, bilmiyorum soruları ben soracağım. 343 00:15:27,810 --> 00:15:28,310 Sağ? 344 00:15:28,310 --> 00:15:30,570 Reporting-- birisi itibaren ise Benim pazarlama departmanı 345 00:15:30,570 --> 00:15:34,520 Benim müşterilerinin kaç sadece- istiyor Bu özel özelliğine sahip olan 346 00:15:34,520 --> 00:15:37,850 Bilmiyorum bu day-- aldım ne sormak için gidiyoruz sorgulayabilirsiniz. 347 00:15:37,850 --> 00:15:39,160 Yani agnostik olmak gerekir. 348 00:15:39,160 --> 00:15:41,810 >> Şimdi, online olarak işlem uygulaması, 349 00:15:41,810 --> 00:15:43,820 Ben soruyorum sorular biliyorum. 350 00:15:43,820 --> 00:15:46,581 Ben uygulama inşa çok özel bir iş akışı. 351 00:15:46,581 --> 00:15:47,080 Tamam mı? 352 00:15:47,080 --> 00:15:50,540 Ben verileri optimize Yani eğer Bu iş akışını desteklemek için saklamak, 353 00:15:50,540 --> 00:15:52,020 Daha hızlı olacak. 354 00:15:52,020 --> 00:15:55,190 Ve bu yüzden NoSQL can var Gerçekten teslimatı hızlandırmak 355 00:15:55,190 --> 00:15:57,710 hizmetlerin bu tip. 356 00:15:57,710 --> 00:15:58,210 Pekala. 357 00:15:58,210 --> 00:16:00,501 >> Yani biz içine almak için gidiyoruz Burada teori biraz. 358 00:16:00,501 --> 00:16:03,330 Ve bazılarınız, gözlerin biraz geri almak olabilir. 359 00:16:03,330 --> 00:16:06,936 Ama tutmaya çalışacağım Ben mümkün olduğunca yüksek seviyede. 360 00:16:06,936 --> 00:16:08,880 Projede iseniz Yani yönetimi, var 361 00:16:08,880 --> 00:16:12,280 Bir yapı denilen kısıtlamaların üçgeni. 362 00:16:12,280 --> 00:16:12,936 TAMAM. 363 00:16:12,936 --> 00:16:16,060 Kısıtlar emirlerine üçgeni Eğer her şeyi her zaman sahip olamaz. 364 00:16:16,060 --> 00:16:17,750 Senin pasta var ve o çok yiyemez. 365 00:16:17,750 --> 00:16:22,310 Yani proje yönetimi, bu üçgen kısıtlamaları, sen ucuz olabilir olduğu 366 00:16:22,310 --> 00:16:24,710 Eğer hızlı olabilir ya da bunu iyi olabilir. 367 00:16:24,710 --> 00:16:25,716 İkisini seç. 368 00:16:25,716 --> 00:16:27,090 Eğer üçünü olamaz çünkü. 369 00:16:27,090 --> 00:16:27,460 Sağ? 370 00:16:27,460 --> 00:16:27,820 TAMAM. 371 00:16:27,820 --> 00:16:28,920 >> Yani bu çok duymak. 372 00:16:28,920 --> 00:16:31,253 Bu, üçlü kısıt var üçlü kısıt üçgen, 373 00:16:31,253 --> 00:16:34,420 veya demir üçgen oftentimes-- olduğunu Eğer proje yöneticileri konuşmak, 374 00:16:34,420 --> 00:16:35,420 onlar bu konuda konuşacağız. 375 00:16:35,420 --> 00:16:37,640 Şimdi, veri tabanları var Kendi demir üçgen. 376 00:16:37,640 --> 00:16:40,350 Ve Verilerin demir üçgen Biz CAP teoremi diyoruz. 377 00:16:40,350 --> 00:16:41,580 Tamam mı? 378 00:16:41,580 --> 00:16:43,770 >> CAP teoremi dikte nasıl veritabanları işletmek 379 00:16:43,770 --> 00:16:45,627 çok özel koşullar altında. 380 00:16:45,627 --> 00:16:47,460 Ve biz hakkında konuşacağım Bu durum ne. 381 00:16:47,460 --> 00:16:52,221 Ama üçgenin üç puan, bu yüzden, C'dir, tutarlılık konuşmak için. 382 00:16:52,221 --> 00:16:52,720 Tamam mı? 383 00:16:52,720 --> 00:16:56,760 Yani TKP, tutarlılık tüm demektir veritabanına erişebilir istemcileri 384 00:16:56,760 --> 00:16:59,084 her zaman çok olacaktır Verilerin tutarlı görünümü. 385 00:16:59,084 --> 00:17:00,750 Kimse iki farklı şeyler görmek. 386 00:17:00,750 --> 00:17:01,480 Tamam mı? 387 00:17:01,480 --> 00:17:04,020 Ben veritabanı görürseniz, Ben aynı görünüm görüyorum 388 00:17:04,020 --> 00:17:06,130 Benim ortağı olarak görmektedir kim aynı veritabanı. 389 00:17:06,130 --> 00:17:07,470 Bu tutarlılık var. 390 00:17:07,470 --> 00:17:12,099 >> Durumu demektir ki, eğer veritabanı çevrimiçi, bu ulaşılabilir eğer, 391 00:17:12,099 --> 00:17:14,760 tüm istemcilerin hep olacak ki okumak ve yazmak mümkün. 392 00:17:14,760 --> 00:17:15,260 Tamam mı? 393 00:17:15,260 --> 00:17:17,010 Yani her müşteri o veritabanı okuyabilirsiniz 394 00:17:17,010 --> 00:17:18,955 Her zaman mümkün okuma olacak Veri ve yazma veri. 395 00:17:18,955 --> 00:17:21,819 Ve eğer durum buysa, o kullanılabilir bir sistemdir. 396 00:17:21,819 --> 00:17:24,230 >> Ve Üçüncü nokta ne olduğunu Biz bölüm tolerans diyoruz. 397 00:17:24,230 --> 00:17:24,730 Tamam mı? 398 00:17:24,730 --> 00:17:28,160 Bölme tolerans araçları sistem iyi çalışır 399 00:17:28,160 --> 00:17:32,000 fiziksel ağ rağmen Düğümler arasındaki bölmeler. 400 00:17:32,000 --> 00:17:32,760 Tamam mı? 401 00:17:32,760 --> 00:17:36,270 Yani kümedeki düğümler olamaz birbirleriyle konuşmak, ne olur? 402 00:17:36,270 --> 00:17:36,880 Pekala. 403 00:17:36,880 --> 00:17:39,545 >> Yani ilişkisel veritabanları choose-- Bu iki seçebilirsiniz. 404 00:17:39,545 --> 00:17:40,045 TAMAM. 405 00:17:40,045 --> 00:17:43,680 Yani ilişkisel veritabanları seçim tutarlı ve kullanılabilir olması. 406 00:17:43,680 --> 00:17:47,510 Bölüm arasında olursa veri deposunda DataNodes, 407 00:17:47,510 --> 00:17:48,831 Veritabanı çöker. 408 00:17:48,831 --> 00:17:49,330 Sağ? 409 00:17:49,330 --> 00:17:50,900 Sadece iner. 410 00:17:50,900 --> 00:17:51,450 TAMAM. 411 00:17:51,450 --> 00:17:54,230 >> Ve bu onların neden olduğu Daha büyük kutuları ile büyümek. 412 00:17:54,230 --> 00:17:54,730 Sağ? 413 00:17:54,730 --> 00:17:58,021 Hayır-- genellikle bir küme var, çünkü Veritabanı, pek çoğunun orada değil 414 00:17:58,021 --> 00:17:59,590 o şekilde işletmek. 415 00:17:59,590 --> 00:18:03,019 Ama en veritabanları ölçek dikey tek bir kutu içinde. 416 00:18:03,019 --> 00:18:05,060 Olmaları gerekir çünkü tutarlı ve kullanılabilir. 417 00:18:05,060 --> 00:18:10,320 Bir bölüm enjekte edilecek olursa, o zaman bir seçim yapmak zorunda kalacak. 418 00:18:10,320 --> 00:18:13,720 Sen arasında bir seçim yapmak zorunda tutarlı ve kullanılabilir olması. 419 00:18:13,720 --> 00:18:16,080 >> Ve bu NoSQL veritabanları ne var. 420 00:18:16,080 --> 00:18:16,580 Pekala. 421 00:18:16,580 --> 00:18:20,950 Bu yüzden, bir NoSQL veri tabanı, bu İki çeşit olarak geliyor. 422 00:18:20,950 --> 00:18:22,990 Biz, iyi have-- Birçok tatlar geliyor, 423 00:18:22,990 --> 00:18:26,140 ama iki temel ile geliyor ne characteristics-- 424 00:18:26,140 --> 00:18:30,050 Biz CP veritabanı veya a çağırır tutarlı ve bölme toleransı 425 00:18:30,050 --> 00:18:31,040 sistemi. 426 00:18:31,040 --> 00:18:34,930 Bu adamlar seçim yapmak o zaman düğümleri, birbirleri ile temas kaybı 427 00:18:34,930 --> 00:18:37,091 Biz izin gitmiyoruz insanlar artık yazmaya. 428 00:18:37,091 --> 00:18:37,590 Tamam mı? 429 00:18:37,590 --> 00:18:41,855 >> Bu bölüm kaldırılıncaya kadar, yazma erişimi engellendi. 430 00:18:41,855 --> 00:18:43,230 Bu da onların mevcut değildir demektir. 431 00:18:43,230 --> 00:18:44,510 Bunlar tutarlı değil. 432 00:18:44,510 --> 00:18:46,554 Biz gördüğünüzde bölüm kendini enjekte, 433 00:18:46,554 --> 00:18:48,470 Biz şimdi tutarlıdır biz gitmiyoruz, çünkü 434 00:18:48,470 --> 00:18:51,517 İki veri değişimini sağlamak için bağımsız bölümün yanları 435 00:18:51,517 --> 00:18:52,100 birbirinden. 436 00:18:52,100 --> 00:18:54,130 Biz zorunda kalacak iletişim yeniden 437 00:18:54,130 --> 00:18:56,930 herhangi bir güncellemeden önce veri izin verilir. 438 00:18:56,930 --> 00:18:58,120 Tamam mı? 439 00:18:58,120 --> 00:19:02,650 >> Bir sonraki lezzet, AP sistem olacaktır ya da mevcut ve paylaştırıldı 440 00:19:02,650 --> 00:19:03,640 tolerans sistemi. 441 00:19:03,640 --> 00:19:05,320 Bu adamlar umurumda değil. 442 00:19:05,320 --> 00:19:06,020 Sağ? 443 00:19:06,020 --> 00:19:08,960 Bir gets herhangi bir düğüm biz onu alacağım, yazma. 444 00:19:08,960 --> 00:19:11,480 Yani benim veri kopyalayan ediyorum Birden düğümler arasında. 445 00:19:11,480 --> 00:19:14,730 Bu düğümler, bir istemci, müşteri geliyor olsun diyor yılında, bazı verileri yazmak için gidiyorum. 446 00:19:14,730 --> 00:19:16,300 Düğüm hiçbir sorun diyor. 447 00:19:16,300 --> 00:19:18,580 Düğüm onu ​​alır yanındaki aynı kayıt üzerinde bir yazma, 448 00:19:18,580 --> 00:19:20,405 O hiçbir sorun söyleyecek. 449 00:19:20,405 --> 00:19:23,030 Somewhere arka arka ucunda, veri çoğaltmak için gidiyor. 450 00:19:23,030 --> 00:19:27,360 Ve sonra biri, fark oluyor uh-oh, gerçekleştirecek Münafık sistem, ah-ah, 451 00:19:27,360 --> 00:19:28,870 İki taraf için bir güncelleştirme olmuş. 452 00:19:28,870 --> 00:19:30,370 Biz ne yaptık? 453 00:19:30,370 --> 00:19:33,210 Ve ne o zaman ne olduğunu Onlar bir şeyler yapmak hangi 454 00:19:33,210 --> 00:19:36,080 Onları Veri durumunu çözmek için izin verir. 455 00:19:36,080 --> 00:19:39,000 Ve biz hakkında konuşacağım Bir sonraki grafikte söyledi. 456 00:19:39,000 --> 00:19:40,000 >> Şey burada işaret etmek. 457 00:19:40,000 --> 00:19:42,374 Ve ben de almak için gitmiyorum bu kadar içine bunun nedeni 458 00:19:42,374 --> 00:19:43,510 Derin veri teorisinin içine alır. 459 00:19:43,510 --> 00:19:46,670 Ama işlem var çerçeve o 460 00:19:46,670 --> 00:19:50,680 İlişkisel sistemde çalışır o Beni güvenle güncellemeler yapmak sağlar 461 00:19:50,680 --> 00:19:53,760 veritabanında birden kuruluşlara. 462 00:19:53,760 --> 00:19:58,320 Ve bu güncellemeler oluşacak tek seferde ya da hiç. 463 00:19:58,320 --> 00:20:00,500 Bu ASİT işlemleri olarak adlandırılır. 464 00:20:00,500 --> 00:20:01,000 Tamam mı? 465 00:20:01,000 --> 00:20:06,570 >> ASİT bize tutarlılık atomicity verir, izolasyon ve dayanıklılık. 466 00:20:06,570 --> 00:20:07,070 Tamam mı? 467 00:20:07,070 --> 00:20:13,550 Hepsi, atom, işlemler anlamına gelir Benim güncellemeler olur ya da onlar değil. 468 00:20:13,550 --> 00:20:16,570 Tutarlılık demektir veritabanı her zaman olacak 469 00:20:16,570 --> 00:20:19,780 tutarlı getirilebilir Bir güncellemeden sonra devlet. 470 00:20:19,780 --> 00:20:23,900 Ben bir veritabanı asla terk etmeyeceğini Bir güncelleştirme uygulandıktan sonra kötü durum. 471 00:20:23,900 --> 00:20:24,400 Tamam mı? 472 00:20:24,400 --> 00:20:26,720 >> Yani bu biraz farklı CAP tutarlılık daha. 473 00:20:26,720 --> 00:20:29,760 CAP tutarlılık anlamına tüm benim müşteriler hep verileri görebilirsiniz. 474 00:20:29,760 --> 00:20:34,450 ASİT tutarlılık anlamına zaman o Bir işlem verileri en iyi, bitti. 475 00:20:34,450 --> 00:20:35,709 Benim ilişkileri hepsi iyi. 476 00:20:35,709 --> 00:20:38,750 Ben bir üst satırı silmek için gitmiyorum ve yetim çocukların bir demet bırakın 477 00:20:38,750 --> 00:20:40,970 diğer bazı tabloda. 478 00:20:40,970 --> 00:20:44,320 Ben tutarlı olduğumu eğer olamaz bir asit işlemde. 479 00:20:44,320 --> 00:20:49,120 >> İzolasyon işlemleri demektir Her zaman birbiri ardına meydana gelecektir. 480 00:20:49,120 --> 00:20:51,920 Verilerin sonuç Aynı devlet olacak 481 00:20:51,920 --> 00:20:54,770 Bu işlemler sanki Bu aynı zamanda ihraç edildi 482 00:20:54,770 --> 00:20:57,340 seri idam edildi. 483 00:20:57,340 --> 00:21:00,030 Yani eşzamanlılık var Veri kontrolü. 484 00:21:00,030 --> 00:21:04,130 Yani temelde, ben artırmak değil iki kere iki operasyon ile aynı değeri. 485 00:21:04,130 --> 00:21:08,580 >> Ama bu değere 1 ekleme diyorsan, ve iki işlemler gelip 486 00:21:08,580 --> 00:21:10,665 ve biri, bunu yapmak için denemek İlk oraya gidiyor 487 00:21:10,665 --> 00:21:12,540 diğeri en sonra oraya gidiyor. 488 00:21:12,540 --> 00:21:15,210 Yani sonunda, ben ikisini ekledi. 489 00:21:15,210 --> 00:21:16,170 Ne demek istediğimi görüyor musun? 490 00:21:16,170 --> 00:21:16,670 TAMAM. 491 00:21:16,670 --> 00:21:19,220 492 00:21:19,220 --> 00:21:21,250 >> Dayanıklılık oldukça basittir. 493 00:21:21,250 --> 00:21:23,460 Tüm işlemin kabul edilmektedir, bu kadar 494 00:21:23,460 --> 00:21:26,100 Hatta orada olacak Sistem çöküyor. 495 00:21:26,100 --> 00:21:29,230 Sistemin kurtarır, bu işlendiği işlem 496 00:21:29,230 --> 00:21:30,480 aslında orada olacak. 497 00:21:30,480 --> 00:21:33,130 Yani garanti var ASİT işlemleri. 498 00:21:33,130 --> 00:21:35,470 Bunlar çok güzel garantisidir bir veritabanı üzerinde olması, 499 00:21:35,470 --> 00:21:36,870 ama onlar maliyetle geliyor. 500 00:21:36,870 --> 00:21:37,640 Sağ? 501 00:21:37,640 --> 00:21:40,520 >> Çünkü sorun Bu çerçeve ile 502 00:21:40,520 --> 00:21:44,540 veri bir bölüm varsa set, ben bir karar vermek zorunda. 503 00:21:44,540 --> 00:21:48,000 Ben izin zorunda kalacağım bir tarafı veya diğer ilgili güncellemeleri. 504 00:21:48,000 --> 00:21:50,310 Ve bu olursa, o zaman ben artık gidiyorum değilim 505 00:21:50,310 --> 00:21:52,630 muhafaza edebilmek için bu özellikler. 506 00:21:52,630 --> 00:21:53,960 Onlar tutarlı olmayacaktır. 507 00:21:53,960 --> 00:21:55,841 Bunlar izole edilmez. 508 00:21:55,841 --> 00:21:58,090 O yıkar budur ilişkisel veri tabanları için. 509 00:21:58,090 --> 00:22:01,360 Bu nedenle ilişkisel olduğunu veritabanları dikey ölçek. 510 00:22:01,360 --> 00:22:05,530 >> Öte yandan, biz var Ne BASE teknolojisini denir. 511 00:22:05,530 --> 00:22:07,291 Ve bunlar senin NoSQL Veritabanları vardır. 512 00:22:07,291 --> 00:22:07,790 Pekala. 513 00:22:07,790 --> 00:22:10,180 Bu yüzden bizim CP, AP veritabanları var. 514 00:22:10,180 --> 00:22:14,720 Ve bu temelde dediğimiz vardır mevcuttur, yumuşak devlet, sonunda 515 00:22:14,720 --> 00:22:15,740 tutarlı. 516 00:22:15,740 --> 00:22:16,420 Tamam mı? 517 00:22:16,420 --> 00:22:19,690 >> Temel olarak mevcuttur, çünkü Onlar bölüm hoşgörülü sensin. 518 00:22:19,690 --> 00:22:21,470 Onlar her zaman olacak Orada, orada bile 519 00:22:21,470 --> 00:22:23,053 düğümler arasında bir ağ bölümü. 520 00:22:23,053 --> 00:22:25,900 Ben bir düğüme konuşabilirsiniz, ben değilim veri okumak mümkün olacak. 521 00:22:25,900 --> 00:22:26,460 Tamam mı? 522 00:22:26,460 --> 00:22:30,810 Hep yazmak mümkün olmayabilir Veri ben tutarlı bir platform yaşıyorum. 523 00:22:30,810 --> 00:22:32,130 Ama veri okumak mümkün olacak. 524 00:22:32,130 --> 00:22:34,960 525 00:22:34,960 --> 00:22:38,010 >> Yumuşak devlet gösterir Ben o veriyi okumak zaman ki 526 00:22:38,010 --> 00:22:40,790 diğer düğümler aynı olmayabilir. 527 00:22:40,790 --> 00:22:43,390 Sağ bir düğüm üzerinde verildiyse kümedeki başka bir yerde 528 00:22:43,390 --> 00:22:46,650 ve karşısında çoğaltılmadı Küme henüz, o veriyi okurken 529 00:22:46,650 --> 00:22:48,680 devlet tutarlı olmayabilir. 530 00:22:48,680 --> 00:22:51,650 Ancak, bu olacak sonunda tutarlı, 531 00:22:51,650 --> 00:22:53,870 anlam sırasında bir yazma olduğunu sisteme yapılır, 532 00:22:53,870 --> 00:22:56,480 bu düğümlere çoğaltılır. 533 00:22:56,480 --> 00:22:59,095 Ve sonunda, bu devlet sipariş getirilecek, 534 00:22:59,095 --> 00:23:00,890 ve tutarlı bir devlet olacaktır. 535 00:23:00,890 --> 00:23:05,000 >> Şimdi, CAP teoremi gerçekten Sadece bir durumda oynar. 536 00:23:05,000 --> 00:23:08,700 Bu durumda o zaman durumdur. 537 00:23:08,700 --> 00:23:13,710 Her ne zaman faaliyet Çünkü normal mod, hiçbir bölüm yoktur, 538 00:23:13,710 --> 00:23:16,370 her şey tutarlı ve kullanılabilir. 539 00:23:16,370 --> 00:23:19,990 Sadece CAP dert biz bu bölümü varken. 540 00:23:19,990 --> 00:23:21,260 Yani o nadirdir. 541 00:23:21,260 --> 00:23:25,360 Ama sistem zaman o nasıl tepki vereceğini Sistemin ne tür dikte meydana 542 00:23:25,360 --> 00:23:26,750 biz uğraşıyoruz. 543 00:23:26,750 --> 00:23:31,110 >> Yani bir göz atalım neler O AP sistemleri gibi görünüyor. 544 00:23:31,110 --> 00:23:32,621 Tamam mı? 545 00:23:32,621 --> 00:23:34,830 AP sistemleri iki tatlar geliyor. 546 00:23:34,830 --> 00:23:38,514 Onlar ise lezzet gelir usta usta, her zaman kullanılabilir% 100. 547 00:23:38,514 --> 00:23:40,430 Ve onlar gelip diyor başka lezzet, 548 00:23:40,430 --> 00:23:43,330 Eğer, ben endişe gidiyorum biliyorum Bu bölümleme şey hakkında 549 00:23:43,330 --> 00:23:44,724 olduğunda, gerçek bir bölüm meydana gelir. 550 00:23:44,724 --> 00:23:47,890 Aksi takdirde, birincil orada oluyor haklarını almaya gidiyor düğümleri. 551 00:23:47,890 --> 00:23:48,500 Tamam mı? 552 00:23:48,500 --> 00:23:50,040 >> Cassandra gibi biz bir şey Yani eğer. 553 00:23:50,040 --> 00:23:54,440 Cassandra usta olurdu usta, bana herhangi bir düğüme yazma bulunuyor edelim. 554 00:23:54,440 --> 00:23:55,540 Peki ne oluyor? 555 00:23:55,540 --> 00:23:58,270 Yani bir nesne var iki düğüm üzerinde varolan veritabanı. 556 00:23:58,270 --> 00:24:01,705 En nesneyi S. arayalım Bu yüzden S. devlet var 557 00:24:01,705 --> 00:24:04,312 Bazı operasyonları var S devam ettiğini. 558 00:24:04,312 --> 00:24:06,270 Cassandra bana izin verir birden fazla düğüm için yazıyorum. 559 00:24:06,270 --> 00:24:08,550 Yani ben bir olsun diyelim İki düğümlerine s için yazma. 560 00:24:08,550 --> 00:24:12,274 Peki, nedir oluyor biter Biz bölümleme olay olduğunu diyoruz. 561 00:24:12,274 --> 00:24:14,190 Orada olmayabilir fiziksel ağ bölümü. 562 00:24:14,190 --> 00:24:15,950 Ama nedeniyle tasarım Sistemin, bu kadar 563 00:24:15,950 --> 00:24:18,449 aslında en kısa sürede bölümleme Ben iki düğüm üzerinde bir yazma olsun. 564 00:24:18,449 --> 00:24:20,830 Bu beni zorluyor değil bir düğüm üzerinden tüm mal. 565 00:24:20,830 --> 00:24:22,340 Ben iki düğüm üzerinde yazıyorum. 566 00:24:22,340 --> 00:24:23,330 Tamam mı? 567 00:24:23,330 --> 00:24:25,740 >> Yani şimdi ben iki devlet var. 568 00:24:25,740 --> 00:24:26,360 Tamam mı? 569 00:24:26,360 --> 00:24:28,110 Ne olacak er ya da geç bir 570 00:24:28,110 --> 00:24:29,960 Bir çoğaltma olayı orada oluyor. 571 00:24:29,960 --> 00:24:33,300 Orada neler olup bittiğini biz Bir bölüm kurtarma denilen hangi 572 00:24:33,300 --> 00:24:35,200 Nerede bu iki olduğunu devletler bir araya gel 573 00:24:35,200 --> 00:24:37,310 ve bir algoritma olması oluyor Bu, veritabanı içinde çalışır 574 00:24:37,310 --> 00:24:38,540 ne karar verir. 575 00:24:38,540 --> 00:24:39,110 Tamam mı? 576 00:24:39,110 --> 00:24:43,057 Varsayılan olarak, son güncelleme En AP sistemlerinde kazanır. 577 00:24:43,057 --> 00:24:44,890 Yani orada genellikle bir Varsayılan algoritma ne 578 00:24:44,890 --> 00:24:47,400 Onlar bir geri arama diyoruz işlevi, bir şey o 579 00:24:47,400 --> 00:24:51,000 bu durumda adı verilecek bazı mantık yürütmek için tespit edilir 580 00:24:51,000 --> 00:24:52,900 Bu çatışmayı çözmek için. 581 00:24:52,900 --> 00:24:53,850 Tamam mı? 582 00:24:53,850 --> 00:24:58,770 Varsayılan geri ve varsayılan En AP veritabanlarında çözümleyici 583 00:24:58,770 --> 00:25:01,130 olduğunu, zaman damgası kazanır sanırım. 584 00:25:01,130 --> 00:25:02,380 Bu son güncelleme oldu. 585 00:25:02,380 --> 00:25:04,320 Orada bu güncelleştirmeyi koymak için gidiyorum. 586 00:25:04,320 --> 00:25:08,440 Bu kaydı dökümü olabilir ben Bir kurtarma günlüğüne dökülüyor 587 00:25:08,440 --> 00:25:11,670 Kullanıcı daha sonra tekrar gelip, böylece ve söylemek, hey, bir çarpışma oldu. 588 00:25:11,670 --> 00:25:12,320 Ne oldu? 589 00:25:12,320 --> 00:25:16,370 Ve aslında bir kaydını dökümü tüm çarpışmalar ve Al 590 00:25:16,370 --> 00:25:17,550 ve ne olduğunu görün. 591 00:25:17,550 --> 00:25:21,580 >> Şimdi, bir kullanıcı olarak, siz de yapabilirsiniz Bu geri çağırma içine mantığı içerir. 592 00:25:21,580 --> 00:25:24,290 Yani bunu değiştirebilirsiniz geri arama çalışması. 593 00:25:24,290 --> 00:25:26,730 Sen hey, ben istiyorum, söyleyebilirim Bu verileri düzeltmek için. 594 00:25:26,730 --> 00:25:28,880 Ve ben denemek istiyorum ve Bu iki kayıt birleştirildikten. 595 00:25:28,880 --> 00:25:30,050 Ama bu size kalmış. 596 00:25:30,050 --> 00:25:32,880 Veritabanı bilmiyor nasıl Varsayılan olarak bunu. Zaman çoğu 597 00:25:32,880 --> 00:25:34,850 Tek şey veritabanı nasıl ki yapmanız bilir, 598 00:25:34,850 --> 00:25:36,100 Bu son kayıt oldu. 599 00:25:36,100 --> 00:25:39,183 Yani, kazanmak için gidiyor biri ve ben koyacağım değerdir. 600 00:25:39,183 --> 00:25:41,490 Bu bölüm kurtarma kez ve çoğaltma oluşur 601 00:25:41,490 --> 00:25:43,930 Bizim devlet, sahip olduğu şimdi hangi asal S 602 00:25:43,930 --> 00:25:46,890 Tüm bu nesnelerin birleştirme durumu. 603 00:25:46,890 --> 00:25:49,700 Yani AP sistemleri bu var. 604 00:25:49,700 --> 00:25:51,615 CP sistemleri gerekmez Bu endişelenecek. 605 00:25:51,615 --> 00:25:54,490 En kısa sürede bir bölüm geliyor çünkü oyuna, sadece alarak durdurmak 606 00:25:54,490 --> 00:25:55,530 yazıyor. 607 00:25:55,530 --> 00:25:56,180 Tamam mı? 608 00:25:56,180 --> 00:25:58,670 Yani çok kolay tutarlı olmak ile anlaşma 609 00:25:58,670 --> 00:26:01,330 ne zaman hiçbir güncellemeyi kabul etmiyoruz. 610 00:26:01,330 --> 00:26:04,620 CP sistemleri yapmak ile budur. 611 00:26:04,620 --> 00:26:05,120 Pekala. 612 00:26:05,120 --> 00:26:07,590 >> Yani biraz konuşalım erişim desenleri hakkında biraz. 613 00:26:07,590 --> 00:26:11,580 Biz NoSQL hakkında konuşmak, bu kadar tüm erişim deseni hakkında. 614 00:26:11,580 --> 00:26:13,550 Şimdi, SQL ad hoc, sorgular olduğunu. 615 00:26:13,550 --> 00:26:14,481 Bu ilişkisel mağaza bulunuyor. 616 00:26:14,481 --> 00:26:16,480 Biz endişelenmenize gerek yok erişim deseni hakkında. 617 00:26:16,480 --> 00:26:17,688 Ben çok karmaşık bir sorgu yazmak. 618 00:26:17,688 --> 00:26:19,250 Bu gider ve verileri alır. 619 00:26:19,250 --> 00:26:21,210 İşte bu görünüyor ne gibi, normalleştirme. 620 00:26:21,210 --> 00:26:24,890 >> Bu özel yapının Yani Biz ürün kataloğu bakıyoruz. 621 00:26:24,890 --> 00:26:26,640 Ben ürünlerin farklı türleri vardır. 622 00:26:26,640 --> 00:26:27,217 Ben kitap var. 623 00:26:27,217 --> 00:26:27,800 Ben albüm var. 624 00:26:27,800 --> 00:26:30,090 Ben videolar var. 625 00:26:30,090 --> 00:26:33,370 Ürünler arasındaki ilişki ve bu kitaplar, albümler herhangi biri, 626 00:26:33,370 --> 00:26:34,860 ve videolar tablolar 1: 1 dir. 627 00:26:34,860 --> 00:26:35,800 Pekala? 628 00:26:35,800 --> 00:26:38,860 Ben bir ürün kimliği var, ve bu kimlik karşılık gelir 629 00:26:38,860 --> 00:26:41,080 Bir kitap, bir albüm, ya da bir video. 630 00:26:41,080 --> 00:26:41,580 Tamam mı? 631 00:26:41,580 --> 00:26:44,350 1 ilişki: Bu bir 1 var Bu tablolar arasında. 632 00:26:44,350 --> 00:26:46,970 >> Şimdi, hepsi books-- sahip kök özellikleri olduğunu. 633 00:26:46,970 --> 00:26:47,550 Problem değil. 634 00:26:47,550 --> 00:26:48,230 Bu harika. 635 00:26:48,230 --> 00:26:52,130 Bir-bir ilişki, ben hepsini almak Veri ben o kitabı açıklamak gerekir. 636 00:26:52,130 --> 00:26:54,770 Albums-- albümleri şarkıları var. 637 00:26:54,770 --> 00:26:56,470 Bu, birçok tane diyoruz. 638 00:26:56,470 --> 00:26:58,905 Her albüm, birçok parça olabilir. 639 00:26:58,905 --> 00:27:00,780 Her parça için So Albüm, ben olabilir 640 00:27:00,780 --> 00:27:02,570 Bu alt tabloda başka bir rekor. 641 00:27:02,570 --> 00:27:04,680 Yani bir kayıt oluşturmak Benim Resimlerim tablo. 642 00:27:04,680 --> 00:27:06,700 Birden kayıtları oluşturmak izler tabloda. 643 00:27:06,700 --> 00:27:08,850 Bir-çok ilişkisi. 644 00:27:08,850 --> 00:27:11,220 >> Bu ilişki ne olduğunu birçok-çok diyoruz. 645 00:27:11,220 --> 00:27:11,750 Tamam mı? 646 00:27:11,750 --> 00:27:17,000 Sen aktörler olabileceğini görüyoruz Birçok film, pek çok videolar. 647 00:27:17,000 --> 00:27:21,450 Yani biz ne biz bu haritalama koymak olduğunu arasındaki tablo, hangi sadece 648 00:27:21,450 --> 00:27:24,040 Video kimliği aktör kimliğini eşler. 649 00:27:24,040 --> 00:27:28,464 Şimdi birleştiren bir sorgu oluşturabilirsiniz aktörlere aktör video aracılığıyla videoları, 650 00:27:28,464 --> 00:27:31,130 ve bana güzel bir listesini verir tüm filmler ve tüm aktörlerin 651 00:27:31,130 --> 00:27:32,420 kim film vardı. 652 00:27:32,420 --> 00:27:33,290 >> TAMAM. 653 00:27:33,290 --> 00:27:33,880 Yani burada biz gitmek. 654 00:27:33,880 --> 00:27:38,040 Bire-bir üst düzey ilişki; Bire çok sayıda, 655 00:27:38,040 --> 00:27:40,240 parça albümleri; Birçok-çok. 656 00:27:40,240 --> 00:27:44,990 Bu üç üst düzey vardır herhangi bir veritabanında ilişkileri. 657 00:27:44,990 --> 00:27:48,050 Nasıl bu biliyorsanız ilişkiler birlikte çalışmak, 658 00:27:48,050 --> 00:27:51,490 o zaman çok şey biliyor Zaten veritabanı hakkında. 659 00:27:51,490 --> 00:27:55,660 Yani NoSQL biraz farklı çalışır. 660 00:27:55,660 --> 00:27:58,930 En bir saniye düşünelim Ne o görünüyor tüm ürün almak gitmek istiyorum. 661 00:27:58,930 --> 00:28:01,096 >> İlişkisel bir mağazada, ben Tüm ürünlerimizi almak istiyorum 662 00:28:01,096 --> 00:28:02,970 Tüm ürünler listesinde. 663 00:28:02,970 --> 00:28:04,910 Bu sorgular bir sürü. 664 00:28:04,910 --> 00:28:07,030 Ben bütün kitaplar için bir sorgu var. 665 00:28:07,030 --> 00:28:08,470 Benim albümlerden bir sorgu var. 666 00:28:08,470 --> 00:28:09,970 Ve ben bütün videolar için bir sorgu var. 667 00:28:09,970 --> 00:28:11,719 Ve ben koymak lazım hep birlikte bir liste halinde 668 00:28:11,719 --> 00:28:15,250 ve geri kadar bu hizmet Bunu talep ediyor uygulamasıdır. 669 00:28:15,250 --> 00:28:18,000 >> Benim kitap almak için, ben katılmak Ürün ve kitaplar. 670 00:28:18,000 --> 00:28:21,680 Albümlerimi almak için, ben katılmak lazım Ürünler, Albümler ve Parçalar. 671 00:28:21,680 --> 00:28:25,330 Ve ben, benim videoları almak için Videolar Ürünleri katılmak için, 672 00:28:25,330 --> 00:28:28,890 Aktör Videolar aracılığıyla katılmak, ve Aktörler getirmek. 673 00:28:28,890 --> 00:28:31,020 Yani üç sorguları var. 674 00:28:31,020 --> 00:28:34,560 Çok karmaşık sorgular tek sonuç kümesini bir araya getirin. 675 00:28:34,560 --> 00:28:36,540 >> Bu optimum az var. 676 00:28:36,540 --> 00:28:39,200 Bu konuşmamız neden zaman olduğu olan bir veri yapısının gösterimi 677 00:28:39,200 --> 00:28:42,900 erişmek için agnostik olması için inşa pattern-- de bu harika. 678 00:28:42,900 --> 00:28:45,730 Ve bu gerçekten görebilirsiniz Verileri organize ettik ne güzel. 679 00:28:45,730 --> 00:28:46,550 Ve biliyor musun? 680 00:28:46,550 --> 00:28:49,750 Ben sadece bir aktör için bir kayıt var. 681 00:28:49,750 --> 00:28:50,440 >> Çok havalı. 682 00:28:50,440 --> 00:28:53,750 Ben bütün aktörleri deduplicated ettik, ve ben dernekler tutulan 683 00:28:53,750 --> 00:28:55,200 Bu eşleme tablosunda. 684 00:28:55,200 --> 00:29:00,620 Ancak, veri alma dışarı pahalı olur. 685 00:29:00,620 --> 00:29:04,500 Tüm sistem üzerinden CPU yolluyorum Birlikte bu veri yapılarını katılmadan 686 00:29:04,500 --> 00:29:05,950 veri geri çekmeye muktedir. 687 00:29:05,950 --> 00:29:07,310 >> Peki nasıl etrafında alabilirim? 688 00:29:07,310 --> 00:29:11,200 NoSQL yılında hakkında kümeleme, değil normalleşme. 689 00:29:11,200 --> 00:29:13,534 Yani biz istiyoruz demek istiyorum erişim deseni destekler. 690 00:29:13,534 --> 00:29:15,283 Erişim desen Eğer uygulamalara, 691 00:29:15,283 --> 00:29:16,770 Ben bütün ürünlerini almak gerekir. 692 00:29:16,770 --> 00:29:19,027 En tek tablodaki tüm ürünleri koysunlar. 693 00:29:19,027 --> 00:29:22,110 Bir tablodaki tüm ürünleri koyarsanız, Ben sadece tüm ürünleri seçebilirsiniz 694 00:29:22,110 --> 00:29:23,850 Bu tablodan ve ben hepsini almak. 695 00:29:23,850 --> 00:29:25,240 Peki bunu nasıl yapacağız? 696 00:29:25,240 --> 00:29:28,124 Peki NoSQL hiçbir var tabloya yapısı. 697 00:29:28,124 --> 00:29:30,540 Biz hakkında biraz konuşacağım bu nasıl Dinamo DB çalışır. 698 00:29:30,540 --> 00:29:33,570 Ama aynı yoksa nitelikleri ve aynı özellikleri 699 00:29:33,570 --> 00:29:37,751 her tek her satırda, içinde öğe, bir SQL tablosundaki yapmak gibi. 700 00:29:37,751 --> 00:29:39,750 Peki bu bana izin verir yapılacak bir çok şey olduğunu 701 00:29:39,750 --> 00:29:41,124 ve bana bir esneklik verir. 702 00:29:41,124 --> 00:29:45,360 Bu özel durumda, Benim ürün belgeler var. 703 00:29:45,360 --> 00:29:49,090 Bu, özellikle Örnek, her 704 00:29:49,090 --> 00:29:51,930 Ürünler tablosundaki bir belgedir. 705 00:29:51,930 --> 00:29:56,510 Ve bir kitap için ürün olabilir Bir kitap belirten bir tür kimliği var. 706 00:29:56,510 --> 00:29:59,180 Ve uygulama bu ID devreye olacaktır. 707 00:29:59,180 --> 00:30:02,570 >> Uygulama katmanı, ben gidiyorum Ah, bu nasıl kayıt türü olduğunu söylemek? 708 00:30:02,570 --> 00:30:04,100 Oh, bu bir kitap rekor. 709 00:30:04,100 --> 00:30:05,990 Kitap kayıtları bu özelliklere sahip. 710 00:30:05,990 --> 00:30:08,100 Bana bir kitap nesnesi yaratalım. 711 00:30:08,100 --> 00:30:11,289 Yani doldurmak için gidiyorum Bu madde ile kitap nesnesi. 712 00:30:11,289 --> 00:30:13,080 Sonraki öğe gelir ve Bu öğeyi ne diyor? 713 00:30:13,080 --> 00:30:14,560 Peki bu öğeyi bir albüm. 714 00:30:14,560 --> 00:30:17,340 Ah, ben bambaşka bir var Bunun için işlem rutin, 715 00:30:17,340 --> 00:30:18,487 bir albüm çünkü. 716 00:30:18,487 --> 00:30:19,320 Ne demek istediğimi görüyor musun? 717 00:30:19,320 --> 00:30:21,950 >> Yani uygulama tier-- Ben sadece tüm bu kayıtları seçin. 718 00:30:21,950 --> 00:30:23,200 Hepsi geliyor başlar. 719 00:30:23,200 --> 00:30:24,680 Hepsi farklı olabilir. 720 00:30:24,680 --> 00:30:27,590 Ve bu uygulamanın mantığı var o türleri arasında geçiş 721 00:30:27,590 --> 00:30:29,530 ve bunları işlemek için nasıl karar verir. 722 00:30:29,530 --> 00:30:33,640 >> Yine, bu yüzden optimize ediyoruz erişim deseni için şema. 723 00:30:33,640 --> 00:30:36,390 Biz bunu yapıyoruz bu tabloları çöken. 724 00:30:36,390 --> 00:30:39,670 Biz temelde alıyorsun bu normalize yapılar, 725 00:30:39,670 --> 00:30:42,000 ve biz inşa ediyoruz hiyerarşik yapılar. 726 00:30:42,000 --> 00:30:45,130 Bu kayıtların her birinin içinde Ben dizi özelliklerini görmek için gidiyorum. 727 00:30:45,130 --> 00:30:49,400 >> Albümleri için bu belgede içinde, Ben parça dizi görüyorum. 728 00:30:49,400 --> 00:30:53,900 Bu izler şimdi o become-- Temelde bu çocuk tablo bu 729 00:30:53,900 --> 00:30:56,520 Burada bu yapının var. 730 00:30:56,520 --> 00:30:57,975 Yani DynamoDB yapabilirsiniz. 731 00:30:57,975 --> 00:30:59,810 Siz MongoDB yapabilirsiniz. 732 00:30:59,810 --> 00:31:01,437 Herhangi bir NoSQL veritabanı yapabilirsiniz. 733 00:31:01,437 --> 00:31:03,520 Bu tür oluşturun Hiyerarşik veri yapıları 734 00:31:03,520 --> 00:31:07,120 Eğer veri almak izin olduğunu çok çabuk şimdi çünkü 735 00:31:07,120 --> 00:31:08,537 uymak zorunda değilsiniz. 736 00:31:08,537 --> 00:31:11,620 Ben Tracks bir satır eklediğinizde tablo veya Albümleri tabloya bir satır, 737 00:31:11,620 --> 00:31:13,110 Ben bu şema uymak zorunda. 738 00:31:13,110 --> 00:31:18,060 Ben öznitelik veya olması Bu tablo üzerinde tanımlanan özellik. 739 00:31:18,060 --> 00:31:20,480 Bunların her biri, O satır eklediğinizde. 740 00:31:20,480 --> 00:31:21,910 Bu NoSQL durum değil. 741 00:31:21,910 --> 00:31:24,440 >> Ben tamamen farklı olabilir Her belgede özellikleri 742 00:31:24,440 --> 00:31:26,100 Ben koleksiyonuna yerleştirin söyledi. 743 00:31:26,100 --> 00:31:30,480 Yani çok güçlü bir mekanizma. 744 00:31:30,480 --> 00:31:32,852 Ve gerçekten nasıl var sistemi optimize. 745 00:31:32,852 --> 00:31:35,310 Yerine şimdi sorguda, çünkü Tüm bu tabloları birleştirme 746 00:31:35,310 --> 00:31:39,160 ve yarım düzine sorguları yürütme İhtiyacım verileri geri çekmek için, 747 00:31:39,160 --> 00:31:40,890 Ben bir sorgu yürütme ediyorum. 748 00:31:40,890 --> 00:31:43,010 Ve ben yineleme ediyorum ayarlamak sonuçlarla karşılaşmışlardır. 749 00:31:43,010 --> 00:31:46,512 size bir fikir verir NoSQL gücünün. 750 00:31:46,512 --> 00:31:49,470 Ben tür yanlara buraya gitmek için gidiyorum ve bu konuda biraz konuşmak. 751 00:31:49,470 --> 00:31:53,240 Bu, daha çok tür pazarlama veya technology-- 752 00:31:53,240 --> 00:31:55,660 teknoloji pazarlama tartışma türü. 753 00:31:55,660 --> 00:31:58,672 Ama anlamak önemlidir Biz üst bakmak çünkü eğer 754 00:31:58,672 --> 00:32:00,380 Burada bu tabloya, ne bakıyoruz 755 00:32:00,380 --> 00:32:04,030 Biz diyoruz teknoloji yutturmaca eğrisi. 756 00:32:04,030 --> 00:32:06,121 Ve bu demektir yeni ürünleri devreye giriyor. 757 00:32:06,121 --> 00:32:07,120 İnsanlar harika olduğunu düşünüyorum. 758 00:32:07,120 --> 00:32:09,200 Ben bütün sorunlarını çözdük. 759 00:32:09,200 --> 00:32:11,630 >> Bu son olabilir tüm her şeyi tüm olacak. 760 00:32:11,630 --> 00:32:12,790 Ve onlar bunu kullanmaya başlayabilirsiniz. 761 00:32:12,790 --> 00:32:14,720 Ve bu şeyler çalışmıyor derler. 762 00:32:14,720 --> 00:32:17,600 Bu doğru değil. 763 00:32:17,600 --> 00:32:19,105 Eski şeyler daha iyiydi. 764 00:32:19,105 --> 00:32:21,230 Ve yaptıklarını geri şeyler olduklarını yolu. 765 00:32:21,230 --> 00:32:22,730 Ve sonra sonunda onlar ne biliyorsun, git? 766 00:32:22,730 --> 00:32:24,040 Bu şey o kadar kötü değil. 767 00:32:24,040 --> 00:32:26,192 Oh, nasıl çalışır. 768 00:32:26,192 --> 00:32:28,900 Ve onlar nasıl bunu anlamaya kez işleri, onlar iyiye başlar. 769 00:32:28,900 --> 00:32:32,050 >> Ve bu konuda komik bir şey o kadar hatların tür olduğunu 770 00:32:32,050 --> 00:32:34,300 Biz Teknoloji Benimseme Eğrisi diyoruz. 771 00:32:34,300 --> 00:32:36,910 Yani biz ne olur ise bir çeşit teknoloji tetik. 772 00:32:36,910 --> 00:32:39,100 Veri tabanları halinde, veri basıncı var. 773 00:32:39,100 --> 00:32:42,200 Biz yüksek su noktaları hakkında konuştuk zaman boyunca veri basıncı. 774 00:32:42,200 --> 00:32:46,310 Veri basıncı belli bir çarptığında nokta, bir teknoloji tetik. 775 00:32:46,310 --> 00:32:47,830 >> Çok pahalı oluyor. 776 00:32:47,830 --> 00:32:49,790 Bu verileri işlemek için çok uzun sürüyor. 777 00:32:49,790 --> 00:32:50,890 Biz daha iyi bir şey gerekiyor. 778 00:32:50,890 --> 00:32:52,890 Sen yenilikçiler olsun Orada koşturup, 779 00:32:52,890 --> 00:32:55,050 çözüm ne olduğunu öğrenmek için çalışıyorum. 780 00:32:55,050 --> 00:32:56,050 Yeni bir fikir nedir? 781 00:32:56,050 --> 00:32:58,170 >> En iyi Sırada ne var Bu işi yapmanın yolu? 782 00:32:58,170 --> 00:32:59,530 Ve onlar bir şey ile gelip. 783 00:32:59,530 --> 00:33:03,140 Ve gerçek acıyla insanlar, kanama kenarında çocuklar, 784 00:33:03,140 --> 00:33:06,390 onlar her yerinden atlarsınız, Onlar bir cevap gerekir çünkü. 785 00:33:06,390 --> 00:33:09,690 Şimdi kaçınılmaz olan oldu ve ne o NoSQL şu anda oluyor. 786 00:33:09,690 --> 00:33:11,090 Ben her zaman görüyorum. 787 00:33:11,090 --> 00:33:13,610 >> Ne kaçınılmaz olur ise insanlar yeni aracını kullanmaya başlamak 788 00:33:13,610 --> 00:33:15,490 Aynı şekilde eski aracı kullanılır. 789 00:33:15,490 --> 00:33:17,854 Ve onlar bunu öğrenmek çok iyi çalışmıyor. 790 00:33:17,854 --> 00:33:20,020 Ben kim olduğunu hatırlayamıyorum Daha önce bugün konuşuyor. 791 00:33:20,020 --> 00:33:22,080 Ama, ne zaman gibi jackhammer icat edilmiştir, 792 00:33:22,080 --> 00:33:24,621 insanlar üzerinde salıncak vermedi Onların baş beton şut. 793 00:33:24,621 --> 00:33:27,360 794 00:33:27,360 --> 00:33:30,610 >> Ama bu ne Bugün NoSQL ile oluyor. 795 00:33:30,610 --> 00:33:33,900 En dükkan yürümek durumunda, Onlar NoSQL dükkan olmaya çalışıyoruz. 796 00:33:33,900 --> 00:33:36,510 Ne yapıyoruz olduğunu Onlar, NoSQL kullanıyorsanız 797 00:33:36,510 --> 00:33:39,900 ve bunu yüklüyoruz İlişkisel şema dolu. 798 00:33:39,900 --> 00:33:41,630 Bu nasıl Çünkü onlar veritabanı tasarımı. 799 00:33:41,630 --> 00:33:44,046 Ve onlar neden, merak ediyorsanız Çok iyi performans? 800 00:33:44,046 --> 00:33:45,230 Oğlum, bu şey kokuyor. 801 00:33:45,230 --> 00:33:49,900 Tüm korumak zorunda benim hayır, hayır, gibi açmayız katılır. 802 00:33:49,900 --> 00:33:50,800 Birleştirmeler koruyun? 803 00:33:50,800 --> 00:33:52,430 Neden Veri katılıyor? 804 00:33:52,430 --> 00:33:54,350 Siz NoSQL veri katılmak yok. 805 00:33:54,350 --> 00:33:55,850 Sen araya. 806 00:33:55,850 --> 00:34:00,690 >> Bunu önlemek istiyorsanız, öğrenmek yüzden aracı aslında sizin daha önce nasıl çalıştığını 807 00:34:00,690 --> 00:34:02,010 kullanmaya başlayabilirsiniz. 808 00:34:02,010 --> 00:34:04,860 Denemek ve yeni araçları kullanmayın Aynı şekilde eski araçlar kullanılır. 809 00:34:04,860 --> 00:34:06,500 Sen kötü bir deneyim olması için gidiyoruz. 810 00:34:06,500 --> 00:34:08,848 Ve her zaman bu hakkında budur. 811 00:34:08,848 --> 00:34:11,389 Buraya geliyor başladığınızda insanlar anladım çünkü var 812 00:34:11,389 --> 00:34:13,449 nasıl araçları kullanmak. 813 00:34:13,449 --> 00:34:16,250 >> Onlar ne zaman aynı şeyi yaptı ilişkisel veritabanları icat edildi, 814 00:34:16,250 --> 00:34:17,969 ve dosya sistemleri yerine bulundu. 815 00:34:17,969 --> 00:34:20,420 Onlar dosya sistemleri kurmak için çalıştı ilişkisel veri tabanları ile 816 00:34:20,420 --> 00:34:22,159 insanların anladım çünkü. 817 00:34:22,159 --> 00:34:23,049 Bu işe yaramadı. 818 00:34:23,049 --> 00:34:26,090 En iyi uygulamaları anlamak Yani Teknolojinin sizinle çalışıyoruz 819 00:34:26,090 --> 00:34:26,730 çok büyük. 820 00:34:26,730 --> 00:34:29,870 Çok önemli. 821 00:34:29,870 --> 00:34:32,440 >> Bu yüzden DynamoDB içine almak için gidiyoruz. 822 00:34:32,440 --> 00:34:36,480 DynamoDB AWS kullanıcısının olduğunu NoSQL platformu tamamen başardı. 823 00:34:36,480 --> 00:34:37,719 Ne anlama tamamen yönetilen mu? 824 00:34:37,719 --> 00:34:40,010 Bu gerek yok demektir gerçekten bir şey hakkında endişelenmenize. 825 00:34:40,010 --> 00:34:42,060 >> Sen gel, sen söyle Bize, bir tablo gerekir. 826 00:34:42,060 --> 00:34:43,409 Bu kadar kapasite ihtiyacı var. 827 00:34:43,409 --> 00:34:47,300 Sen düğmesine basın ve biz karşılığı sahne arkasında tüm altyapı. 828 00:34:47,300 --> 00:34:48,310 Şimdi bu çok büyük. 829 00:34:48,310 --> 00:34:51,310 >> Konuşurken Çünkü Bir veritabanı ölçekleme hakkında 830 00:34:51,310 --> 00:34:53,917 NoSQL veri kümeleri de Ölçek, koşu petabayt, 831 00:34:53,917 --> 00:34:55,750 Milyonlarca çalışan Saniyede işlemler, 832 00:34:55,750 --> 00:34:58,180 bunlar küçük kümeler değildir. 833 00:34:58,180 --> 00:35:00,830 Biz örnekleri binlerce bahsediyoruz. 834 00:35:00,830 --> 00:35:04,480 Örnekleri binlerce yönetme, hatta sanal örneklerini, 835 00:35:04,480 --> 00:35:06,350 popo gerçek bir ağrı olduğunu. 836 00:35:06,350 --> 00:35:09,110 Ben, her seferinde düşünmek demek İşletim sistemi patch çıkar 837 00:35:09,110 --> 00:35:11,552 veya veritabanının yeni bir sürümü. 838 00:35:11,552 --> 00:35:13,260 Bu ne anlama geliyor Size operasyonel? 839 00:35:13,260 --> 00:35:16,330 Yani 1.200 var demektir gerek sunucuların güncellenmesi. 840 00:35:16,330 --> 00:35:18,960 Şimdi bile otomasyon ile, Bu uzun zaman alabilir. 841 00:35:18,960 --> 00:35:21,480 Bu bir sürü neden olabilir Operasyonel baş ağrısı, 842 00:35:21,480 --> 00:35:23,090 Ben hizmet aşağı olabilir çünkü. 843 00:35:23,090 --> 00:35:26,070 >> Ben bu veritabanlarını güncellemek, ben mavi-yeşil dağıtımları yapabilir 844 00:35:26,070 --> 00:35:29,420 nerede dağıtmak ve yükseltme yarısı benim düğümleri ve sonra diğer yarısını yükseltin. 845 00:35:29,420 --> 00:35:30,490 Bu aşağı atın. 846 00:35:30,490 --> 00:35:33,410 Yani altyapısını yönetiyor Ölçek son derece ağrılıdır. 847 00:35:33,410 --> 00:35:36,210 Ve AWS bunun dışında o acıyı çekmek. 848 00:35:36,210 --> 00:35:39,210 Ve NoSQL veritabanları can olağanüstü acı 849 00:35:39,210 --> 00:35:41,780 Onlar ölçek yol yüzünden. 850 00:35:41,780 --> 00:35:42,926 >> Yatay Scale. 851 00:35:42,926 --> 00:35:45,550 Eğer daha büyük bir NoSQL almak istiyorsanız Veritabanı, daha fazla düğüm satın. 852 00:35:45,550 --> 00:35:48,660 Eğer satın Her düğüm Başka bir operasyonel baş ağrısı. 853 00:35:48,660 --> 00:35:50,830 Yani bir başkası senin için yapalım. 854 00:35:50,830 --> 00:35:52,000 AWS yapabilir. 855 00:35:52,000 --> 00:35:54,587 >> Biz belge anahtar değerleri desteklemektedir. 856 00:35:54,587 --> 00:35:56,670 Şimdi çok gitmedi Diğer grafik içine. 857 00:35:56,670 --> 00:35:58,750 Farklı bir yeri var NoSQL lezzetleri. 858 00:35:58,750 --> 00:36:02,670 Onlar getting her türlü konum Bu noktada bir araya munged. 859 00:36:02,670 --> 00:36:06,260 Sen, DynamoDB bakmak ve evet diyebiliriz Biz belge ve anahtar değeri hem konum 860 00:36:06,260 --> 00:36:08,412 Bu noktayı saklayın. 861 00:36:08,412 --> 00:36:10,620 Ve özellikleri iddia edebilirsiniz birinin diğerinin üzerinden. 862 00:36:10,620 --> 00:36:13,950 Bana göre, bu bir sürü gerçekten altı olduğunu yarısının, diğer bir düzine evi. 863 00:36:13,950 --> 00:36:18,710 Bu teknolojilerin her biri bir İnce teknoloji ve ince bir çözüm. 864 00:36:18,710 --> 00:36:23,390 Ben MongoDB iyi ya da olduğunu söyleyemem Daha sonra Couch, Cassandra daha kötü, 865 00:36:23,390 --> 00:36:25,994 Daha sonra Dinamo, ya da tam tersi. 866 00:36:25,994 --> 00:36:27,285 Bunları sadece seçenekleri demek. 867 00:36:27,285 --> 00:36:29,850 868 00:36:29,850 --> 00:36:32,700 >> Bu hızlı ve var her ölçekte tutarlı. 869 00:36:32,700 --> 00:36:36,210 Yani bu en büyük biridir ikramiye size AWS ile olsun. 870 00:36:36,210 --> 00:36:40,850 DynamoDB ile yeteneği Düşük tek basamaklı almak için 871 00:36:40,850 --> 00:36:44,040 herhangi bir ölçekte milisaniyelik gecikme. 872 00:36:44,040 --> 00:36:45,720 Bu sistemin bir tasarım hedefi oldu. 873 00:36:45,720 --> 00:36:49,130 Ve biz yapıyoruz müşteriler var Saniyede işlemlerin milyonlarca. 874 00:36:49,130 --> 00:36:52,670 >> Şimdi bunlardan bazıları ile gidersiniz Burada bir kaç dakika içinde durumlarda kullanmak. 875 00:36:52,670 --> 00:36:55,660 Entegre erişim bir denetleme biz dediğimiz var 876 00:36:55,660 --> 00:36:57,920 Kimlik Erişim Yönetimi veya IAM. 877 00:36:57,920 --> 00:37:01,980 Her sistem nüfuz, AWS sunan her hizmet. 878 00:37:01,980 --> 00:37:03,630 DynamoDB bir istisna değildir. 879 00:37:03,630 --> 00:37:06,020 Sen erişimi kontrol edebilirsiniz DynamoDB tabloları. 880 00:37:06,020 --> 00:37:09,960 Senin AWS tarafından hesapları tamamında erişim rolleri ve izinleri tanımlayan 881 00:37:09,960 --> 00:37:12,140 IAM altyapı. 882 00:37:12,140 --> 00:37:16,630 >> Ve bu bir anahtar ve ayrılmaz bir bileşeni var Biz Driven Programlama olay dediğimiz. 883 00:37:16,630 --> 00:37:19,056 Şimdi bu yeni bir paradigma olduğunu. 884 00:37:19,056 --> 00:37:22,080 >> HEDEF KİTLE: Ne kadar doğru sizin oranı var yanlış negatif karşı pozitif 885 00:37:22,080 --> 00:37:24,052 Erişim kontrol sistemi? 886 00:37:24,052 --> 00:37:26,260 Rick, Houlihan: Gerçek pozitifler yanlış negatif karşı? 887 00:37:26,260 --> 00:37:28,785 HEDEF KİTLE: Ne dönersek Eğer iade edilmelidir? 888 00:37:28,785 --> 00:37:33,720 Bir süre sonra karşıt olarak o doğrulamak ne zaman geri dönmez? 889 00:37:33,720 --> 00:37:36,260 890 00:37:36,260 --> 00:37:38,050 >> Rick, Houlihan: Sana bunu anlayamadı. 891 00:37:38,050 --> 00:37:40,140 Herhangi bir hataları varsa olursa olsun bu konuda, 892 00:37:40,140 --> 00:37:42,726 Ben sormak için bir insan değilim söz konusu bir soru. 893 00:37:42,726 --> 00:37:43,850 Ama bu iyi bir soru. 894 00:37:43,850 --> 00:37:45,905 Bilmek merak olurdu Kendim o aslında. 895 00:37:45,905 --> 00:37:48,810 896 00:37:48,810 --> 00:37:51,320 >> Ve böylece yeniden, yeni bir paradigma olay güdümlü programlama. 897 00:37:51,320 --> 00:37:55,160 Bu, yapabilirsiniz fikir karmaşık uygulamaları dağıtmak olduğunu 898 00:37:55,160 --> 00:37:59,720 çok, çok yüksek bir ölçek çalışabilir herhangi bir altyapı olmadan. 899 00:37:59,720 --> 00:38:02,120 Herhangi bir sabit olmadan olursa olsun altyapı. 900 00:38:02,120 --> 00:38:04,720 Ve biz biraz konuşacağım Bu biz olarak ne anlama geldiği hakkında 901 00:38:04,720 --> 00:38:06,550 çizelgeleri sonraki birkaç olsun. 902 00:38:06,550 --> 00:38:08,716 >> Biz yapacağız ilk şey Biz tabloları hakkında konuşacağım olduğunu. 903 00:38:08,716 --> 00:38:10,857 Dynamo API veri türleri. 904 00:38:10,857 --> 00:38:13,190 Ilk şey Ve olacak Bu baktığınızda fark, 905 00:38:13,190 --> 00:38:17,930 Eğer herhangi bir veritabanı aşina iseniz, veritabanları API'leri gerçekten iki tür var 906 00:38:17,930 --> 00:38:18,430 Ben derim. 907 00:38:18,430 --> 00:38:21,570 Veya API iki set. 908 00:38:21,570 --> 00:38:23,840 Bunlardan biri olacaktı İdari API. 909 00:38:23,840 --> 00:38:26,710 >> Onlar ilgilenir şeyler veritabanı fonksiyonları. 910 00:38:26,710 --> 00:38:31,340 Depolama motorunu yapılandırılması, kurma ve tablolar sözlerine ekledi. 911 00:38:31,340 --> 00:38:35,180 oluşturma veritabanı kataloglar ve örnekleri. 912 00:38:35,180 --> 00:38:40,450 DynamoDB bu seyleri, sen Çok kısa, kısa listeleri vardır. 913 00:38:40,450 --> 00:38:43,120 >> Yani diğer bir veritabanlarında, Eğer onlarca görebilirsiniz 914 00:38:43,120 --> 00:38:45,680 idari ve komutları komutları, yapılandırma 915 00:38:45,680 --> 00:38:47,290 Bu ek seçenekler. 916 00:38:47,290 --> 00:38:51,234 DynamoDB size çünkü o gerekmez Eğer sisteminizi yapılandırmak değil, biz bunu. 917 00:38:51,234 --> 00:38:54,150 Yani yapmanız gereken tek şey ihtiyacım var hangi boyutta tablo söyle. 918 00:38:54,150 --> 00:38:55,660 Yani bir çok olsun komutlar sınırlı sayıda. 919 00:38:55,660 --> 00:38:58,618 >> Bir tablo Güncellemesi oluşturma olsun, Masa, Tablo silin ve Tablo açıklayın. 920 00:38:58,618 --> 00:39:01,150 Bunlar tek şey Eğer DynamoDB için gereklidir. 921 00:39:01,150 --> 00:39:03,294 Bir depolama gerekmez motor konfigürasyonu. 922 00:39:03,294 --> 00:39:04,960 Ben çoğaltma konusunda endişelenmenize gerek yok. 923 00:39:04,960 --> 00:39:06,490 Ben Sharding hakkında endişelenmenize gerek yok. 924 00:39:06,490 --> 00:39:07,800 >> Ben endişelenmenize gerek yok Bu şeyler hakkında herhangi. 925 00:39:07,800 --> 00:39:08,740 Biz sizin için her şeyi. 926 00:39:08,740 --> 00:39:11,867 Yani havai büyük miktarda bulunuyor sadece plaka kaldırdı oluyor. 927 00:39:11,867 --> 00:39:13,200 Sonra CRUD operatörleri var. 928 00:39:13,200 --> 00:39:17,740 CRUD şey ne olduğunu bu veritabanında arama 929 00:39:17,740 --> 00:39:19,860 , Update, operatörler Sil oluşturun. 930 00:39:19,860 --> 00:39:24,180 Bunlar yaygın veritabanı işlemleri. 931 00:39:24,180 --> 00:39:31,299 Put öğesi gibi şeyler, öğe, güncelleme olsun öğeleri, öğeleri silmek, toplu sorgu, tarayın. 932 00:39:31,299 --> 00:39:32,840 Eğer tüm tabloyu taramak istiyorsanız. 933 00:39:32,840 --> 00:39:34,220 Masadan şeyi çekin. 934 00:39:34,220 --> 00:39:37,130 DynamoDB hakkında güzel şeylerden biri paralel tarama izin verir. 935 00:39:37,130 --> 00:39:40,602 Yani aslında kaç bana bildirin ipler bu tarama çalıştırmak istiyorum. 936 00:39:40,602 --> 00:39:41,810 Ve biz bu konuları çalıştırabilirsiniz. 937 00:39:41,810 --> 00:39:43,985 Biz yukarı tarama spin olabilir birden çok iş parçacığı üzerinde 938 00:39:43,985 --> 00:39:49,060 böylece tüm tabloyu tarayabilir Çok, çok hızlı bir şekilde DynamoDB boşluk. 939 00:39:49,060 --> 00:39:51,490 >> Elimizdeki diğer API Bizim Akarsular API dediğimiz. 940 00:39:51,490 --> 00:39:52,940 Biz de konuşmak için gitmiyoruz Şu anda bu konuda çok. 941 00:39:52,940 --> 00:39:55,189 Ben bazı içerik daha sonra var Bu konuda güverte üzerinde. 942 00:39:55,189 --> 00:39:59,910 Ama Akımlar gerçekten running-- olduğunu Zaman sipariş olarak düşünmek 943 00:39:59,910 --> 00:40:01,274 ve bölüm değiştirme günlüğü. 944 00:40:01,274 --> 00:40:03,940 Üzerinde oluyor her şey masa dere üzerinde gösterir. 945 00:40:03,940 --> 00:40:05,940 >> Her tabloya yazma dere üzerinde gösterir. 946 00:40:05,940 --> 00:40:08,370 O akışı okuyabilir ve onunla şeyler yapabilirsiniz. 947 00:40:08,370 --> 00:40:10,150 Biz hakkında konuşmak ne yapacaksınız şeylerin türleri 948 00:40:10,150 --> 00:40:13,680 çoğaltma gibi şeyler yapmak, ikincil dizin oluşturma. 949 00:40:13,680 --> 00:40:17,620 Gerçekten harika her türlü işler o ile yapabilirsiniz. 950 00:40:17,620 --> 00:40:19,150 >> Veri türleri. 951 00:40:19,150 --> 00:40:23,320 DynamoDB, biz hem anahtar destekleyen değer ve belge veri türleri. 952 00:40:23,320 --> 00:40:26,350 Ekranın sol tarafta Burada, bizim temel türleri var. 953 00:40:26,350 --> 00:40:27,230 Anahtar değer türleri. 954 00:40:27,230 --> 00:40:30,040 Bu dizeleri, sayılar ve ikili. 955 00:40:30,040 --> 00:40:31,640 >> Yani sadece üç temel türleri. 956 00:40:31,640 --> 00:40:33,700 Ve sonra o kümeleri olabilir. 957 00:40:33,700 --> 00:40:37,650 Güzel şeylerden biri NoSQL ile ilgili Eğer özellikleri gibi diziler içerebilir. 958 00:40:37,650 --> 00:40:42,050 Ve DynamoDB ile diziler içerebilir Bir kök özelliği olarak temel türde. 959 00:40:42,050 --> 00:40:43,885 >> Ve sonra belge türleri var. 960 00:40:43,885 --> 00:40:45,510 Kaç kişi JSON aşina? 961 00:40:45,510 --> 00:40:47,130 Çok JSON aşina Siz? 962 00:40:47,130 --> 00:40:49,380 Bu temelde JavaScript var Nesne, Notasyon. 963 00:40:49,380 --> 00:40:52,510 Bu temelde sağlar hiyerarşik bir yapıyı tanımlar. 964 00:40:52,510 --> 00:40:58,107 >> Üzerinde JSON belgesini saklayabilirsiniz DynamoDB ortak bileşenler kullanılarak 965 00:40:58,107 --> 00:41:00,940 veya yapı taşları mevcuttur çoğu programlama dillerinde. 966 00:41:00,940 --> 00:41:03,602 Java varsa Yani, sen haritalar ve listeleri bakarak. 967 00:41:03,602 --> 00:41:05,060 Ben o bölgede harita nesneleri oluşturabilirsiniz. 968 00:41:05,060 --> 00:41:08,030 Anahtar değerler olarak bir harita özellikleri olarak depolanır. 969 00:41:08,030 --> 00:41:10,890 Ve bu listeleri olabilir bu özellikleri içindeki değerler. 970 00:41:10,890 --> 00:41:13,490 Bu karmaşık saklayabilirsiniz hiyerarşik yapı 971 00:41:13,490 --> 00:41:16,320 Tek bir niteliği olarak Bir DynamoDB ürünün. 972 00:41:16,320 --> 00:41:19,010 973 00:41:19,010 --> 00:41:24,460 >> DynamoDB tabloları Yani, çoğu gibi NoSQL veritabanları, tablolar ürün yok. 974 00:41:24,460 --> 00:41:26,469 MongoDB sen olur Bu belgeleri arayın. 975 00:41:26,469 --> 00:41:27,760 Ve bu kanepe temel olacaktır. 976 00:41:27,760 --> 00:41:28,900 Ayrıca belge veritabanı. 977 00:41:28,900 --> 00:41:29,941 Sen bu belgeleri diyoruz. 978 00:41:29,941 --> 00:41:32,930 Belgeler veya öğeler özelliklere sahip. 979 00:41:32,930 --> 00:41:35,850 Özellikler mevcut olabilir ya da öğe mevcut değil. 980 00:41:35,850 --> 00:41:38,520 DynamoDB olarak, orada bir zorunlu nitelik. 981 00:41:38,520 --> 00:41:43,880 Sadece bir ilişkisel veritabanı gibi, Eğer masada bir birincil anahtara sahip. 982 00:41:43,880 --> 00:41:46,010 >> DynamoDB bir karma anahtarı dediğimiz vardır. 983 00:41:46,010 --> 00:41:48,280 Hash anahtar benzersiz olmalıdır. 984 00:41:48,280 --> 00:41:52,580 Yani bir karma tablo tanımladığınızda, temelde ne söylüyorum 985 00:41:52,580 --> 00:41:54,110 Her öğe bir karma anahtarı olacaktır. 986 00:41:54,110 --> 00:41:58,520 Ve her karma anahtarı benzersiz olmalıdır. 987 00:41:58,520 --> 00:42:01,200 >> Her madde tanımlanır benzersiz karma tuşu ile. 988 00:42:01,200 --> 00:42:02,940 Ve sadece bir olabilir. 989 00:42:02,940 --> 00:42:05,820 Bu Tamam, ama çoğu zaman insanlar ne gerek 990 00:42:05,820 --> 00:42:08,170 İstedikleri bu karma Biraz daha yapmak için anahtar 991 00:42:08,170 --> 00:42:11,010 daha sadece benzersiz bir tanımlayıcı olabilir. 992 00:42:11,010 --> 00:42:15,240 Çoğu kez o karma tuşunu kullanmak istiyorsanız üst düzey çekiş kova olarak. 993 00:42:15,240 --> 00:42:19,160 Ve biz bunu yolu gereğidir Biz aralık anahtarı dediğimiz sözlerine ekledi. 994 00:42:19,160 --> 00:42:22,460 >> Sadece bir hash Yani eğer masa, bu benzersiz olmalıdır. 995 00:42:22,460 --> 00:42:27,040 Bir karma ve aralık tablo ise, karma ve aralık kombinasyonu 996 00:42:27,040 --> 00:42:28,640 eşsiz olmalı. 997 00:42:28,640 --> 00:42:30,110 Yani bu şekilde düşün. 998 00:42:30,110 --> 00:42:32,140 Ben bir forum var. 999 00:42:32,140 --> 00:42:39,010 Ve formu vardır, konular vardır nakleder ve yanıtları vardır. 1000 00:42:39,010 --> 00:42:42,630 >> Yani bir karma olabilir Konu kimliği anahtar. 1001 00:42:42,630 --> 00:42:46,650 Ve ben bir aralık anahtarı olabilir, Hangi yanıt kimliğidir. 1002 00:42:46,650 --> 00:42:49,650 Bu şekilde tüm almak istiyorsanız Belirli bir konu için yanıtlar, 1003 00:42:49,650 --> 00:42:52,370 Ben sadece hash sorgulayabilirsiniz. 1004 00:42:52,370 --> 00:42:55,190 Bana tüm vermek demek sadece edebilirsiniz Bu karma sahip ürün. 1005 00:42:55,190 --> 00:43:01,910 Ve ben her soruyu alacağım ya da belirli bir konu için yazı. 1006 00:43:01,910 --> 00:43:03,910 Bunlar üst düzey toplamalardan çok önemlidir. 1007 00:43:03,910 --> 00:43:07,370 Onlar birincil erişim desteği Uygulama örneği. 1008 00:43:07,370 --> 00:43:09,420 Genel olarak, bu, konuşma bizim yapmak istediğimiz budur. 1009 00:43:09,420 --> 00:43:11,780 Biz table-- istiyoruz Tabloyu yük olarak, 1010 00:43:11,780 --> 00:43:16,640 Biz veri yapısı istiyoruz bu şekilde tablo içinde 1011 00:43:16,640 --> 00:43:20,140 Bu uygulama çok can hızlı bir şekilde bu sonuçları almak. 1012 00:43:20,140 --> 00:43:24,510 Ve çoğu zaman bunu yapmak için bir yoldur biz olarak bu toplamalardan korumak 1013 00:43:24,510 --> 00:43:25,650 veri ekleyin. 1014 00:43:25,650 --> 00:43:31,110 Temelde, biz verileri yaymak ediyoruz Parlak kova içine o gelir olarak. 1015 00:43:31,110 --> 00:43:35,210 >> Aralık tuşları Benim, karma izin tuşları eşitlik olması gerekir. 1016 00:43:35,210 --> 00:43:39,490 Ben karma sorguladığınızda, söylemek zorunda Bana bu eşittir bir karma verin. 1017 00:43:39,490 --> 00:43:41,950 Ben bir dizi sorguladığınızda, ben Bana bir dizi vermek söyleyebiliriz 1018 00:43:41,950 --> 00:43:47,040 Bu her türlü kullanımı olduğunu Desteklediğimiz zengin operatör. 1019 00:43:47,040 --> 00:43:49,200 Bana bir karma için tüm öğeleri verin. 1020 00:43:49,200 --> 00:43:52,520 O, daha büyük, eşit midir onunla kaçta başlayacak, daha az 1021 00:43:52,520 --> 00:43:54,145 bu iki değer arasındaki mevcut mu? 1022 00:43:54,145 --> 00:43:56,811 Aralık sorguları Yani bu tür Biz her zaman ilgi olduğunu. 1023 00:43:56,811 --> 00:43:59,650 Şimdi veriler hakkında bir şey, ne zaman Eğer veri erişimini bakmak 1024 00:43:59,650 --> 00:44:02,360 Eğer veri erişim, bu kadar Her zaman bir toplama konusunda. 1025 00:44:02,360 --> 00:44:05,770 Bu kayıtları hakkında her zaman bu ilişkilidir. 1026 00:44:05,770 --> 00:44:10,390 Burada bana her şeyi ver tüm bu- Bu kredi kartı işlemleri 1027 00:44:10,390 --> 00:44:12,500 geçen ay. 1028 00:44:12,500 --> 00:44:13,960 Bu bir toplanma var. 1029 00:44:13,960 --> 00:44:17,490 >> Neredeyse her şeyi yapmak Veritabanı toplanmasının bir tür. 1030 00:44:17,490 --> 00:44:21,530 Tanımlayabilmek Yani varlık mümkün Bu kovalar ve size bu dizi vermek 1031 00:44:21,530 --> 00:44:24,950 üzerinde sorgulamak mümkün niteliklerini, Bu zengin sorgular, birçok destekleyen 1032 00:44:24,950 --> 00:44:27,165 birçok, birçok uygulama erişim desenleri. 1033 00:44:27,165 --> 00:44:30,990 1034 00:44:30,990 --> 00:44:35,000 >> Başka bir şey karma anahtarı Yani does it bize bir mekanizma sağlar olduğu 1035 00:44:35,000 --> 00:44:37,740 etrafında verilerini yaymak mümkün. 1036 00:44:37,740 --> 00:44:40,390 NoSQL veritabanları en iyi iş zaman verileri eşit olduğunu 1037 00:44:40,390 --> 00:44:41,740 küme dağılmış. 1038 00:44:41,740 --> 00:44:44,530 1039 00:44:44,530 --> 00:44:47,050 Kaç kişi tanıdık algoritmalar karma ile? 1040 00:44:47,050 --> 00:44:49,860 Ben karma bir hashing-- deyince Bir karma algoritması, çünkü 1041 00:44:49,860 --> 00:44:54,140 üretmek edememek bir yoludur herhangi bir değeri rastgele bir değer. 1042 00:44:54,140 --> 00:44:59,300 Bu özel durumda, bu yüzden Biz koşmak hash algoritması tabanlı ND 5'tir. 1043 00:44:59,300 --> 00:45:04,765 >> Ve ben bir kimlik var ve bu eğer Benim karma anahtarı, ben 1, 2, 3 var. 1044 00:45:04,765 --> 00:45:07,390 Ben karma algoritması çalıştırdığınızda, o, geri gel ve söyleyecek 1045 00:45:07,390 --> 00:45:10,800 kuyu 1, 2 7B eşittir 48 eşittir 3 CD eşittir. 1046 00:45:10,800 --> 00:45:13,092 Onlar tüm anahtar alan yayılmış ediyoruz. 1047 00:45:13,092 --> 00:45:14,050 Ve neden bunu yapıyorsun? 1048 00:45:14,050 --> 00:45:17,120 Emin kılan Çünkü ben can Birden düğümler arasında kayıtlarını koydu. 1049 00:45:17,120 --> 00:45:19,574 >> Ben yapıyorum, eğer adım adım, 1, 2, 3. 1050 00:45:19,574 --> 00:45:21,990 Ve ben bir karma aralığı var Bu özel durumda çalışır, 1051 00:45:21,990 --> 00:45:24,785 Küçük bir karma boşluk, o, 00 ile FF çalışır 1052 00:45:24,785 --> 00:45:27,951 Daha sonra kayıt gelmek için gidiyoruz ve onlar gitmek için gidiyoruz 1, 2, 3, 4, 5, 1053 00:45:27,951 --> 00:45:30,390 6, 7, 8, 9, 10, 11, 12. 1054 00:45:30,390 --> 00:45:31,800 Ne oluyor? 1055 00:45:31,800 --> 00:45:34,860 Her insert aynı düğüme gidiyor. 1056 00:45:34,860 --> 00:45:36,070 Ne demek istediğimi görüyor musun? 1057 00:45:36,070 --> 00:45:40,910 >> Ben uzay böldüğünüzde Çünkü, ve ben, karşısında bu kayıtları yaymak 1058 00:45:40,910 --> 00:45:45,950 ve ben bölümü, söylemek için gidiyorum bölüm 1 54 anahtar alanı 0 vardır. 1059 00:45:45,950 --> 00:45:47,720 Partition 2 89 55 olduğunu. 1060 00:45:47,720 --> 00:45:49,780 Bölme 3 FF AA. 1061 00:45:49,780 --> 00:45:53,740 Ben artan doğrusal kullanıyorum Yani eğer Kimlikleri, neler olup bittiğini görebilirsiniz. 1062 00:45:53,740 --> 00:45:57,410 1, 2, 3, 4, 5, 6, yukarı 54'e tüm yol. 1063 00:45:57,410 --> 00:46:00,030 Ben çekiç ediyorum Yani sisteme kayıtları, 1064 00:46:00,030 --> 00:46:02,030 Her şey bir düğüme gidiş biter. 1065 00:46:02,030 --> 00:46:03,160 >> Bu iyi değil. 1066 00:46:03,160 --> 00:46:04,820 Bu bir antipattern var. 1067 00:46:04,820 --> 00:46:08,760 MongoDB onlar bu sorunu Bir karma tuşunu kullanın yoksa. 1068 00:46:08,760 --> 00:46:11,325 MongoDB size seçenek sunuyor anahtar değerini karma. 1069 00:46:11,325 --> 00:46:13,950 Her zaman, eğer o yapmalıyım Eğer artan bir karma kullanıyorsanız 1070 00:46:13,950 --> 00:46:17,380 MongoDB anahtar veya olacağım bir düğüm her yazma çivileme, 1071 00:46:17,380 --> 00:46:21,290 ve sınırlandırıcı olacaktır kötü senin yazma çıktı. 1072 00:46:21,290 --> 00:46:24,896 >> HEDEF KİTLE: ondalık o A9 169 mı? 1073 00:46:24,896 --> 00:46:28,450 >> Rick, Houlihan: Evet, var oralarda etrafında. 1074 00:46:28,450 --> 00:46:29,950 A9, bilmiyorum. 1075 00:46:29,950 --> 00:46:32,200 Sen benim ikili almak olurdu ondalık hesap makinesi. 1076 00:46:32,200 --> 00:46:34,237 Beynim böyle çalışmaz. 1077 00:46:34,237 --> 00:46:36,320 HEDEF KİTLE: Sadece bir hızlı bir senin Mongo yorumlar. 1078 00:46:36,320 --> 00:46:39,530 Yani gelen nesne kimliğidir doğal Mongo ile bunu? 1079 00:46:39,530 --> 00:46:40,179 1080 00:46:40,179 --> 00:46:41,470 Rick, Houlihan: o yapar mı? 1081 00:46:41,470 --> 00:46:42,970 Eğer belirtirseniz. 1082 00:46:42,970 --> 00:46:45,030 MongoDB ile, seçeneğiniz vardır. 1083 00:46:45,030 --> 00:46:48,930 Siz her belgeyi specify-- edebilirsiniz MongoDB bir alt kimliği olması gerekiyor. 1084 00:46:48,930 --> 00:46:50,300 Bu eşsiz bir değerdir. 1085 00:46:50,300 --> 00:46:55,240 >> MongoDB olarak belirtebilirsiniz Bunu karma edip etmeyeceğine. 1086 00:46:55,240 --> 00:46:56,490 Onlar sadece sana seçeneği sunar. 1087 00:46:56,490 --> 00:46:58,198 Bunun olduğunu biliyorsanız rastgele, sorun yok. 1088 00:46:58,198 --> 00:46:59,640 Bunu yapmak gerekmez. 1089 00:46:59,640 --> 00:47:04,260 Eğer o, rastgele olmadığını biliyorsanız o artan oluyor, sonra karma yapmak. 1090 00:47:04,260 --> 00:47:06,880 >> Şimdi bir şey hakkında Eğer karma bir kez, karma 1091 00:47:06,880 --> 00:47:08,800 Bir value-- ve bu Neden karma anahtarları her zaman 1092 00:47:08,800 --> 00:47:13,740 Eşsiz sorgular, ben değiştim çünkü değer, şimdi bir aralık sorgusu yapamaz. 1093 00:47:13,740 --> 00:47:15,640 Ben bu olduğunu söyleyemeyiz şu ya da bu arasındaki 1094 00:47:15,640 --> 00:47:20,800 müzakere değeri gitmiyor çünkü gerçek değerine denk olduğu. 1095 00:47:20,800 --> 00:47:24,570 Yani o zaman karma anahtar, sadece eşitlik var. 1096 00:47:24,570 --> 00:47:28,700 Bu yüzden DynamoDB karma anahtarında ise sorgular hep sadece eşitlik vardır. 1097 00:47:28,700 --> 00:47:32,090 1098 00:47:32,090 --> 00:47:34,700 >> Yani şimdi bir aralıkta key-- O aralık anahtarı eklediğinizde, 1099 00:47:34,700 --> 00:47:38,180 Bu aralık anahtarı kayıtları tüm gelir ve aynı bölüme saklanan olsun. 1100 00:47:38,180 --> 00:47:42,430 Yani kolayca, çok hızlı bir şekilde vardır Bu karma çünkü alınan, 1101 00:47:42,430 --> 00:47:43,220 Bu aralığıdır. 1102 00:47:43,220 --> 00:47:44,928 Ve her şeyi görmek Aynı karma ile 1103 00:47:44,928 --> 00:47:48,550 Aynı bölüm alanı depolanır. 1104 00:47:48,550 --> 00:47:53,889 Siz yardım için bu aralık tuşunu kullanabilirsiniz Onun ailesine yakın verilerinizi bulun. 1105 00:47:53,889 --> 00:47:55,180 Yani gerçekten burada ne yapıyorum? 1106 00:47:55,180 --> 00:47:57,320 Bu, pek çok ilişki bir tanesidir. 1107 00:47:57,320 --> 00:48:01,490 Bir diyez arasındaki ilişki ve aralık tuşu birçok biridir. 1108 00:48:01,490 --> 00:48:03,490 Birden karma anahtarı olabilir. 1109 00:48:03,490 --> 00:48:07,610 Ben sadece birden aralığı olabilir Her karma anahtarı içindeki tuşları. 1110 00:48:07,610 --> 00:48:11,910 >> Karma üst tanımlar, aralık çocukları tanımlar. 1111 00:48:11,910 --> 00:48:15,240 Gördüğünüz analog burada var ilişkisel yapı arasındaki 1112 00:48:15,240 --> 00:48:18,840 ve aynı tip NoSQL bölgesindeki oluşturur. 1113 00:48:18,840 --> 00:48:20,760 İnsanlar hakkında konuşmak Nonrelational olarak NoSQL. 1114 00:48:20,760 --> 00:48:22,200 Bu nonrelational değil. 1115 00:48:22,200 --> 00:48:24,680 Veri hep ilişkileri vardır. 1116 00:48:24,680 --> 00:48:28,172 Bu ilişkiler sadece farklı modellenmiştir. 1117 00:48:28,172 --> 00:48:29,880 Hadi biraz konuşalım dayanıklılık konusunda biraz. 1118 00:48:29,880 --> 00:48:34,860 Eğer DynamoDB yazdığınızda, yazar Her zaman üç yönlü çoğaltılır vardır. 1119 00:48:34,860 --> 00:48:37,550 Biz üç AZ en olması anlamına gelir. 1120 00:48:37,550 --> 00:48:39,160 AZ adlı Durumu Bölgeleri vardır. 1121 00:48:39,160 --> 00:48:43,430 Bir Uygunluk düşünebilirsiniz Bir veri merkezi olarak Bölge 1122 00:48:43,430 --> 00:48:45,447 veri merkezleri veya bir koleksiyon. 1123 00:48:45,447 --> 00:48:47,780 Bunlar coğrafi olarak birbirlerinden izole 1124 00:48:47,780 --> 00:48:51,610 Farklı fay zonları boyunca, karşısında elektrik hatları ve havzalarını farklı. 1125 00:48:51,610 --> 00:48:54,510 Tek AZ bir başarısızlık değil, Başka bir aşağı çekmek için gidiyor. 1126 00:48:54,510 --> 00:48:56,890 Ayrıca bağlantılıdır Birlikte dark fiber ile. 1127 00:48:56,890 --> 00:49:01,240 Bu bir alt destekler 1 AZS arasındaki milisaniye gecikme. 1128 00:49:01,240 --> 00:49:05,390 Yani gerçek zamanlı veri replikasyonu Çok AZS yetenekli. 1129 00:49:05,390 --> 00:49:09,990 >> Ve çoğu zaman çoklu AZ dağıtımları yüksek kullanılabilirlik gereksinimlerini karşılamak 1130 00:49:09,990 --> 00:49:12,930 en kurumsal kuruluşların. 1131 00:49:12,930 --> 00:49:16,139 Böylece DynamoDB yayılır Varsayılan olarak üç AZS arasında. 1132 00:49:16,139 --> 00:49:19,430 Biz sadece bilgi yazma gidiyoruz Bu üç düğüm iki döndüğümde 1133 00:49:19,430 --> 00:49:21,470 ve ben bunu aldım, evet, diyorum. 1134 00:49:21,470 --> 00:49:22,050 Neden? 1135 00:49:22,050 --> 00:49:25,950 Okuma tarafında Çünkü biz sadece ne zaman size geri veri vereceğim 1136 00:49:25,950 --> 00:49:27,570 Biz iki düğüm onu ​​olsun. 1137 00:49:27,570 --> 00:49:30,490 >> Ben genelinde kopyalayan ediyorsam Üç ve ben ikiden okuyorum, 1138 00:49:30,490 --> 00:49:32,840 Ben her zaman garanti ediyorum En az bir tane 1139 00:49:32,840 --> 00:49:35,720 Bu olmayı okur Verilerin en güncel kopyası. 1140 00:49:35,720 --> 00:49:38,340 Bu DynamoDB tutarlı kılan. 1141 00:49:38,340 --> 00:49:42,450 Şimdi açmak için seçebilirsiniz Bu tutarlı kapalı okur. 1142 00:49:42,450 --> 00:49:45,070 Bu durumda söylemek için gidiyorum, Ben sadece bir düğümden okuyacağım. 1143 00:49:45,070 --> 00:49:47,430 Ve ben gidiyor garanti edemez En güncel veriler olması. 1144 00:49:47,430 --> 00:49:49,450 >> Bir yazma geliyor Yani, o, henüz çoğaltılmış değil 1145 00:49:49,450 --> 00:49:50,360 O kopyasını almak için gidiyoruz. 1146 00:49:50,360 --> 00:49:52,220 Bu bir sonuçta tutarlı okuma. 1147 00:49:52,220 --> 00:49:54,640 Ve ne yarım maliyetidir. 1148 00:49:54,640 --> 00:49:56,140 Yani bu düşünmek bir şeydir. 1149 00:49:56,140 --> 00:50:00,160 Ne zaman DynamoDB okuyarak ve konum Eğer okuma kapasitesi kuruyoruz 1150 00:50:00,160 --> 00:50:04,430 birimler, sonunda seçerseniz Tutarlı, bu çok ucuz, okur 1151 00:50:04,430 --> 00:50:06,010 yaklaşık yarım maliyeti var. 1152 00:50:06,010 --> 00:50:09,342 >> Ve böylece size para kazandırır. 1153 00:50:09,342 --> 00:50:10,300 Ama bu senin seçimin. 1154 00:50:10,300 --> 00:50:12,925 Eğer tutarlı bir okuma istiyorsanız veya Bir sonunda tutarlı bir okuma. 1155 00:50:12,925 --> 00:50:15,720 Yani seçebilirsiniz şey. 1156 00:50:15,720 --> 00:50:17,659 >> En endeksler hakkında konuşalım. 1157 00:50:17,659 --> 00:50:19,450 Yani biz belirtti üst düzey çekiş. 1158 00:50:19,450 --> 00:50:23,720 Biz karma anahtarları var ve var Biz aralık tuşları var. 1159 00:50:23,720 --> 00:50:24,320 Bu güzel. 1160 00:50:24,320 --> 00:50:26,950 Ve bu, birincil masada olduğunu ben tek karma anahtar var, ben bir aralık anahtar var. 1161 00:50:26,950 --> 00:50:27,783 >> Bu ne anlama geliyor? 1162 00:50:27,783 --> 00:50:30,410 Bir özniteliği var ki ben karşı zengin sorguları çalıştırabilirsiniz. 1163 00:50:30,410 --> 00:50:31,800 Bu aralık anahtarı. 1164 00:50:31,800 --> 00:50:35,530 Bu item-- diğer nitelikleri Ben bu niteliklerini süzebilirsiniz. 1165 00:50:35,530 --> 00:50:40,050 Ama ben bunu şeyler gibi yapamaz ile başlayan ya da daha büyüktür. 1166 00:50:40,050 --> 00:50:40,820 >> Bunu nasıl yaparım? 1167 00:50:40,820 --> 00:50:42,860 Ben bir dizin oluşturabilirsiniz. 1168 00:50:42,860 --> 00:50:45,340 İki tür var DynamoDB endeksler. 1169 00:50:45,340 --> 00:50:49,002 Bir indeks gerçekten Tablonun bir başka görünümü. 1170 00:50:49,002 --> 00:50:50,490 Ve yerel ikincil indeks. 1171 00:50:50,490 --> 00:50:51,781 >> Biz bahsedeceğiz ilki. 1172 00:50:51,781 --> 00:50:57,740 Yani yerel ikinciller bir arada olan veri olarak aynı bölümde. 1173 00:50:57,740 --> 00:51:00,240 Ve gibi, onlar üzerinde aynı fiziksel düğüm. 1174 00:51:00,240 --> 00:51:01,780 Onlar bizim tutarlı dediğimiz vardır. 1175 00:51:01,780 --> 00:51:04,599 Anlamı, onlar kabul edecek tablo ile birlikte yazma. 1176 00:51:04,599 --> 00:51:06,890 Yazma geldiğinde, Biz endeksi ile yazacağım. 1177 00:51:06,890 --> 00:51:09,306 Biz masaya yazacağım ve sonra kabul edecektir. 1178 00:51:09,306 --> 00:51:10,490 Yani tutarlı. 1179 00:51:10,490 --> 00:51:13,174 Yazma olmuştur kez Tablodan kabul, 1180 00:51:13,174 --> 00:51:15,090 bu garantili Yerel ikincil indeks 1181 00:51:15,090 --> 00:51:18,380 Verilerin aynı vizyona sahip olacak. 1182 00:51:18,380 --> 00:51:22,390 Ama ne onlar izin yapmak olduğunu Alternatif aralık tuşları tanımlamak. 1183 00:51:22,390 --> 00:51:25,260 >> Aynı karma kullanmak zorunda Birincil tablodaki gibi anahtar, 1184 00:51:25,260 --> 00:51:29,050 Onlar çünkü üzerinde birlikte yer Aynı bölüm ve onlar tutarlı değil. 1185 00:51:29,050 --> 00:51:33,110 Ama ben bir dizin oluşturabilirsiniz Farklı aralık tuşları ile. 1186 00:51:33,110 --> 00:51:41,590 Yani, örneğin, eğer ben bir üretici vardı Bu ham parça tablo geliyor vardı. 1187 00:51:41,590 --> 00:51:44,590 Ve ham parçalar halinde gelir ve Onlar meclis tarafından toplanan ediyoruz. 1188 00:51:44,590 --> 00:51:46,840 Ve belki bir hatırlama var. 1189 00:51:46,840 --> 00:51:50,240 >> Bu tarafından yapılan herhangi bir bölümü Bu tarihten sonra üretici, 1190 00:51:50,240 --> 00:51:52,840 Benim hattan çekmeniz gerekmektedir. 1191 00:51:52,840 --> 00:51:55,950 Ben bir dizin spin olabilir Bu, bakıyor olurdu 1192 00:51:55,950 --> 00:52:00,760 tarihte toplayarak söz konusu parçanın imalatı. 1193 00:52:00,760 --> 00:52:03,930 Benim üst düzey tablo oldu Yani eğer Zaten üretici tarafından karma, 1194 00:52:03,930 --> 00:52:07,655 belki ben, bölüm kimliği düzenlenmiştir O masadan bir dizin oluşturabilirsiniz 1195 00:52:07,655 --> 00:52:11,140 imalatçı tarafından karma olarak ve üretim tarihi değişiyordu. 1196 00:52:11,140 --> 00:52:14,490 Ve diyorum ki yol, herhangi bir şey Bu tarihler arasında imal edilmiştir, 1197 00:52:14,490 --> 00:52:16,804 Ben hattan çekmeniz gerekmektedir. 1198 00:52:16,804 --> 00:52:18,220 Yani yerel bir ikincil dizin var. 1199 00:52:18,220 --> 00:52:22,280 >> Bu etkiye sahip senin karma anahtar alan sınırlayıcı. 1200 00:52:22,280 --> 00:52:24,360 Onlar Çünkü birlikte var aynı depolama düğümde, 1201 00:52:24,360 --> 00:52:26,860 Onlar karma anahtarı sınırı 10 gigabayt yer. 1202 00:52:26,860 --> 00:52:28,950 DynamoDB altında tablolar, bölüm olacak 1203 00:52:28,950 --> 00:52:31,380 Tablonuzu her 10 gigabayt. 1204 00:52:31,380 --> 00:52:34,760 Veri 10 konser koymak, biz [PHH] gitmek ve biz başka bir düğüm ekleyin. 1205 00:52:34,760 --> 00:52:38,120 1206 00:52:38,120 --> 00:52:42,070 >> Sizlere LSI bölünmüş olmaz birden fazla bölüme karşısında. 1207 00:52:42,070 --> 00:52:43,200 Biz tabloyu bölünmüş olacak. 1208 00:52:43,200 --> 00:52:44,679 Ama biz LSI bölünmüş olmaz. 1209 00:52:44,679 --> 00:52:46,470 Bu yüzden bir şey anlamak önemlidir 1210 00:52:46,470 --> 00:52:50,070 Çok yapıyoruz olduğunu, çok büyük toplamalar, 1211 00:52:50,070 --> 00:52:53,860 o zaman sınırlı gidiyoruz senin LSIS 10 gigabayt. 1212 00:52:53,860 --> 00:52:56,640 >> Bu durumda, biz Global Sekonder kullanın. 1213 00:52:56,640 --> 00:52:58,630 Küresel ikinciller vardır Gerçekten başka bir tablo. 1214 00:52:58,630 --> 00:53:01,720 Onlar için kapalı tamamen mevcut Birincil tablonun yan. 1215 00:53:01,720 --> 00:53:04,680 Ve onlar beni bulmak için izin tamamen farklı bir yapı. 1216 00:53:04,680 --> 00:53:08,010 Veri eklenir ediliyor Yani düşün İki farklı tabloya, yapılandırılmış 1217 00:53:08,010 --> 00:53:09,220 iki farklı şekilde. 1218 00:53:09,220 --> 00:53:11,360 >> Bir tamamen tanımlayabilir farklı hash tuşuna basın. 1219 00:53:11,360 --> 00:53:13,490 Bir tamamen tanımlayabilir Farklı aralık tuşuna basın. 1220 00:53:13,490 --> 00:53:15,941 Ve ben bu çalıştırabilirsiniz Tamamen bağımsız. 1221 00:53:15,941 --> 00:53:18,190 Nitekim olarak, ben ettik Benim okuma kapasitesi provisioned 1222 00:53:18,190 --> 00:53:21,090 ve kapasitesini yazmak benim Küresel ikincil indeksler 1223 00:53:21,090 --> 00:53:24,240 Tamamen bağımsız olarak benim birincil tablonun. 1224 00:53:24,240 --> 00:53:26,640 O indeksi tanımlarsanız, anlarım ne kadar okuma ve yazma 1225 00:53:26,640 --> 00:53:28,610 kapasite kullanarak gidiyor. 1226 00:53:28,610 --> 00:53:31,490 >> Ve bu ayrı benim birincil tablodan. 1227 00:53:31,490 --> 00:53:35,240 Şimdi dizinler hem bize izin sadece, karma ve aralık tuşları tanımlamak 1228 00:53:35,240 --> 00:53:38,610 ama onlar için bize izin ek değerler proje. 1229 00:53:38,610 --> 00:53:44,950 Ben endeksi kapalı okumak istiyorsanız, ve ben bazı verilerin set almak istiyorum, 1230 00:53:44,950 --> 00:53:48,327 Ben ana geri dönmek gerek yok tablo ek özellikleri elde etmek. 1231 00:53:48,327 --> 00:53:50,660 Ben bu ek proje olabilir tabloya niteliklerini 1232 00:53:50,660 --> 00:53:53,440 erişim deseni desteklemek. 1233 00:53:53,440 --> 00:53:57,700 Ben muhtemelen bazı içine alıyoruz biliyorum Gerçekten, otların içine almak gerçekten-- 1234 00:53:57,700 --> 00:53:58,910 Burada bu bazı şeyler üzerinde. 1235 00:53:58,910 --> 00:54:02,725 Şimdi bu dışarı kayması lazım. 1236 00:54:02,725 --> 00:54:07,320 >> HEDEF KİTLE: [duyulamaz] --table anahtar bir karma olduğu anlamına geliyordu? 1237 00:54:07,320 --> 00:54:08,840 Orijinal karma? 1238 00:54:08,840 --> 00:54:09,340 Çoklu kaburgalar? 1239 00:54:09,340 --> 00:54:10,200 >> Rick, Houlihan: Evet. 1240 00:54:10,200 --> 00:54:11,070 Evet. 1241 00:54:11,070 --> 00:54:15,260 Masa anahtarı temelde geri öğeye işaret eder. 1242 00:54:15,260 --> 00:54:19,280 Yani bir dizin bir işaretçi için geri masaya orijinal öğeler. 1243 00:54:19,280 --> 00:54:22,910 Şimdi bir inşa seçebilirsiniz yalnızca tablo anahtar vardır endeksi, 1244 00:54:22,910 --> 00:54:24,840 ve başka hiçbir özellikleri. 1245 00:54:24,840 --> 00:54:26,570 Ve ben bu yüzden yapabilirim? 1246 00:54:26,570 --> 00:54:28,570 Eh, belki çok büyük ürün yok. 1247 00:54:28,570 --> 00:54:31,660 >> Ben gerçekten sadece bilmeniz gereken hususların Benim erişim deseni, diyebilirsiniz 1248 00:54:31,660 --> 00:54:33,760 hangi öğelerin bu özelliğini içeren? 1249 00:54:33,760 --> 00:54:35,780 Öğeyi döndürmek gerek yok. 1250 00:54:35,780 --> 00:54:37,800 Sadece bilmek istiyorum hangi öğelerin bunu içerir. 1251 00:54:37,800 --> 00:54:40,700 Yani dizinler oluşturabilirsiniz tek tablo anahtarı var. 1252 00:54:40,700 --> 00:54:43,360 >> Ama bu öncelikle ne var veritabanında bir göstergesi olduğunu. 1253 00:54:43,360 --> 00:54:46,280 Hızla için güçlü olmak için var kaydeder hangi tanımlamak 1254 00:54:46,280 --> 00:54:49,470 hangi satırların, hangi Tablodaki öğeler var 1255 00:54:49,470 --> 00:54:51,080 Arıyorum özellikleri. 1256 00:54:51,080 --> 00:54:53,610 1257 00:54:53,610 --> 00:54:54,860 >> GSIS, bu yüzden nasıl çalışır? 1258 00:54:54,860 --> 00:54:58,340 GSIS temelde asenkron bulunmaktadır. 1259 00:54:58,340 --> 00:55:02,570 Güncelleştirme tabloya geliyor, tablo daha sonra zaman uyumsuz güncellenir 1260 00:55:02,570 --> 00:55:03,720 senin GSIS hepsi. 1261 00:55:03,720 --> 00:55:06,680 GSIS neden budur sonunda tutarlı. 1262 00:55:06,680 --> 00:55:09,440 >> Bu dikkat etmek önemlidir ne zaman GSIS bina konum, 1263 00:55:09,440 --> 00:55:13,110 ve sen oluştururken anlıyorum aggregation-- başka boyutu 1264 00:55:13,110 --> 00:55:16,594 Şimdi en iyi bir örnek diyelim Burada bir üreticisidir. 1265 00:55:16,594 --> 00:55:19,260 Ben hakkında konuştuk olabileceğini düşünüyorum Bir tıbbi cihaz üreticisi. 1266 00:55:19,260 --> 00:55:23,870 Tıbbi cihaz üreticileri çoğu zaman tefrika parçalar var. 1267 00:55:23,870 --> 00:55:28,070 Gitmek parçaları Bir kalça protezi tüm 1268 00:55:28,070 --> 00:55:30,200 Onlara biraz seri numarası var. 1269 00:55:30,200 --> 00:55:33,584 Ve onlar milyonlarca verebilir ve milyonlarca parça milyarlarca 1270 00:55:33,584 --> 00:55:35,000 Onlar gemi tüm cihazlarda. 1271 00:55:35,000 --> 00:55:37,440 Eh, onlar altında toplamak gerekir Farklı boyutlar, tüm parçaları 1272 00:55:37,440 --> 00:55:39,520 Bir montajda, tüm yapılan parça 1273 00:55:39,520 --> 00:55:41,670 Belirli bir hat üzerinde, tüm geldi parçalar 1274 00:55:41,670 --> 00:55:44,620 Belirli bir üretici dan belirli bir tarihte. 1275 00:55:44,620 --> 00:55:47,940 Bazen bu toplamlar Milyarlarca içine kalk. 1276 00:55:47,940 --> 00:55:50,550 >> Yani bazı çalışmak acı bu adamlar 1277 00:55:50,550 --> 00:55:53,156 onlar oluştururken çünkü Bu ginormous toplamalardan 1278 00:55:53,156 --> 00:55:54,280 ikincil endeksler. 1279 00:55:54,280 --> 00:55:57,070 Onlar ham parçalar olabilir Sadece karma olarak geliyor tablo. 1280 00:55:57,070 --> 00:55:59,090 Her bölüm benzersiz bir seri numarası vardır. 1281 00:55:59,090 --> 00:56:00,975 Ben karma olarak seri numarasını kullanabilirsiniz. 1282 00:56:00,975 --> 00:56:01,600 Bu güzel. 1283 00:56:01,600 --> 00:56:04,160 Benim ham veri tablosu yayılır tüm kilit alan üzerinde. 1284 00:56:04,160 --> 00:56:05,930 Benim [? mal?] [? yutma?] müthiş. 1285 00:56:05,930 --> 00:56:07,876 Ben çok fazla veri almak. 1286 00:56:07,876 --> 00:56:09,500 Sonra ne onlar bir GSI oluşturmak olduğunu. 1287 00:56:09,500 --> 00:56:12,666 Ve ben görmeliyim, ne biliyorsun, demek Bu üreticiler tüm parçalar. 1288 00:56:12,666 --> 00:56:15,060 Peki, aniden ben Bir milyar satır alarak, 1289 00:56:15,060 --> 00:56:17,550 ve üzerine onları şeyler Bir düğüm, çünkü ne zaman 1290 00:56:17,550 --> 00:56:21,170 Ben agrega karma olarak üretici kimliği, 1291 00:56:21,170 --> 00:56:25,410 ve aralık olarak parça numarası, Sonra ben aniden 1292 00:56:25,410 --> 00:56:30,530 içine milyar parça koyarak neyi Bu üretici beni teslim etti. 1293 00:56:30,530 --> 00:56:34,447 >> Bu bir sürü neden olabilir GSI üzerinde baskı, 1294 00:56:34,447 --> 00:56:36,030 Yine, ben tek düğüm çekiçleme ediyorum çünkü. 1295 00:56:36,030 --> 00:56:38,350 Ben bütün bu atıyorum bir düğüm haline ekler. 1296 00:56:38,350 --> 00:56:40,940 Ve bu gerçek sorunlu kullanım durumunda bulunuyor. 1297 00:56:40,940 --> 00:56:43,479 Şimdi, ben iyi bir tasarım var Bunun önlemek için nasıl model. 1298 00:56:43,479 --> 00:56:45,770 Ve bu sorunlardan biri Hep çalışmak söyledi. 1299 00:56:45,770 --> 00:56:49,590 Ne Fakat, GSI olabilir olduğu Yeterli yazma kapasiteye sahip değildir 1300 00:56:49,590 --> 00:56:52,330 Tüm bu itmek mümkün olduğu tek bir düğüm haline satırları. 1301 00:56:52,330 --> 00:56:55,390 Ve sonra ne olur ise Birincil müşteri tablosu, 1302 00:56:55,390 --> 00:57:00,180 birincil tablo throttled olacak GSI kadar devam edemez, çünkü. 1303 00:57:00,180 --> 00:57:02,980 Yani benim insert oranı olacak Birincil masaya düşmek 1304 00:57:02,980 --> 00:57:06,230 Benim GSI yetişmek için çalışır gibi. 1305 00:57:06,230 --> 00:57:08,850 >> Pekala, LSI kıyafetleri, GSI o kadar, Ben hangisinin kullanmalıyım? 1306 00:57:08,850 --> 00:57:12,290 LSI en tutarlıdır. 1307 00:57:12,290 --> 00:57:13,750 GSI en sonunda tutarlıdır. 1308 00:57:13,750 --> 00:57:17,490 Bu Tamam, ben bir kullanmanızı tavsiye GSI, onlar çok daha esnek konum. 1309 00:57:17,490 --> 00:57:20,270 LSI en bir GSI olarak modellenebilir. 1310 00:57:20,270 --> 00:57:27,040 Ve eğer karma tuşları başına veri boyutu toplama 10 gigabayt aşıyor, 1311 00:57:27,040 --> 00:57:31,050 sonra o kullanmak istiyorum gidiyoruz GSI sadece zor bir sınırı var çünkü. 1312 00:57:31,050 --> 00:57:32,035 >> Pekala, ölçekleme. 1313 00:57:32,035 --> 00:57:35,210 1314 00:57:35,210 --> 00:57:37,460 Dynamo DB Verim, sen can karşılığı [duyulamaz] 1315 00:57:37,460 --> 00:57:38,680 Bir tabloya throughput. 1316 00:57:38,680 --> 00:57:42,740 Biz müşterilerimiz vardır provisioned 60 billion-- 1317 00:57:42,740 --> 00:57:45,970 Düzenli, 60 milyar isteklerini yapıyor bir milyondan fazla istekleri çalışan 1318 00:57:45,970 --> 00:57:47,790 Bizim masalarda saniyede. 1319 00:57:47,790 --> 00:57:50,360 Hayır gerçekten var teorik sınırı ne kadar 1320 00:57:50,360 --> 00:57:53,730 ve ne kadar hızlı tablo Dynamo DB çalıştırabilirsiniz. 1321 00:57:53,730 --> 00:57:55,920 Bazı yumuşak vardır Hesabınızdaki sınırları 1322 00:57:55,920 --> 00:57:58,170 böylece oraya koymak Bu deli gitmez. 1323 00:57:58,170 --> 00:58:00,070 Eğer daha fazla isterseniz Bu, bir sorun değil. 1324 00:58:00,070 --> 00:58:00,820 Sen bize gel. 1325 00:58:00,820 --> 00:58:02,810 Biz çevirmeli döneceğiz. 1326 00:58:02,810 --> 00:58:08,210 >> Her hesabın bir seviyede sınırlıdır Her hizmet, sadece yarasa 1327 00:58:08,210 --> 00:58:11,920 böylece insanlar deli gitmez belaya kendilerini olsun. 1328 00:58:11,920 --> 00:58:12,840 Boyutunda sınırı yok. 1329 00:58:12,840 --> 00:58:14,940 Herhangi bir sayı koyabilirsiniz Bir masaya öğeleri. 1330 00:58:14,940 --> 00:58:17,620 Bir öğenin boyutu 400 kilobayt Her sınırlı 1331 00:58:17,620 --> 00:58:20,050 Bu öğe değil nitelikler olacaktır. 1332 00:58:20,050 --> 00:58:24,200 Tüm niteliklerin toplamı So 400 kilobayt sınırlıdır. 1333 00:58:24,200 --> 00:58:27,300 Ve sonra tekrar, biz o küçük LSI sorunu 1334 00:58:27,300 --> 00:58:30,405 karma başına 10 gigabyte limitli. 1335 00:58:30,405 --> 00:58:33,280 HEDEF KİTLE: Az sayıda, ben eksik ne o, bana söylüyorsun o-- 1336 00:58:33,280 --> 00:58:36,830 HEDEF KİTLE: Oh, 400 kilobayt öğe başına maksimum boyutudur. 1337 00:58:36,830 --> 00:58:39,570 Yani bir öğe tüm özelliklere sahiptir. 1338 00:58:39,570 --> 00:58:43,950 Yani 400 k toplam boyutu Bu öğenin, 400 kilobayt. 1339 00:58:43,950 --> 00:58:46,170 Tüm niteliklerin Yani Birleştirilen tüm veri 1340 00:58:46,170 --> 00:58:49,140 tüm bu nitelikleri de var, toplam büyüklüğü içine yuvarlandı 1341 00:58:49,140 --> 00:58:51,140 Şu anda, bugün kalemi sınırı 400 k. 1342 00:58:51,140 --> 00:58:54,390 1343 00:58:54,390 --> 00:58:57,046 Yani elde yine ölçekleme Bölmeli. 1344 00:58:57,046 --> 00:58:58,920 Üretilen sağlanmışsa tablo düzeyinde. 1345 00:58:58,920 --> 00:59:00,160 Ve gerçekten iki düğme var. 1346 00:59:00,160 --> 00:59:02,400 Biz kapasite okudum ve kapasite yazın. 1347 00:59:02,400 --> 00:59:05,530 >> Peki bu ayarlanır birbirinden bağımsız olarak. 1348 00:59:05,530 --> 00:59:08,640 Kumandanın en tedbir kesinlikle tutarlı okur. 1349 00:59:08,640 --> 00:59:13,005 Tamam, bu yüzden eğer ben 1,000 istiyorum söylüyorsun UKÜ en olanlar kesinlikle tutarlı 1350 00:59:13,005 --> 00:59:14,130 Bu tutarlı bir okuma bulunmaktadır. 1351 00:59:14,130 --> 00:59:17,130 Eğer istediğim derseniz Tutarlı nihai okur 1352 00:59:17,130 --> 00:59:19,402 Eğer hüküm 1000 can UKÜ kıyafetleri, sen gidiyorsun 1353 00:59:19,402 --> 00:59:21,840 Sonunda 2,000 almak için tutarlıdır okur. 1354 00:59:21,840 --> 00:59:25,940 Ve olanlar için yarı fiyatına Sonunda okur oluşur. 1355 00:59:25,940 --> 00:59:28,520 >> Yine ayarlanmış birbirinden bağımsız olarak. 1356 00:59:28,520 --> 00:59:32,900 Ve onlar throughput-- var Eğer Kumandanın% 100 tüketmek ise, 1357 00:59:32,900 --> 00:59:35,960 Eğer darbe gitmiyorsun Haklarınız durumu. 1358 00:59:35,960 --> 00:59:40,161 Yani tamamen birbirinden bağımsız olarak gerçekleştirilir. 1359 00:59:40,161 --> 00:59:43,160 Pekâlâ, şeylerden biri olduğunu Ben kısaca kısıcı oldu bahsettiniz. 1360 00:59:43,160 --> 00:59:44,320 Bastırma kötü. 1361 00:59:44,320 --> 00:59:47,311 Bastırma hiçbir SQL kötü olduğunu gösterir. 1362 00:59:47,311 --> 00:59:50,310 Biz yardım etmek için yapabileceğiniz şeyler vardır Eğer azaltmayı hafifletmek olduğunu 1363 00:59:50,310 --> 00:59:51,040 yaşıyoruz. 1364 00:59:51,040 --> 00:59:53,240 Ama en iyi çözüm Buna en atalım olduğunu 1365 00:59:53,240 --> 00:59:58,000 Bir nedeni, ne yaptığınızı bakmak Burada oyunda bir anti-desen var. 1366 00:59:58,000 --> 01:00:02,140 >> Bunlar, sigara üniforma gibi şeyler iş yükü, sıcak tuşları, sıcak bölümleri. 1367 01:00:02,140 --> 01:00:06,210 Belirli bir anahtar alan vuruyorum çok sert belirli bazı nedenden dolayı. 1368 01:00:06,210 --> 01:00:07,080 Neden yapıyorum? 1369 01:00:07,080 --> 01:00:08,710 En anlamaya edelim. 1370 01:00:08,710 --> 01:00:10,427 Ben soğuk verilerle benim sıcak verileri karıştırma ediyorum. 1371 01:00:10,427 --> 01:00:12,510 Benim tabloları almak izin veriyorum büyük, ama orada gerçekten 1372 01:00:12,510 --> 01:00:15,970 verilerin sadece bir alt grubunu Bu benim için gerçekten ilginç. 1373 01:00:15,970 --> 01:00:20,290 Böylece log verileri, örneğin, bir çok Müşteriler, her gün veri giriş olsun. 1374 01:00:20,290 --> 01:00:22,490 Bunlar günlük veri büyük miktarda var. 1375 01:00:22,490 --> 01:00:25,940 >> Sadece tüm bu günlük damping ediyorsanız Zamanla büyük bir tabloya veri 1376 01:00:25,940 --> 01:00:28,070 Bu tablo masif almak için gidiyor. 1377 01:00:28,070 --> 01:00:30,950 Ama ben gerçekten sadece ilgileniyorum Son 24 saat son yedi gün, 1378 01:00:30,950 --> 01:00:31,659 son 30 gün. 1379 01:00:31,659 --> 01:00:34,074 Zaman ne olursa olsun pencere Ben arıyorum ilgileniyorum o 1380 01:00:34,074 --> 01:00:37,010 beni rahatsız ediyor, ya da etkinlik için Benim için ilginç olay, 1381 01:00:37,010 --> 01:00:39,540 ben gereken tek pencere zamanı. 1382 01:00:39,540 --> 01:00:42,470 Peki neden 10 yıl koyarak yaşıyorum Tablodaki günlük verilerini değerinde? 1383 01:00:42,470 --> 01:00:45,030 Bunun sebebi nedir olduğu Tablo fragmanı. 1384 01:00:45,030 --> 01:00:45,880 >> Çok büyük olur. 1385 01:00:45,880 --> 01:00:48,340 Dışarı yayılan başlar binlerce düğüm arasında. 1386 01:00:48,340 --> 01:00:51,380 Ve kapasite beri sen, bu kadar düşük 1387 01:00:51,380 --> 01:00:54,090 aslında her sınırlaması oranı bu bireysel düğümlerden biri. 1388 01:00:54,090 --> 01:00:57,120 Yani nasıl bakıyor başlayalım biz üzerinden bu tabloyu rulo yapın. 1389 01:00:57,120 --> 01:01:01,502 Biz bu verileri biraz yönetmek nasıl Daha iyi bu sorunları önlemek için. 1390 01:01:01,502 --> 01:01:02,710 Peki bu neye benziyor? 1391 01:01:02,710 --> 01:01:04,370 Bu durum böyle görünüyor. 1392 01:01:04,370 --> 01:01:06,790 Bu kötü NoSQL neye benzediğini olduğunu. 1393 01:01:06,790 --> 01:01:07,830 >> Burada sıcak bir anahtar var. 1394 01:01:07,830 --> 01:01:10,246 Burada tarafında bakarsak, bunların hepsi benim bölümlerdir. 1395 01:01:10,246 --> 01:01:12,630 Burada 16 bölüm kalktı Bu özel veritabanı üzerinde. 1396 01:01:12,630 --> 01:01:13,630 Biz bunu hep yapar. 1397 01:01:13,630 --> 01:01:15,046 Ben müşteriler için her zaman bu çalıştırın. 1398 01:01:15,046 --> 01:01:16,550 Bu ısı haritası denir. 1399 01:01:16,550 --> 01:01:20,590 Isı haritası sen nasıl söyler anahtar alan erişen. 1400 01:01:20,590 --> 01:01:23,700 Peki bu bana olduğunu belirli bir karma var ki 1401 01:01:23,700 --> 01:01:26,330 bu adam bir seviyor çok korkunç, o çünkü 1402 01:01:26,330 --> 01:01:28,250 gerçekten zor, gerçekten isabet. 1403 01:01:28,250 --> 01:01:29,260 >> Yani mavi güzel. 1404 01:01:29,260 --> 01:01:29,900 Biz mavi gibi. 1405 01:01:29,900 --> 01:01:30,720 Biz kırmızı sevmiyorum. 1406 01:01:30,720 --> 01:01:33,120 Red'in burada basınç % 100'e kadar alır. 1407 01:01:33,120 --> 01:01:35,560 % 100, şimdi bastırma için gidiyoruz. 1408 01:01:35,560 --> 01:01:39,030 Yani gibi herhangi bir kırmızı çizgiler gördüğünüzde bu-- ve sadece Dynamo DB-- değil 1409 01:01:39,030 --> 01:01:41,630 Her NoSQL veritabanı, bu sorunu var. 1410 01:01:41,630 --> 01:01:44,640 Anti-desenler o can vardır Bu tür koşullar sürücü. 1411 01:01:44,640 --> 01:01:49,070 Ne yapmam ben müşterileri ile çalışmak olduğunu Bu koşulları azaltmak için. 1412 01:01:49,070 --> 01:01:51,840 >> Peki bu neye benziyor? 1413 01:01:51,840 --> 01:01:54,260 Ve bu en oluyor Dynamo DB hacmi dışında, 1414 01:01:54,260 --> 01:01:56,176 ama gerçekten gidiyor NoSQL en iyi şekilde. 1415 01:01:56,176 --> 01:01:58,740 Bu Dinamo ile sınırlı değildir. 1416 01:01:58,740 --> 01:02:02,050 Bu definitely-- I Mongo çalışmak için kullanılır. 1417 01:02:02,050 --> 01:02:04,090 Birçok NoSQL platformları aşina değilim. 1418 01:02:04,090 --> 01:02:06,830 Her biri bu tür var kısayol tuşu sorunlar. 1419 01:02:06,830 --> 01:02:10,320 Herhangi bir NoSQL en iyi şekilde almak için veri tabanı, özel olarak Dinamo DB 1420 01:02:10,320 --> 01:02:13,320 Eğer tablo oluşturmak istiyorum nerede hash unsurdur vardır 1421 01:02:13,320 --> 01:02:18,590 farklı değerler çok sayıda, cardinality yüksek derecede. 1422 01:02:18,590 --> 01:02:22,530 Ben yazıyorum anlamına gelir, çünkü Farklı kovalar sürü. 1423 01:02:22,530 --> 01:02:24,870 >> Ben daha fazla kovalar , daha büyük olasılıkla yazma 1424 01:02:24,870 --> 01:02:29,100 O yazma yükü yaymak için ben veya Birden düğümler genelinde yük okumak, 1425 01:02:29,100 --> 01:02:33,560 daha muhtemel Ben sahip değilim masaya yüksek verimlilik. 1426 01:02:33,560 --> 01:02:37,440 Ve sonra değerleri olmak istiyorum zamanla oldukça eşit istenen 1427 01:02:37,440 --> 01:02:39,430 ve düzgün şekilde rastgele mümkün olduğunca. 1428 01:02:39,430 --> 01:02:42,410 Peki, bu, bir tür ilginç çünkü ben yapamam gerçekten 1429 01:02:42,410 --> 01:02:43,960 Kontrol kullanıcılar geldiğinde. 1430 01:02:43,960 --> 01:02:47,645 Biz yayıldı Yani, eğer söylemek yeterli anahtar alanı genelinde şeyler dışında, 1431 01:02:47,645 --> 01:02:49,270 biz muhtemelen daha iyi şekil olacak. 1432 01:02:49,270 --> 01:02:51,522 >> Belirli bir var zamanında teslimat miktarı 1433 01:02:51,522 --> 01:02:53,230 Eğer gitmiyorsun muktedir kontrolünü olmak. 1434 01:02:53,230 --> 01:02:55,438 Ama o gerçekten biz iki boyut, 1435 01:02:55,438 --> 01:02:58,800 uzay, erişim eşit yayılması, zaman, istekler 1436 01:02:58,800 --> 01:03:01,040 eşit zaman aralıklı gelmeden. 1437 01:03:01,040 --> 01:03:03,110 Ve bu iki eğer şartlar yerine ediliyor, 1438 01:03:03,110 --> 01:03:05,610 Sonra işte bu ne benzeyecek. 1439 01:03:05,610 --> 01:03:07,890 Bu çok güzel. 1440 01:03:07,890 --> 01:03:08,890 Biz burada gerçekten çok mutluyuz. 1441 01:03:08,890 --> 01:03:10,432 Biz çok bile erişim deseni var. 1442 01:03:10,432 --> 01:03:13,098 Evet, belki alıyoruz bir küçük basınç şimdi ve sonra her, 1443 01:03:13,098 --> 01:03:14,830 ama hiçbir şey gerçekten çok geniş. 1444 01:03:14,830 --> 01:03:17,660 Yani, kaç kez şaşırtıcı Ben müşterileri ile çalışırken, 1445 01:03:17,660 --> 01:03:20,670 Büyük kırmızı ilk grafik bar ve tüm o sarı değil çirkin 1446 01:03:20,670 --> 01:03:23,147 biryere, biz egzersiz ile halletmek 1447 01:03:23,147 --> 01:03:24,980 Birkaç ay sonra Yeniden mimari, 1448 01:03:24,980 --> 01:03:28,050 onlar tam olarak aynı koşuyoruz aynı yükte iş yükü. 1449 01:03:28,050 --> 01:03:30,140 Ve bu artık böyle bakıyor ne olduğunu. 1450 01:03:30,140 --> 01:03:36,600 Peki ne NoSQL ile olsun bir Kesinlikle bir veri şeması 1451 01:03:36,600 --> 01:03:38,510 erişim desen bağladılar. 1452 01:03:38,510 --> 01:03:42,170 >> Ve o veri şemasını optimize edebilirsiniz Bu erişim deseni desteklemek. 1453 01:03:42,170 --> 01:03:45,490 Bunu yapmazsanız, o zaman gidiyoruz sorunların bu tip görmek için 1454 01:03:45,490 --> 01:03:46,710 Bu kısayol tuşları ile. 1455 01:03:46,710 --> 01:03:50,518 >> HEDEF KİTLE: Peki, kaçınılmaz olarak bazı yerlerde diğerlerinden daha sıcak olacak. 1456 01:03:50,518 --> 01:03:51,450 >> Rick, Houlihan: Her zaman. 1457 01:03:51,450 --> 01:03:51,960 Her zaman. 1458 01:03:51,960 --> 01:03:54,620 Evet, ben her zaman var demek bir-- ve yine orada 1459 01:03:54,620 --> 01:03:56,980 bazı tasarım desenleri biz aracılığıyla alırsınız Bu sizin nasıl başa bahsedeceğiz 1460 01:03:56,980 --> 01:03:58,480 Bu süper geniş toplamalarla. 1461 01:03:58,480 --> 01:04:01,260 Yani, onları olması lazım Onlarla nasıl başa çıkıyorsunuz? 1462 01:04:01,260 --> 01:04:03,760 Ben oldukça iyi bir kullanım vaka var Bunun için söz edeceğiz. 1463 01:04:03,760 --> 01:04:05,940 >> Pekala, diyelim tartışma Şimdi ilgili bazı müşteriler. 1464 01:04:05,940 --> 01:04:06,950 Bu adamlar AdRoll vardır. 1465 01:04:06,950 --> 01:04:08,990 Sen eğer ben bilmiyorum AdRoll aşina. 1466 01:04:08,990 --> 01:04:10,781 Muhtemelen onları görmek tarayıcı üzerinde bir sürü. 1467 01:04:10,781 --> 01:04:14,230 Onlar değil, reklam yeniden hedefleme konum en büyük reklam yeniden hedefleme iş 1468 01:04:14,230 --> 01:04:14,940 dışarıda. 1469 01:04:14,940 --> 01:04:17,792 Normalde düzenli üzerinde çalıştırmak Günde 60 milyar işlemler. 1470 01:04:17,792 --> 01:04:20,000 Onlar milyon üzerinde yapıyoruz Saniyede işlemler. 1471 01:04:20,000 --> 01:04:22,660 Onlar oldukça basit bir tablo var yapı, işlek bir tablo. 1472 01:04:22,660 --> 01:04:26,450 Bu temelde bir Kare tuşuna, cookie 1473 01:04:26,450 --> 01:04:29,010 aralık demografik kategori ve daha sonra 1474 01:04:29,010 --> 01:04:31,220 Üçüncü nitelik puanı. 1475 01:04:31,220 --> 01:04:33,720 >> Bu yüzden tüm çerezleri Bu adamlar bizim tarayıcı. 1476 01:04:33,720 --> 01:04:35,900 Ve sen gittiğinde tüccar katılan 1477 01:04:35,900 --> 01:04:39,390 onlar temelde karşısında sizi puanı çeşitli demografik kategoriler. 1478 01:04:39,390 --> 01:04:42,070 Bir web sitesine gittiğinizde ve Eğer ben bu ad-- görmek istiyorum demek 1479 01:04:42,070 --> 01:04:44,920 veya temelde ki- söyleme ancak web sitesine gittiğinizde 1480 01:04:44,920 --> 01:04:47,550 onlar bu reklamı görmek istediklerini söylüyorlar. 1481 01:04:47,550 --> 01:04:49,370 Ve onlar AdRoll o reklamı getir. 1482 01:04:49,370 --> 01:04:51,130 AdRoll onların masada seni arar. 1483 01:04:51,130 --> 01:04:52,115 Onlar çerez bulabilirsiniz. 1484 01:04:52,115 --> 01:04:53,990 Söylüyorum reklamverenler Onları, ben birini istiyorum 1485 01:04:53,990 --> 01:04:58,632 Kim, orta yaşlı var Spor içine 40 yaşındaki adam,. 1486 01:04:58,632 --> 01:05:01,590 Ve onlar bu demografik sizi puanı ve olup olmadığına karar 1487 01:05:01,590 --> 01:05:02,740 Bu sizin için iyi bir reklam var. 1488 01:05:02,740 --> 01:05:10,330 >> Şimdi bir SLA ile var onların reklam sağlayıcıları 1489 01:05:10,330 --> 01:05:14,510 alt 10 milisaniye sağlamak için her istek üzerine tepki. 1490 01:05:14,510 --> 01:05:16,090 Yani bunun için Dynamo DB kullanıyoruz. 1491 01:05:16,090 --> 01:05:18,131 Bizi bir isabet ediyoruz saniyede milyon istekleri. 1492 01:05:18,131 --> 01:05:21,120 Onlar her şeyi mümkün olacaktır onların aramaları, triyaj, tüm bu verileri, 1493 01:05:21,120 --> 01:05:26,130 ve geri o eklenti link almak 10 milisaniye altında İlan. 1494 01:05:26,130 --> 01:05:29,800 Gerçekten oldukça olağanüstü bulunuyor Uygulama sahip oldukları. 1495 01:05:29,800 --> 01:05:36,210 >> Bu adamlar actually-- adamlar bunlar. 1496 01:05:36,210 --> 01:05:38,010 Ben bu adamları ise emin değilim. 1497 01:05:38,010 --> 01:05:40,127 Bu adamlar olabilir. 1498 01:05:40,127 --> 01:05:42,210 Temelde, hayır us-- anlattı Onları olduğunu sanmıyorum. 1499 01:05:42,210 --> 01:05:43,000 Ben başkası olduğunu düşünüyorum. 1500 01:05:43,000 --> 01:05:44,750 Ben birlikte çalıştığım Müşteri bana söyledi 1501 01:05:44,750 --> 01:05:47,040 şimdi onlar var olduğu Dynamo DB gitti, onlar 1502 01:05:47,040 --> 01:05:50,330 aperatifler daha fazla para harcama Onların geliştirme ekibi her ay 1503 01:05:50,330 --> 01:05:52,886 onların veritabanında harcama daha. 1504 01:05:52,886 --> 01:05:54,760 Bu yüzden size vereceğim maliyet tasarrufu fikri 1505 01:05:54,760 --> 01:05:57,889 Eğer Dinamo DB alabilirsiniz büyük. 1506 01:05:57,889 --> 01:05:59,430 Pekala, dropcam başka bir şirket var. 1507 01:05:59,430 --> 01:06:02,138 Bu adam tür of-- sizce eğer var şeylerin internet dropcam ve 1508 01:06:02,138 --> 01:06:05,150 temelde internet güvenlik video. 1509 01:06:05,150 --> 01:06:06,660 Orada kameranızı söndürüldü. 1510 01:06:06,660 --> 01:06:08,180 Kamera bir hareket detektörü bulunmaktadır. 1511 01:06:08,180 --> 01:06:10,290 Birisi birlikte geliyor Bir işaret noktasını tetikler. 1512 01:06:10,290 --> 01:06:13,540 Kamera bir süre kadar için kayda başlar artık herhangi bir hareketi algılamaz. 1513 01:06:13,540 --> 01:06:15,310 Internet üzerinde bu videoyu koyar. 1514 01:06:15,310 --> 01:06:19,800 >> Dropcam bir şirket oldu temelde Dynamo DB geçti 1515 01:06:19,800 --> 01:06:22,200 onlar yaşıyor çünkü muazzam büyüme sancıları. 1516 01:06:22,200 --> 01:06:25,820 Ve onlar bize söylediklerini, anda veri petabayt. 1517 01:06:25,820 --> 01:06:28,070 Onlar hiçbir fikri onların hizmet vardı kadar başarılı olacaktır. 1518 01:06:28,070 --> 01:06:32,310 YouTube daha gelen bir video bu adamlar alıyorsanız budur. 1519 01:06:32,310 --> 01:06:36,780 Hepsi izlemek için DynamoDB kullanın tüm Video kilit noktaları üzerinde meta. 1520 01:06:36,780 --> 01:06:40,282 >> Yani onlar itmek S3 kovalar var tüm ikili eserler içine. 1521 01:06:40,282 --> 01:06:41,990 Ve sonra sahip oldukları Dynamo DB kayıtları olduğunu 1522 01:06:41,990 --> 01:06:44,070 Bu S3 üç nesnelere insanları etmektedir. 1523 01:06:44,070 --> 01:06:47,070 Onlar bir video bakmak gerektiğinde, Onlar Dinamo DB kaydını aramak. 1524 01:06:47,070 --> 01:06:47,903 Onlar bağlantısını tıklayın. 1525 01:06:47,903 --> 01:06:49,770 Onlar S3 video aşağı çekin. 1526 01:06:49,770 --> 01:06:51,590 Yani bu neye benzediğini tür. 1527 01:06:51,590 --> 01:06:53,580 Ve bu onların takımdan düzdür. 1528 01:06:53,580 --> 01:06:56,010 >> Dynamo DB onların azaltır Video olaylar için teslimat süresi 1529 01:06:56,010 --> 01:06:57,590 beş ila 10 saniye arasında. 1530 01:06:57,590 --> 01:07:00,470 Eski ilişkisel mağazasında, gittikleri ve yürütmek için kullanılan 1531 01:07:00,470 --> 01:07:03,780 şekle birden karmaşık sorgular hangi videolar, aşağı çekmek için 1532 01:07:03,780 --> 01:07:06,690 50'den az milisaniye. 1533 01:07:06,690 --> 01:07:08,990 Bu yüzden şaşırtıcı, şaşırtıcı Ne kadar performans 1534 01:07:08,990 --> 01:07:12,990 optimize zaman alabilir ve size ayar altında yatan veritabanı 1535 01:07:12,990 --> 01:07:15,110 erişim deseni desteklemek. 1536 01:07:15,110 --> 01:07:20,500 Bunu ne Halfbrick, bu adamlar, Sanırım Fruit Ninja onların şeydir. 1537 01:07:20,500 --> 01:07:22,590 Dynamo DB tüm çalışır That. 1538 01:07:22,590 --> 01:07:26,810 Ve bu adamlar, onlar büyük geliştirme ekibi, büyük bir gelişme 1539 01:07:26,810 --> 01:07:27,670 dükkan. 1540 01:07:27,670 --> 01:07:29,364 >> Değil iyi ops ekip. 1541 01:07:29,364 --> 01:07:31,280 Onlar çok yoktu operasyon kaynaklarının. 1542 01:07:31,280 --> 01:07:33,940 Onlar tutmaya çalışıyorum mücadele vardı uygulama altyapısı yukarı 1543 01:07:33,940 --> 01:07:34,290 ve koşuyor. 1544 01:07:34,290 --> 01:07:35,000 Onlar bize geldi. 1545 01:07:35,000 --> 01:07:36,251 Onlar Dinamo DB baktı. 1546 01:07:36,251 --> 01:07:37,291 Onlar bizim için olduğunu söyledi. 1547 01:07:37,291 --> 01:07:39,470 Onlar kendi bütün yerleşik Bunun üzerine uygulama çerçevesi. 1548 01:07:39,470 --> 01:07:43,640 Burada bazı gerçekten güzel yorumlar yeteneklerine ekibinden 1549 01:07:43,640 --> 01:07:46,800 Şimdi bina odaklanmak Oyun ve 1550 01:07:46,800 --> 01:07:49,010 korumak zorunda alt yapı, burada 1551 01:07:49,010 --> 01:07:51,910 çok büyük miktarda haline geldi kendi takımı için havai. 1552 01:07:51,910 --> 01:07:56,170 Yani bu şey ki- Eğer Dinamo DB olsun yararlanır. 1553 01:07:56,170 --> 01:08:00,930 >> Pekala, içine almak Burada veri modelleme. 1554 01:08:00,930 --> 01:08:03,440 Ve biz hakkında biraz konuştuk bir bu, bir çok, bir, 1555 01:08:03,440 --> 01:08:05,060 ve birçok türü ilişkileri çok. 1556 01:08:05,060 --> 01:08:07,630 Ve nasıl Dynamo bu bakımını yapmak. 1557 01:08:07,630 --> 01:08:10,500 Dynamo DB biz kullanmak indeksler, genel anlamda, 1558 01:08:10,500 --> 01:08:12,910 veri döndürmek için diğer bir lezzet. 1559 01:08:12,910 --> 01:08:15,210 Hash tuşları, aralık tuşları ve indeksler. 1560 01:08:15,210 --> 01:08:18,540 >> Bu özellikle örnek çoğu devletler olarak 1561 01:08:18,540 --> 01:08:23,802 Bir lisans şartı var kişi başına sadece bir ehliyet. 1562 01:08:23,802 --> 01:08:26,510 İki sürücü almak için gidemem Boston eyaletinde lisanslar. 1563 01:08:26,510 --> 01:08:27,500 Ben Teksas'ta bunu yapamam. 1564 01:08:27,500 --> 01:08:28,708 Yani o şekilde türüdür. 1565 01:08:28,708 --> 01:08:32,779 Ve böylece DMV'de, biz aramaları var, biz ehliyet bakmak istiyorum 1566 01:08:32,779 --> 01:08:35,180 sosyal güvenlik numarası ile. 1567 01:08:35,180 --> 01:08:39,990 Ben kullanıcı bilgilerini bakmak istiyorum ehliyet sayısına göre. 1568 01:08:39,990 --> 01:08:43,620 >> Yani biz bir kullanıcının tabloya sahip olabilir Seri numarasına bir karma anahtarı vardır, 1569 01:08:43,620 --> 01:08:47,830 veya sosyal güvenlik numarası ve Çeşitli özellikleri öğe üzerinde tanımlı. 1570 01:08:47,830 --> 01:08:49,859 Şimdi bu tablo I Bir GSI tanımlayabilir ki 1571 01:08:49,859 --> 01:08:53,370 diyor etrafında ben istiyorum döndürür Daha sonra lisans ve bir karma anahtarı 1572 01:08:53,370 --> 01:08:54,252 tüm diğer öğeler. 1573 01:08:54,252 --> 01:08:57,210 Şimdi sorgulamak ve bulmak istiyorsanız Herhangi bir Sosyal lisans numarası 1574 01:08:57,210 --> 01:08:59,609 Güvenlik numarası, I can Ana tablosunu sorgulamak. 1575 01:08:59,609 --> 01:09:02,130 >> Ben sorgulamak istiyorum ve ben isterseniz sosyal güvenlik almak için 1576 01:09:02,130 --> 01:09:05,735 numara veya diğer özellikleri Lisans numarası, ben GSI sorgulayabilirsiniz. 1577 01:09:05,735 --> 01:09:08,689 Bu model, bir tanesidir tek ilişki için. 1578 01:09:08,689 --> 01:09:12,460 Sadece çok basit bir GSI, etrafınızdaki şeyleri çevirin. 1579 01:09:12,460 --> 01:09:13,979 Şimdi, birçok yaklaşık bir konuşun. 1580 01:09:13,979 --> 01:09:16,450 Birçok için bir temelde senin karma aralığı tuşuna basın. 1581 01:09:16,450 --> 01:09:20,510 Biz bu çok olsun nerede kullanma durumu monitör veridir. 1582 01:09:20,510 --> 01:09:23,880 Monitör verileri düzenli gelir şeylerin internet gibi aralık. 1583 01:09:23,880 --> 01:09:26,890 Biz her zaman tüm bu olsun kayıtları her zaman geliyor. 1584 01:09:26,890 --> 01:09:31,420 >> Ve ben tüm okumaları bulmak istiyorum Belirli bir zaman diliminde arasında. 1585 01:09:31,420 --> 01:09:34,220 Bu çok yaygın bir sorgu var izleme altyapısı. 1586 01:09:34,220 --> 01:09:38,430 Bu konuda yol gitmek bir bulmaktır basit bir tablo yapısı, bir tablo. 1587 01:09:38,430 --> 01:09:42,250 Ben bir aygıt ölçümleri tablo var Cihaz numarası karma tuşu ile. 1588 01:09:42,250 --> 01:09:47,340 Ve ben bir aralık anahtarı var zaman damgası, ya da bu durumda, destan. 1589 01:09:47,340 --> 01:09:50,350 Ve bu beni kompleksi yürütmek sağlar Bu aralık tuşu karşı sorguları 1590 01:09:50,350 --> 01:09:54,950 ve bu kayıtların dönmek Sonuç göredir 1591 01:09:54,950 --> 01:09:56,310 Ben arıyorum olduğunu ayarlayın. 1592 01:09:56,310 --> 01:09:58,360 Ve o bir inşa birçok ilişki 1593 01:09:58,360 --> 01:10:02,340 kullanarak birincil tabloya Kare tuşuna, aralık tuş yapısı. 1594 01:10:02,340 --> 01:10:04,600 >> Yani bu tür inşa edilmiştir Dynamo DB tabloya. 1595 01:10:04,600 --> 01:10:07,290 Ben karma tanımladığınızda ve aralık t tablosu, ben 1596 01:10:07,290 --> 01:10:09,240 birçok ilişki bir tane tanımlayan. 1597 01:10:09,240 --> 01:10:12,770 Bir ebeveyn-çocuk ilişkisinin var. 1598 01:10:12,770 --> 01:10:14,620 >> Birçok bahsedelim Birçok ilişkileri. 1599 01:10:14,620 --> 01:10:19,170 Bu, özellikle, örneğin, Yine, biz GSI en kullanmak için gidiyoruz. 1600 01:10:19,170 --> 01:10:23,500 Ve en oyun hakkında konuşalım Ben belirli bir kullanıcı var senaryo. 1601 01:10:23,500 --> 01:10:26,500 Ben tüm oyunları öğrenmek istiyorum O veya oynarken kayıtlı. 1602 01:10:26,500 --> 01:10:29,600 Ve belirli bir oyun için, I Tüm kullanıcıları bulmak istiyorum. 1603 01:10:29,600 --> 01:10:31,010 Peki nasıl böyle yaparsın? 1604 01:10:31,010 --> 01:10:34,330 Benim kullanıcılı oyunlar tablo, ben gidiyorum kullanıcı kimliğinin bir karma anahtarı var 1605 01:10:34,330 --> 01:10:35,810 ve oyunun bir dizi anahtar. 1606 01:10:35,810 --> 01:10:37,810 >> Yani, bir kullanıcı birden fazla oyun olabilir. 1607 01:10:37,810 --> 01:10:41,380 Bu arasında birçok ilişki bir biri Kullanıcı ve oynadığı oyunlar. 1608 01:10:41,380 --> 01:10:43,410 Sonra ve patolojik düzeyde, O etrafta kapak olacak. 1609 01:10:43,410 --> 01:10:46,679 Ben oyuna karma olacak ve Ben kullanıcı aralığı olacak. 1610 01:10:46,679 --> 01:10:48,970 Ben hepsini almak istiyorsanız Yani Oyun kullanıcının, oynarken 1611 01:10:48,970 --> 01:10:49,950 Ben ana tablosunu sorgulamak gerekir. 1612 01:10:49,950 --> 01:10:52,699 Ben tüm kullanıcıları almak istiyorsanız Bu, belirli bir oyun oynuyorlar, 1613 01:10:52,699 --> 01:10:53,887 Ben GSI sorgulamak. 1614 01:10:53,887 --> 01:10:54,970 Yani biz bunu nasıl? 1615 01:10:54,970 --> 01:10:58,369 Bu GSI en desteklemek için inşa kullanma durumu, uygulama, erişim 1616 01:10:58,369 --> 01:10:59,410 desen, uygulaması. 1617 01:10:59,410 --> 01:11:01,440 >> Ben sorgulamak gerekiyorsa Bu boyut, let 1618 01:11:01,440 --> 01:11:03,500 bana o boyutta bir dizin oluşturun. 1619 01:11:03,500 --> 01:11:05,850 Ben yapmazsam, umurumda değil. 1620 01:11:05,850 --> 01:11:09,060 Ve kullanım durumunda bağlı, ben endeksi gerek ya da ben olmayabilir olabilir. 1621 01:11:09,060 --> 01:11:12,390 Basit bir tek birçok varsa, birincil tablo gayet iyi. 1622 01:11:12,390 --> 01:11:15,860 Ben bu pek yapmanız gerekiyorsa Birçok kıyafetleri, ya da ben, olanları birini yapmanız gerekir 1623 01:11:15,860 --> 01:11:18,390 o zaman belki ihtiyacım var İkinci endeksi. 1624 01:11:18,390 --> 01:11:20,840 Yani hepsi bağlıdır ne yapmaya çalışıyorum 1625 01:11:20,840 --> 01:11:24,550 ve ben başarılı olsun ne çalışıyorum. 1626 01:11:24,550 --> 01:11:28,000 >> Muhtemelen ben de geçirmek için gitmiyorum çok zaman belgeler bahsediyoruz. 1627 01:11:28,000 --> 01:11:31,460 Bu, muhtemelen, biraz alır derine biz gitmek gerekir daha. 1628 01:11:31,460 --> 01:11:33,710 En biraz konuşalım hakkında zengin sorgu ifadesi. 1629 01:11:33,710 --> 01:11:37,831 Yani Dinamo DB biz oluşturma yeteneği 1630 01:11:37,831 --> 01:11:39,330 Biz projeksiyon ifadelerini dediğimiz. 1631 01:11:39,330 --> 01:11:42,660 Projeksiyon ifadeleri sade alanları veya değerleri toplama 1632 01:11:42,660 --> 01:11:44,290 Görüntülemek istediğiniz söyledi. 1633 01:11:44,290 --> 01:11:46,000 Tamam, bu yüzden bir seçim yapın. 1634 01:11:46,000 --> 01:11:48,010 Ben Dinamo DB karşı bir sorgu yapmak. 1635 01:11:48,010 --> 01:11:51,730 Ve ben, gösteri ne biliyorsun, demek bana sadece beş yıldızlı yorumu 1636 01:11:51,730 --> 01:11:54,544 Bu belirli bir ürün için. 1637 01:11:54,544 --> 01:11:55,710 Yani ben görmek istiyorum hepsi bu. 1638 01:11:55,710 --> 01:11:57,320 Ben görmek istemiyorum sıranın diğer özellikler, 1639 01:11:57,320 --> 01:11:58,319 Ben sadece bu görmek istiyorum. 1640 01:11:58,319 --> 01:12:01,209 Bu sadece zaman SQL gibi sen select yıldız ya da masadan demek, 1641 01:12:01,209 --> 01:12:02,000 Eğer her şeyi olsun. 1642 01:12:02,000 --> 01:12:05,450 Ben seçin isim deyince masa, ben sadece bir özniteliği olsun. 1643 01:12:05,450 --> 01:12:09,070 Bu şey aynı tür içinde var Dynamo DB veya başka bir NoSQL veritabanları. 1644 01:12:09,070 --> 01:12:14,510 Filtre ifadeleri için bana izin temelde aşağı ayarlamak sonuç kesti. 1645 01:12:14,510 --> 01:12:15,540 Yani bir sorgu yapmak. 1646 01:12:15,540 --> 01:12:17,260 Sorgu 500 öğelerle geri gelebilir. 1647 01:12:17,260 --> 01:12:20,255 Ama ben sadece öğeleri istediğiniz Bu diyor bir nitelik var. 1648 01:12:20,255 --> 01:12:23,380 Tamam, bu yüzden bu öğeleri filtrelemek izin o belirli sorgu eşleşmiyor. 1649 01:12:23,380 --> 01:12:25,540 Bu yüzden filtre ifadeleri var. 1650 01:12:25,540 --> 01:12:28,310 >> Filtre ifadeleri can Herhangi bir niteliğin üzerinde çalıştırılabilir. 1651 01:12:28,310 --> 01:12:30,260 Onlar aralık sorguları gibi değiliz. 1652 01:12:30,260 --> 01:12:32,690 Raise sorguları daha seçici. 1653 01:12:32,690 --> 01:12:36,470 Filtre sorguları gitmemi gerektiren tüm sonuçlar daha sonra set ve get 1654 01:12:36,470 --> 01:12:39,170 Ben istemiyorum verileri ayırırlar. 1655 01:12:39,170 --> 01:12:40,660 Neden önemli? 1656 01:12:40,660 --> 01:12:42,770 Ben hepsini okudum çünkü. 1657 01:12:42,770 --> 01:12:46,597 Bir sorguda, ben okuyacağım ve bu verilerle ilgili bir dev olacak. 1658 01:12:46,597 --> 01:12:48,430 Ve sonra ben gidiyorum Ben ne gerek ayırırlar. 1659 01:12:48,430 --> 01:12:52,080 Ve ben sadece dışarı oyma ediyorsam bir satır çift, o tamam. 1660 01:12:52,080 --> 01:12:53,620 O kadar verimsiz değil. 1661 01:12:53,620 --> 01:12:57,800 >> Ama bir bütün kazık okuyorum eğer Veri, sadece bir öğe ayırırlar 1662 01:12:57,800 --> 01:13:01,490 o zaman daha iyi olacağım Bir aralık sorgusu kullanarak kapalı, 1663 01:13:01,490 --> 01:13:03,030 çok daha seçici çünkü. 1664 01:13:03,030 --> 01:13:06,330 Bana bir sürü kaydetmek için gidiyor para, o okuma için ödeme çünkü. 1665 01:13:06,330 --> 01:13:10,430 Nerede geri geliyor sonuçları küçük olabileceği tel çapraz 1666 01:13:10,430 --> 01:13:11,890 ama ben okumak için ödüyorum. 1667 01:13:11,890 --> 01:13:14,340 Peki nasıl anlamak Veri alıyoruz. 1668 01:13:14,340 --> 01:13:16,420 Yani Dinamo DB çok önemli. 1669 01:13:16,420 --> 01:13:19,710 >> Koşullu ifadeler, bu ne olduğu Eğer iyimser kilitleme diyebilirsiniz. 1670 01:13:19,710 --> 01:13:28,470 Güncelleme IF EXISTS veya bu değerin ise Ben belirtmek ne eşdeğerdir. 1671 01:13:28,470 --> 01:13:31,494 Ve ben bir bir zaman damgası varsa kayıt, ben verileri okuyabilir. 1672 01:13:31,494 --> 01:13:32,535 Ben bu verileri değişebilir. 1673 01:13:32,535 --> 01:13:35,030 Ben yazma gitmek olabilir veritabanına verileri geri. 1674 01:13:35,030 --> 01:13:38,100 Biri rekor değişti ise, Zaman damgası değiştirmiş olabilir. 1675 01:13:38,100 --> 01:13:40,370 Ve bu şekilde, benim koşullu Güncelleştirmenin söyleyebiliriz 1676 01:13:40,370 --> 01:13:42,340 timestamp bu eşitse. 1677 01:13:42,340 --> 01:13:46,290 Veya güncelleştirme biri çünkü başarısız olur Bu arada rekor güncellendi. 1678 01:13:46,290 --> 01:13:48,290 >> İşte biz iyimser kilitleme diyoruz. 1679 01:13:48,290 --> 01:13:50,670 O birileri gelir gelir ve değiştirebilirsiniz, 1680 01:13:50,670 --> 01:13:53,100 ve ben bunu tespit etmek gidiyorum Ben ne zaman geri gitmek yazmak için. 1681 01:13:53,100 --> 01:13:56,106 Ve sonra aslında okuyabilirsiniz Veri ve oh, o bu değişti söylüyorlar. 1682 01:13:56,106 --> 01:13:57,230 Bunun hesabını gerekir. 1683 01:13:57,230 --> 01:14:00,490 Ve ben verileri değiştirebilirim benim kayıt ve diğer güncelleştirmeyi uygulayın. 1684 01:14:00,490 --> 01:14:04,330 Yani bu artan yakalayabilirsiniz zaman arasında meydana güncellemeler 1685 01:14:04,330 --> 01:14:08,740 veri ve okumak zaman veri yazma olabilir. 1686 01:14:08,740 --> 01:14:11,520 >> HEDEF KİTLE: Ve filtre ifadesi aslında anlamına gelir 1687 01:14:11,520 --> 01:14:13,020 sayı veya değil-- bölgesindeki 1688 01:14:13,020 --> 01:14:14,316 >> [SESLER interposing] 1689 01:14:14,316 --> 01:14:16,232 Rick, Houlihan: Ben olmaz Bu içine çok fazla olsun. 1690 01:14:16,232 --> 01:14:17,700 Bu ayrılmış bir anahtar var. 1691 01:14:17,700 --> 01:14:20,130 Kiloluk görünümü saklıdır Dynamo DB kelime. 1692 01:14:20,130 --> 01:14:24,500 Her veritabanı vardır kendi saklıdır Eğer kullanamazsınız koleksiyonları isimler. 1693 01:14:24,500 --> 01:14:27,240 Dinamo DB, belirttiğiniz takdirde Bu önünde bir kiloluk, 1694 01:14:27,240 --> 01:14:29,310 Yukarıdaki o isimleri tanımlayabilirsiniz. 1695 01:14:29,310 --> 01:14:31,840 Bu başvurulan bir değerdir. 1696 01:14:31,840 --> 01:14:34,880 Muhtemelen en iyi sözdizimi değil Bu tartışma için orada var, 1697 01:14:34,880 --> 01:14:38,090 bazı real-- içine alır çünkü Ben konuşurken olurdu daha 1698 01:14:38,090 --> 01:14:41,360 daha derin bir düzeyde bu konuda. 1699 01:14:41,360 --> 01:14:46,130 >> Ama söylemek yeterli, bu olabilir Onlar views-- nerede tarama sorgusu olacak 1700 01:14:46,130 --> 01:14:50,190 ne kiloluk views 10 daha büyüktür. 1701 01:14:50,190 --> 01:14:54,660 Evet, bir sayısal değerdir. 1702 01:14:54,660 --> 01:14:57,322 İsterseniz, biz hakkında konuşabilirsiniz tartışma bundan sonra. 1703 01:14:57,322 --> 01:15:00,030 Pekala, biz içine alıyoruz en iyi uygulamaları bazı senaryolar 1704 01:15:00,030 --> 01:15:02,000 nereye konuşacağız Burada bazı uygulamalar hakkında. 1705 01:15:02,000 --> 01:15:03,810 Dynamo DB için kullanım durumları nelerdir. 1706 01:15:03,810 --> 01:15:06,120 Tasarım nelerdir Dynamo DB desenleri. 1707 01:15:06,120 --> 01:15:09,110 >> Ve ilk biz gidiyoruz hakkında konuşmak şeyler internet. 1708 01:15:09,110 --> 01:15:15,010 Sanırım of-- Yani biz bir sürü almak, dökersin--% 50'den fazla ne 1709 01:15:15,010 --> 01:15:19,370 Bugünlerde internette trafik Aslında makineler tarafından oluşturulan, 1710 01:15:19,370 --> 01:15:21,930 değil insanlar tarafından otomatik süreçler. 1711 01:15:21,930 --> 01:15:25,140 Ben bu şeyi bu şey demek Eğer cebinizde taşımak 1712 01:15:25,140 --> 01:15:28,840 ne kadar veri bu şey olduğunu Aslında sensiz etrafında gönderme 1713 01:15:28,840 --> 01:15:30,550 Bunu bilerek kesinlikle şaşırtıcı. 1714 01:15:30,550 --> 01:15:34,970 Bulunduğunuz yer, bilgi ne kadar hızlı hakkında gidiyorsun. 1715 01:15:34,970 --> 01:15:38,400 Google Maps işleri sizce nasıl onlar size zaman trafik nedir. 1716 01:15:38,400 --> 01:15:41,275 Milyonlarca vardır çünkü var ve etrafında sürüş milyonlarca insan 1717 01:15:41,275 --> 01:15:44,667 gönderiyor telefonlar ile tüm zaman biryere verileri. 1718 01:15:44,667 --> 01:15:46,500 Şeylerden biri So Verilerin bu tür hakkında 1719 01:15:46,500 --> 01:15:50,980 O geliyor, monitör verileri, günlük veri zaman serisi verileri, bu kadar olduğunu 1720 01:15:50,980 --> 01:15:53,540 genellikle sadece ilginç zaman biraz için. 1721 01:15:53,540 --> 01:15:55,580 Bu süreden sonra, bu kadar çok ilginç değil. 1722 01:15:55,580 --> 01:15:58,390 Bu yüzden izin vermeyin, hakkında konuştuk Bu tablo sınırları olmadan büyür. 1723 01:15:58,390 --> 01:16:03,410 Buradaki fikir belki 24 var olduğunu benim sıcak tablodaki olayların değerinde saat. 1724 01:16:03,410 --> 01:16:06,160 Ve bu sıcak tablo olacak çok yüksek oranda sağlanan, 1725 01:16:06,160 --> 01:16:07,950 bu çok fazla veri alıyor çünkü. 1726 01:16:07,950 --> 01:16:10,920 Bu çok fazla veri alıyor ve ben onu çok okuyorum. 1727 01:16:10,920 --> 01:16:14,560 Ben operasyonun bir sürü var Bu veri karşı çalışan sorguları. 1728 01:16:14,560 --> 01:16:18,120 >> 24 saat sonra hey, Umrumda değil, ne biliyorsun. 1729 01:16:18,120 --> 01:16:21,150 Yani belki her gece yarısı ben rulo Yeni tabloya üzerinde benim tablo 1730 01:16:21,150 --> 01:16:22,430 ve ben bu tabloyu deprovision. 1731 01:16:22,430 --> 01:16:26,440 Ve ben alacağım RCU en ve WCU aşağı nedeniyle 24 saat sonra 1732 01:16:26,440 --> 01:16:28,630 Ben birçok kaçmıyorum Bu veri karşı sorguları. 1733 01:16:28,630 --> 01:16:30,200 Yani para kazanmak için gidiyorum. 1734 01:16:30,200 --> 01:16:32,940 Ve belki 30 gün sonra I do not Hatta hepsi umurumda gerekir. 1735 01:16:32,940 --> 01:16:35,020 Ben WCU adlı sürebilir biri aşağı tüm yol, 1736 01:16:35,020 --> 01:16:36,990 Bildiğiniz çünkü ne asla yazılı almak için gidiyor. 1737 01:16:36,990 --> 01:16:38,300 Veri 30 gün eskidir. 1738 01:16:38,300 --> 01:16:40,000 Bu asla değişmez. 1739 01:16:40,000 --> 01:16:44,200 >> Ve bu, okuma alacaksın neredeyse hiç bu yüzden sadece 10 aşağı o RCU alalım. 1740 01:16:44,200 --> 01:16:49,372 Ve ben bu para bir ton tasarruf ediyorum Veri ve sadece benim sıcak veriler için ödeme. 1741 01:16:49,372 --> 01:16:52,330 Yani bakmak önemli şey Bir zaman serisinin baktığınızda at 1742 01:16:52,330 --> 01:16:54,716 veri hacmi geliyor. 1743 01:16:54,716 --> 01:16:55,590 Bu stratejiler vardır. 1744 01:16:55,590 --> 01:16:58,010 Şimdi, ben sadece bunu izin verebilir hepsi aynı masaya gitmek 1745 01:16:58,010 --> 01:16:59,461 ve sadece bu tablo büyümesine izin verin. 1746 01:16:59,461 --> 01:17:01,460 Sonunda, ben gidiyorum performans sorunları görüyoruz. 1747 01:17:01,460 --> 01:17:04,060 Ben arşive başlamak zorunda gidiyorum masadan o bazı verilerin, 1748 01:17:04,060 --> 01:17:04,720 etajer. 1749 01:17:04,720 --> 01:17:07,010 >> En çok daha iyi Let Başvurunuzu tasarım 1750 01:17:07,010 --> 01:17:08,900 bu yüzden doğru bu şekilde çalışabilir söyledi. 1751 01:17:08,900 --> 01:17:11,460 Yani sadece otomatik var Uygulama kodu. 1752 01:17:11,460 --> 01:17:13,580 Gece yarısı her gece bu tablo yuvarlanıyor. 1753 01:17:13,580 --> 01:17:17,170 Belki de ne ihtiyacım sürgülü olduğunu Verilerin 24 saat penceresi. 1754 01:17:17,170 --> 01:17:20,277 Daha sonra düzenli bir şekilde ben masadan verileri çağırıyor. 1755 01:17:20,277 --> 01:17:22,360 Ben onu buduyorum Cron iş ve ben bunu atıyorum 1756 01:17:22,360 --> 01:17:24,160 bu tablolar üzerine, ihtiyacınız ne olursa olsun. 1757 01:17:24,160 --> 01:17:25,940 Bir rollover çalışır Yani, bu harika. 1758 01:17:25,940 --> 01:17:27,080 Değilse, bunu düzeltin. 1759 01:17:27,080 --> 01:17:29,640 Ama bu sıcak verileri kalsın uzakta, soğuk veri. 1760 01:17:29,640 --> 01:17:32,535 Size çok para tasarruf edeceğiz ve senin masalar daha başarımlı olun. 1761 01:17:32,535 --> 01:17:35,960 1762 01:17:35,960 --> 01:17:38,210 Yani bir sonraki şey konuşacağım yaklaşık ürün kataloğu olduğunu. 1763 01:17:38,210 --> 01:17:42,000 Ürün katalog oldukça yaygın kullanım durumunda. 1764 01:17:42,000 --> 01:17:46,600 Bu aslında çok yaygın bir desen şeylerin çeşitli görürsünüz. 1765 01:17:46,600 --> 01:17:48,870 Sizin için, Twitter biliyorum örneğin sıcak bir tweet. 1766 01:17:48,870 --> 01:17:51,280 Herkes geliyor ve Bu tweet kapma. 1767 01:17:51,280 --> 01:17:52,680 Ürün katalogu, ben bir satış var. 1768 01:17:52,680 --> 01:17:54,120 Ben bir sıcak satış var. 1769 01:17:54,120 --> 01:17:57,277 Ben başına 70.000 isteklerini var İkinci bir ürün için gelen 1770 01:17:57,277 --> 01:17:58,860 Benim ürün kataloğu dışarı açıklaması. 1771 01:17:58,860 --> 01:18:02,384 Biz perakende görmek operasyon biraz. 1772 01:18:02,384 --> 01:18:03,550 Peki bununla nasıl başa çıkıyorsunuz? 1773 01:18:03,550 --> 01:18:04,924 Bununla başa çıkmak için hiçbir yolu yoktur. 1774 01:18:04,924 --> 01:18:07,110 Bütün kullanıcılar görmek istiyorum aynı veri parçası. 1775 01:18:07,110 --> 01:18:09,410 Bunlar aynı zamanda, geliyor ediyoruz. 1776 01:18:09,410 --> 01:18:11,920 Ve hepsi isteklerini yapıyoruz aynı veri parçası için. 1777 01:18:11,920 --> 01:18:16,240 Bu beni verdiği kısayol tuşu, o büyük kırmızı Biz sevmiyorum benim grafik şerit. 1778 01:18:16,240 --> 01:18:17,720 Ve o neye benzediğini var. 1779 01:18:17,720 --> 01:18:22,290 Benim anahtar alan üzerinde ben alıyorum Yani satış kalemlerinde dövülmüş. 1780 01:18:22,290 --> 01:18:24,070 Ben başka bir yerde bir şey alıyorum. 1781 01:18:24,070 --> 01:18:26,050 >> Nasıl bu sorunu hafifletmek mı? 1782 01:18:26,050 --> 01:18:28,410 Peki, biz önbelleğe sahip bu hafifletmek. 1783 01:18:28,410 --> 01:18:33,630 Önbellek, sen bellek temelde bir koydu veritabanında önünde bölümü. 1784 01:18:33,630 --> 01:18:37,260 Biz başardık [Duyulamaz] önbellek, nasıl 1785 01:18:37,260 --> 01:18:40,260 Kendi önbellek kurabilirsiniz, [inaudible] cache [? d?] istersen. 1786 01:18:40,260 --> 01:18:42,220 Veritabanında önünde o kadar koyun. 1787 01:18:42,220 --> 01:18:47,250 Ve bu şekilde bu verileri saklayabilirsiniz Bu önbellek kadar bu sıcak tuşları 1788 01:18:47,250 --> 01:18:49,390 Uzay ve önbellek okudum. 1789 01:18:49,390 --> 01:18:51,962 >> Ve sonra çoğu sizin okur Böyle aramaya başlamak. 1790 01:18:51,962 --> 01:18:54,920 Ben bu önbellek buraya kadar vurur var ve ben hiçbir şey aşağı burada gidiş var 1791 01:18:54,920 --> 01:18:59,330 Veritabanı arkasında oturan çünkü önbellek ve içinden asla okur. 1792 01:18:59,330 --> 01:19:02,520 Ben verileri değiştirirseniz Veritabanı, ben önbellek güncellemek zorunda. 1793 01:19:02,520 --> 01:19:04,360 Biz bir şey kullanabilirsiniz gibi bunu buharlısı. 1794 01:19:04,360 --> 01:19:07,360 Ve ben o nasıl çalıştığını anlatacağım. 1795 01:19:07,360 --> 01:19:09,060 Pekala, mesajlaşma. 1796 01:19:09,060 --> 01:19:11,180 E-posta, hepimiz e-posta kullanıyoruz. 1797 01:19:11,180 --> 01:19:12,540 >> Bu oldukça iyi bir örnektir. 1798 01:19:12,540 --> 01:19:14,950 Biz mesajlar tablonun çeşit var. 1799 01:19:14,950 --> 01:19:17,040 Ve biz gelen kutusu ve giden kutusunu aldım. 1800 01:19:17,040 --> 01:19:19,760 Bu nedir, SQL olur ise Bu gelen kutusu inşa etmek gibi görünüyorsun. 1801 01:19:19,760 --> 01:19:23,350 Biz tür aynı tür kullanın GSI adlı GSI adlı kullanmak için strateji 1802 01:19:23,350 --> 01:19:25,320 Gelen kutuma ve benim outbox için. 1803 01:19:25,320 --> 01:19:27,600 Yani ham mesajlar geliyor got Benim mesajlar tabloya. 1804 01:19:27,600 --> 01:19:30,194 Ve bu ilk yaklaşım olabilir, tamam, sorun yok, diyorum. 1805 01:19:30,194 --> 01:19:31,110 Ben çiğ mesajlar var. 1806 01:19:31,110 --> 01:19:33,710 Önümüzdeki Mesajlar [duyulamaz], mesajı kimliği, bu harika. 1807 01:19:33,710 --> 01:19:35,070 O benim eşsiz hash. 1808 01:19:35,070 --> 01:19:38,280 Ben, iki GSI en oluşturmak için bir gidiyorum Gelen kutuma benim outbox için biri için. 1809 01:19:38,280 --> 01:19:40,530 Ve ilk şey yapacağım Benim karma anahtarı söyleyeceğim olduğunu 1810 01:19:40,530 --> 01:19:43,310 Alıcı olacak ve Ben tarih düzenlemek için gidiyorum. 1811 01:19:43,310 --> 01:19:44,220 Bu fantastik. 1812 01:19:44,220 --> 01:19:45,890 Burada benim güzel bir görünümü var. 1813 01:19:45,890 --> 01:19:47,780 Ama biraz sorun burada var. 1814 01:19:47,780 --> 01:19:50,891 Ve sen bu işe koşmak ilişkisel veritabanları da. 1815 01:19:50,891 --> 01:19:52,390 Onlar dikey bölümleme denir. 1816 01:19:52,390 --> 01:19:55,840 Eğer büyük veri tutmak istiyorum uzakta küçük veri. 1817 01:19:55,840 --> 01:20:00,470 >> Ben lazım çünkü Ve nedeni ise özelliklerini almak için öğeleri okumak gidin. 1818 01:20:00,470 --> 01:20:05,570 Ve benim organları Burada üzerinde iseniz, Daha sonra birkaç öğe okuma 1819 01:20:05,570 --> 01:20:08,560 Benim vücut uzunluğu ise 256 kilobayt her ortalama 1820 01:20:08,560 --> 01:20:10,991 matematik oldukça çirkin olur. 1821 01:20:10,991 --> 01:20:12,490 Yani David'in gelen kutusunu okumak istediğiniz söylüyorlar. 1822 01:20:12,490 --> 01:20:14,520 David'in gelen 50 maddeden oluşmaktadır. 1823 01:20:14,520 --> 01:20:17,880 Ortalama ve büyüklüğü 256 kilobayt olduğunu. 1824 01:20:17,880 --> 01:20:21,730 İşte benim dönüşüm oranı var UKÜ en dört kilobayt olduğunu. 1825 01:20:21,730 --> 01:20:24,450 >> Tamam, birlikte gidelim sonunda tutarlı okur. 1826 01:20:24,450 --> 01:20:28,640 Ben hala 1600 RCU en yiyorum Sadece David'in gelen kutusunu okumak için. 1827 01:20:28,640 --> 01:20:29,950 Ah. 1828 01:20:29,950 --> 01:20:31,980 Tamam, şimdi düşünelim App nasıl çalıştığı hakkında. 1829 01:20:31,980 --> 01:20:35,340 Ben bir e-posta uygulaması isem ve Ben, benim doğuştan bakıyorum 1830 01:20:35,340 --> 01:20:39,680 ve ben her iletinin gövdesine bakmak, hayır, ben özetleri bakıyorum. 1831 01:20:39,680 --> 01:20:41,850 Ben sadece başlıklarını bakıyorum. 1832 01:20:41,850 --> 01:20:46,310 Yani bir tablo yapısı oluşsun Bu daha çok benziyor. 1833 01:20:46,310 --> 01:20:49,470 >> Yani burada bilgi var Benim iş akışı ihtiyacı olduğunu. 1834 01:20:49,470 --> 01:20:50,890 Benim Gelen kutunuzda GSI içinde. 1835 01:20:50,890 --> 01:20:53,800 Bu randevu, gönderen, konu, ve sonra 1836 01:20:53,800 --> 01:20:56,790 işaret mesaj kimliği, geri mesajları masaya 1837 01:20:56,790 --> 01:20:57,850 nerede cesedi alabilirsiniz. 1838 01:20:57,850 --> 01:21:01,260 1839 01:21:01,260 --> 01:21:04,420 Peki, bu rekor kimlikleri olacaktır. 1840 01:21:04,420 --> 01:21:09,850 Onlar geri işaret olur Dynamo DB masaya öğe kimlikleri. 1841 01:21:09,850 --> 01:21:12,220 Her endeks hep creates-- Her zaman öğe vardır 1842 01:21:12,220 --> 01:21:15,750 Bu of-- parçası olarak kimliği endeksi ile birlikte geliyor. 1843 01:21:15,750 --> 01:21:17,414 >> Pekala. 1844 01:21:17,414 --> 01:21:19,080 HEDEF KİTLE: Bunu söyler depolandığı? 1845 01:21:19,080 --> 01:21:21,420 Rick, Houlihan: Evet, söyler tam olarak-- o yapar tam olarak buydu. 1846 01:21:21,420 --> 01:21:22,644 Burada diyor ki, benim yeniden rekor. 1847 01:21:22,644 --> 01:21:24,310 Ve bu benim yeniden kayda geri işaret edeceğiz. 1848 01:21:24,310 --> 01:21:26,460 Kesinlikle. 1849 01:21:26,460 --> 01:21:29,490 Tamam, şimdi benim gelen bir Aslında çok daha küçük. 1850 01:21:29,490 --> 01:21:32,210 Ve bu aslında destekler Bir e-posta uygulaması akışı. 1851 01:21:32,210 --> 01:21:34,230 Gelen kutuma Yani, ben tıklayın. 1852 01:21:34,230 --> 01:21:38,160 Ben de gidip mesajla tıklayın Cesedi almak gitmek gerekir o zaman, var 1853 01:21:38,160 --> 01:21:40,180 Ben gidiyorum, çünkü Farklı bir görünümüne gidin. 1854 01:21:40,180 --> 01:21:43,870 Eğer MVC türü hakkında düşünmek eğer öyleyse çerçeve, model görünümü denetleyicisi. 1855 01:21:43,870 --> 01:21:46,120 >> Model içeriyor Veri görünümü ihtiyacı olduğunu 1856 01:21:46,120 --> 01:21:48,130 ve kontrolör ile etkileşime girer. 1857 01:21:48,130 --> 01:21:51,670 Ben çerçeveyi değiştirmek, ne zaman Ben perspektif değiştirmek, 1858 01:21:51,670 --> 01:21:55,080 o geri dönmek için Tamam Sunucu ve modelini yeniden doldurmak, 1859 01:21:55,080 --> 01:21:56,860 kullanıcının beklediğini çünkü. 1860 01:21:56,860 --> 01:22:00,530 Onlar görüşlerini değiştirdiğinizde, bu zaman var Biz geri veritabanına gidebilirsiniz. 1861 01:22:00,530 --> 01:22:02,480 Yani e-posta, tıklayın. 1862 01:22:02,480 --> 01:22:03,710 Ben vücudun arıyorum. 1863 01:22:03,710 --> 01:22:04,330 Gidiş. 1864 01:22:04,330 --> 01:22:05,680 Cesedi getir. 1865 01:22:05,680 --> 01:22:06,950 >> Ben çok daha az veri okumak. 1866 01:22:06,950 --> 01:22:09,960 Ben sadece bedenleri okuyorum o Onlara gerektiğinde David ihtiyacı var. 1867 01:22:09,960 --> 01:22:14,230 Ve ben 1600 yılında yakmak değilim UKÜ Sadece onun gelen kutusunu göstermek için. 1868 01:22:14,230 --> 01:22:17,670 Yani şimdi bu şekilde ki- LSI veya GSI-- üzgünüm ki 1869 01:22:17,670 --> 01:22:19,900 GSI, işe olacaktır. 1870 01:22:19,900 --> 01:22:25,450 Biz alıcı bizim karma var. 1871 01:22:25,450 --> 01:22:27,030 Biz tarihte aralık anahtarı var. 1872 01:22:27,030 --> 01:22:31,380 Ve biz öngörülen nitelikleri var biz görünümü desteklemek için gereken tek şey söyledi. 1873 01:22:31,380 --> 01:22:34,300 >> Biz outbox için bu döndürün. 1874 01:22:34,300 --> 01:22:35,770 Gönderici üzerinde Hash. 1875 01:22:35,770 --> 01:22:39,612 Ve özünde, biz Çok güzel, temiz bir görünüm. 1876 01:22:39,612 --> 01:22:41,570 Ve bu basically-- Biz bu Bu güzel mesajlar var 1877 01:22:41,570 --> 01:22:45,870 güzel çünkü yayılmış ediliyor tablo bu karma sadece karma mesaj kimliği var. 1878 01:22:45,870 --> 01:22:51,750 Ve biz iki dizin var Bu tablonun dışına döndürürken. 1879 01:22:51,750 --> 01:22:57,411 Pekala, işte bir fikir yapmak değil Büyük veri ve bu küçük verileri tutmak 1880 01:22:57,411 --> 01:22:57,910 Birlikte. 1881 01:22:57,910 --> 01:23:00,700 Dikey Bölme, bu tabloları bölümlemek. 1882 01:23:00,700 --> 01:23:03,150 Veri okumak etmeyin gerek yok. 1883 01:23:03,150 --> 01:23:04,850 Pekala, oyun. 1884 01:23:04,850 --> 01:23:06,990 Hepimiz oyunları gibi. 1885 01:23:06,990 --> 01:23:10,902 En azından ben o zaman oyunlar gibi. 1886 01:23:10,902 --> 01:23:12,735 Bazı şeyler Yani Biz ne zaman başa olduğunu 1887 01:23:12,735 --> 01:23:14,193 biz doğru, oyun hakkında düşünüyorsun? 1888 01:23:14,193 --> 01:23:16,999 Bu günlerde Gaming, özellikle mobil Oyun, bütün düşünme olduğunu. 1889 01:23:16,999 --> 01:23:19,540 Ve ben burada bir döndürmek için gidiyorum uzakta DynamoDB dan biraz. 1890 01:23:19,540 --> 01:23:21,373 Ben getirmek için gidiyorum tartışma Bazı 1891 01:23:21,373 --> 01:23:24,240 Bazı etrafında Diğer AWS teknolojileri. 1892 01:23:24,240 --> 01:23:28,930 >> Ama oyun hakkında bir fikir düşünmektir API'leri cinsinden yaklaşık vardır API'ler, 1893 01:23:28,930 --> 01:23:31,730 Genellikle, HTTP ve JSON konuşuyor. 1894 01:23:31,730 --> 01:23:34,550 It nasıl mobil oyunlar tür Onların arka uçları ile etkileşim. 1895 01:23:34,550 --> 01:23:35,850 Onlar JSON ilanı yok. 1896 01:23:35,850 --> 01:23:40,660 Onlar veri almak ve hepsi genellikle güzel JSON API'leri olarak, konuşma. 1897 01:23:40,660 --> 01:23:44,950 >> Arkadaşlar olsun gibi şeyler olsun afiş, veri alışverişi, 1898 01:23:44,950 --> 01:23:47,699 Kullanıcı tarafından oluşturulan içerik, sisteme geri itin, 1899 01:23:47,699 --> 01:23:49,740 Bunlardan türleri yapmamız gereken gidiyoruz. 1900 01:23:49,740 --> 01:23:52,542 İkili varlık verileri, bu veriler veritabanında oturup olmayabilir. 1901 01:23:52,542 --> 01:23:54,250 Bu oturup olabilir Nesne deposu, değil mi? 1902 01:23:54,250 --> 01:23:56,541 Ancak veritabanı gidiyor Sistemi söylüyorum sonuna kadar, 1903 01:23:56,541 --> 01:23:59,140 Uygulamayı söylüyorum nereye gidip. 1904 01:23:59,140 --> 01:24:03,550 Ve kaçınılmaz olarak, çok oyunculu sunucular, arka uç altyapısı, 1905 01:24:03,550 --> 01:24:06,180 ve yüksek için tasarlanmış kullanılabilirlik ve ölçeklenebilirlik. 1906 01:24:06,180 --> 01:24:09,400 Peki bu hepimizin istediği şeyi vardır oyun altyapısına bugün. 1907 01:24:09,400 --> 01:24:12,160 >> Yani bir göz atalım Ne böyle görünüyor. 1908 01:24:12,160 --> 01:24:16,070 Bir çekirdek arka sonu var çok basit. 1909 01:24:16,070 --> 01:24:19,880 Biz burada bir sistem var Birden kullanılabilirlik bölgeleri. 1910 01:24:19,880 --> 01:24:23,780 Düşünmek being-- gibi AZS hakkında konuştuk Bunlardan ayrı veri merkezleri olarak. 1911 01:24:23,780 --> 01:24:26,040 Birden fazla veri merkezi AZ başına, ama bu, Tamam 1912 01:24:26,040 --> 01:24:28,831 Sadece ayrı veri olarak onları düşünüyorum coğrafi olarak merkezler 1913 01:24:28,831 --> 01:24:30,090 ve arıza izole edilmiştir. 1914 01:24:30,090 --> 01:24:32,172 >> Biz var gidiyoruz çift ​​EC2 örnekleri. 1915 01:24:32,172 --> 01:24:33,880 Biz gidiyoruz Bazı arka uç sunucu. 1916 01:24:33,880 --> 01:24:35,800 Eğer eski bir konum belki mimari, biz konum 1917 01:24:35,800 --> 01:24:38,920 Biz RDS dediğimiz kullanarak, ilişkisel veritabanı hizmetleri. 1918 01:24:38,920 --> 01:24:42,040 MSSQL, MySQL Olabilir, Ya da bunun gibi bir şey. 1919 01:24:42,040 --> 01:24:47,080 Bu şekilde bir çok uygulamaları Bugün dizayn bulunmaktadır. 1920 01:24:47,080 --> 01:24:49,594 >> Peki biz gitmek isteyebilirsiniz biz ölçek zaman budur. 1921 01:24:49,594 --> 01:24:51,510 Biz go ahead ve koyacağım Orada S3 kova. 1922 01:24:51,510 --> 01:24:54,200 Ve o S3 kova yerine hizmet Bizim servers-- gelen bu nesneleri kadar 1923 01:24:54,200 --> 01:24:55,220 bunu yapabilirdi. 1924 01:24:55,220 --> 01:24:57,210 Hepiniz ikili koymak Sunucularınızdaki nesneleri 1925 01:24:57,210 --> 01:24:59,751 ve o sunucu kullanabilirsiniz örnekleri veri yukarı hizmet etmek. 1926 01:24:59,751 --> 01:25:01,860 Ama bu oldukça pahalı. 1927 01:25:01,860 --> 01:25:05,107 >> Yapacak daha iyi bir yolu go ahead ve bir S3 kova bu nesneleri koymak. 1928 01:25:05,107 --> 01:25:06,315 S3 bir nesne depoları olduğunu. 1929 01:25:06,315 --> 01:25:10,860 Bu için özel olarak inşa edilmiştir bu tür şeyleri kadar hizmet. 1930 01:25:10,860 --> 01:25:13,690 Ve bu müşteriler isteğinde izin doğrudan bu nesne kovalar, 1931 01:25:13,690 --> 01:25:15,390 sunucuları boşaltma. 1932 01:25:15,390 --> 01:25:17,020 Yani biz burada ölçek başlıyoruz. 1933 01:25:17,020 --> 01:25:19,140 >> Şimdi tüm dünyada kullanıcıların aldım. 1934 01:25:19,140 --> 01:25:19,730 Ben kullanıcıları var. 1935 01:25:19,730 --> 01:25:23,380 Ben yerel içerik olması gerekir Doğru, bu kullanıcılara yakın bulunan? 1936 01:25:23,380 --> 01:25:26,200 Ben bir S3 kova yarattık benim kaynak deposu olarak. 1937 01:25:26,200 --> 01:25:29,370 Ve ben ön olacak o CloudFront dağılımı. 1938 01:25:29,370 --> 01:25:31,720 >> CloudFront CD ve bir içerik dağıtım ağı. 1939 01:25:31,720 --> 01:25:35,750 Temelde belirttiğiniz verileri alır ve internet üzerinden tüm önbelleğe 1940 01:25:35,750 --> 01:25:39,230 Kullanıcıların her yerde olabilir bu yüzden Çok hızlı tepki ne zaman 1941 01:25:39,230 --> 01:25:40,960 onlar bu nesneleri isteyin. 1942 01:25:40,960 --> 01:25:41,960 >> Yani bir fikir olsun. 1943 01:25:41,960 --> 01:25:48,230 Tür yararlanarak konum tüm AWS yönleri burada halletmek için. 1944 01:25:48,230 --> 01:25:50,790 Ve sonunda, biz atmak Otomatik ölçekleme grubunda. 1945 01:25:50,790 --> 01:25:52,737 Bizim AC2 örnekleri Yani Bizim oyun sunucuları, 1946 01:25:52,737 --> 01:25:54,820 onlar daha yoğun almak için başlangıç ​​olarak ve kalabalıklaştı ve kalabalıklaştı, 1947 01:25:54,820 --> 01:25:57,236 onlar sadece başka dönmeye edeceğiz örneği, başka bir örneğini döndürmek 1948 01:25:57,236 --> 01:25:58,210 başka bir örneğini döndürün. 1949 01:25:58,210 --> 01:26:02,090 AWS, has it teknoloji Yani Eğer parametrelerini belirtmek sağlar 1950 01:26:02,090 --> 01:26:04,650 hangi etrafında sunucuların büyüyecek. 1951 01:26:04,650 --> 01:26:08,110 Yani sunucuların n sayıda olabilir Herhangi bir zamanda orada. 1952 01:26:08,110 --> 01:26:11,870 Yükleme uzak giderse, onlar olacak küçültmek, sayı küçülecek. 1953 01:26:11,870 --> 01:26:15,250 Ve yük geri gelirse, o elastik, geri büyürüz. 1954 01:26:15,250 --> 01:26:17,050 >> Yani bu harika görünüyor. 1955 01:26:17,050 --> 01:26:19,800 Biz EC2 örnekleri bir sürü var. 1956 01:26:19,800 --> 01:26:21,671 Biz önbelleğini koyabilirsiniz veritabanlarının ön, 1957 01:26:21,671 --> 01:26:23,045 denemek ve veritabanlarını hızlandırmak. 1958 01:26:23,045 --> 01:26:25,030 Bir sonraki basınç noktası tipik insanlar görmek 1959 01:26:25,030 --> 01:26:28,850 Onlar kullanarak bir oyun ölçek olduğunu ilişkisel veritabanı sistemi. 1960 01:26:28,850 --> 01:26:30,790 Of, veritabanı performans korkunç. 1961 01:26:30,790 --> 01:26:31,932 Biz nasıl geliştirebilirim? 1962 01:26:31,932 --> 01:26:33,640 En koyarak deneyelim Bunun önüne önbellek. 1963 01:26:33,640 --> 01:26:36,780 >> Peki, önbellek çalışmıyor oyunlarda çok büyük, değil mi? 1964 01:26:36,780 --> 01:26:39,330 Oyunlar için, yazı ağrılıdır. 1965 01:26:39,330 --> 01:26:40,930 Oyun çok ağır yazma vardır. 1966 01:26:40,930 --> 01:26:43,610 Sen ne zaman Önbellek çalışmıyor Her zaman ettik çünkü ağır mal 1967 01:26:43,610 --> 01:26:44,610 önbelleğini güncellemek lazım. 1968 01:26:44,610 --> 01:26:47,780 Sen bu kadar, önbelleği güncelleme ilgisiz önbelleğe alma için. 1969 01:26:47,780 --> 01:26:49,780 Aslında sadece ekstra bir iş. 1970 01:26:49,780 --> 01:26:51,970 >> Yani biz burada nereye? 1971 01:26:51,970 --> 01:26:54,400 Büyük bir darboğaz var Orada veritabanında. 1972 01:26:54,400 --> 01:26:57,661 Ve bir yerde gitmek Açıkçası bölümleme olduğunu. 1973 01:26:57,661 --> 01:26:59,410 Bölümleme değil sen ne yapmak kolay 1974 01:26:59,410 --> 01:27:01,900 ilişkisel veritabanları ile ilgili. 1975 01:27:01,900 --> 01:27:05,080 Ilişkisel veritabanları ile, sen idaresinden sorumludur etkili 1976 01:27:05,080 --> 01:27:06,210 Anahtar alan. 1977 01:27:06,210 --> 01:27:10,527 Sen A ve M arasında kullanıcıların söylüyorsun N ve Z oraya gitmek arasında, buraya gidin. 1978 01:27:10,527 --> 01:27:12,360 Ve sen gectiginize uygulama karşısında. 1979 01:27:12,360 --> 01:27:15,000 Yani uğraşıyoruz Bu bölüm veri kaynağı. 1980 01:27:15,000 --> 01:27:18,670 Sen işlem kısıtlamaları Bu bölümleri yayılan yok. 1981 01:27:18,670 --> 01:27:20,560 Sen her türlü var sen messiness 1982 01:27:20,560 --> 01:27:23,040 Orada aşağı çalışıyor ile ilgili dışarı ölçekleme başa 1983 01:27:23,040 --> 01:27:25,120 ve daha geniş bir altyapının oluşturulması. 1984 01:27:25,120 --> 01:27:27,284 Sadece hiç eğlenceli değil. 1985 01:27:27,284 --> 01:27:30,930 >> HEDEF KİTLE: Yani söylüyor Kaynak puan artarak hızlandırır 1986 01:27:30,930 --> 01:27:31,430 süreç? 1987 01:27:31,430 --> 01:27:32,513 Rick, Houlihan: Artan? 1988 01:27:32,513 --> 01:27:33,520 HEDEF KİTLE: Kaynak noktaları. 1989 01:27:33,520 --> 01:27:34,410 Rick, Houlihan Kaynak: noktaları? 1990 01:27:34,410 --> 01:27:37,500 HEDEF KİTLE: bilgilerden, nerede bilgi nereden geliyor? 1991 01:27:37,500 --> 01:27:38,250 Rick, Houlihan: Hayır 1992 01:27:38,250 --> 01:27:41,820 Ne diyorum artmaktadır veri deposunda bölümlerin sayısı 1993 01:27:41,820 --> 01:27:44,060 hacmini artırır. 1994 01:27:44,060 --> 01:27:48,300 Peki burada oluyor kullanıcımız buraya EC2 örneği girdiği, 1995 01:27:48,300 --> 01:27:50,780 iyi, ben bir kullanıcı gerekirse Bu M A var, ben burada gidersiniz. 1996 01:27:50,780 --> 01:27:53,560 N p, burada gidersiniz. 1997 01:27:53,560 --> 01:27:55,060 A'dan Z'ye P, ben burada gidersiniz. 1998 01:27:55,060 --> 01:27:57,120 >> HEDEF KİTLE: Tamam, bu yüzden olanlardır farklı düğümlerin saklanan? 1999 01:27:57,120 --> 01:27:57,911 >> Rick, Houlihan: Evet. 2000 01:27:57,911 --> 01:28:00,210 Bu olarak düşünün farklı veri silolar. 2001 01:28:00,210 --> 01:28:01,660 Yani bunun için yaşıyoruz. 2002 01:28:01,660 --> 01:28:02,910 Yapmanız çalışıyorsanız Bu, sen çalışıyorsanız 2003 01:28:02,910 --> 01:28:05,730 İlişkisel platformda büyütmek için, Bu yaptığın şeydir. 2004 01:28:05,730 --> 01:28:08,100 Verileri alıyorsun ve Bunu kesiyorlar. 2005 01:28:08,100 --> 01:28:10,975 Ve bunu genelinde bölümleme ediyoruz veritabanı birden çok örneği. 2006 01:28:10,975 --> 01:28:13,580 Ve hepiniz idare konum Uygulama katmanı olarak. 2007 01:28:13,580 --> 01:28:14,729 Bu hiç eğlenceli değil. 2008 01:28:14,729 --> 01:28:15,770 Peki biz gitmek istiyorsun? 2009 01:28:15,770 --> 01:28:20,240 Biz DynamoDB, tam olarak yönetilen gitmek istiyorum, NoSQL veri deposu, hüküm çıktı. 2010 01:28:20,240 --> 01:28:22,680 Biz ikincil indeksler kullanın. 2011 01:28:22,680 --> 01:28:26,154 It temelde HTTP API ve Belge desteği içerir. 2012 01:28:26,154 --> 01:28:28,570 Yani endişelenmenize gerek yok Bu bölümleme hakkında herhangi. 2013 01:28:28,570 --> 01:28:30,740 Biz sizin için her şeyi. 2014 01:28:30,740 --> 01:28:33,260 Yani şimdi, bunun yerine, Sadece tabloya yazın. 2015 01:28:33,260 --> 01:28:36,490 Tablo bölümlenmiş gerekiyorsa, Bu perde arkasında olur. 2016 01:28:36,490 --> 01:28:40,642 Tamamen izole ediyoruz Bir geliştirici olarak bundan. 2017 01:28:40,642 --> 01:28:42,350 Öyleyse hakkında konuşalım kullanım durumları bazı 2018 01:28:42,350 --> 01:28:47,564 Biz oyun içinde, ortak koşmak olduğunu oyun senaryoları, afiş. 2019 01:28:47,564 --> 01:28:49,980 Yani, kullanıcıların gelen var they BoardNames 2020 01:28:49,980 --> 01:28:52,930 on, bu kullanıcı için puanlar. 2021 01:28:52,930 --> 01:28:57,700 Biz, UserID üzerinde karma olabilir ve sonra biz oyun yelpazesi var. 2022 01:28:57,700 --> 01:28:59,960 Böylece her kullanıcının görmek istiyor O oynadı tüm oyun 2023 01:28:59,960 --> 01:29:01,770 ve onun üst puanı tüm oyun boyunca. 2024 01:29:01,770 --> 01:29:04,000 Yani onun kişisel afiş var. 2025 01:29:04,000 --> 01:29:10,010 >> Şimdi ben gitmek istiyorum ve ben get-- istiyorum bu yüzden bu kişisel leaderboards olsun. 2026 01:29:10,010 --> 01:29:12,827 Ne yapmak istediğinizi elde gitmek olduğunu tüm kullanıcılar üst puanı. 2027 01:29:12,827 --> 01:29:13,660 Peki nasıl böyle yaparsın? 2028 01:29:13,660 --> 01:29:18,070 Benim kayıtlarında karma zaman kimliği, oyun değişiyordu, 2029 01:29:18,070 --> 01:29:20,740 iyi ben önde gidiyorum ve yeniden yapılandırılması, bir GSI oluşturmak 2030 01:29:20,740 --> 01:29:22,370 ve ben bu verileri yeniden gidiyorum. 2031 01:29:22,370 --> 01:29:27,310 >> Şimdi ben karma gidiyorum Oyun BoardName. 2032 01:29:27,310 --> 01:29:29,800 Ve ben üst puanı üzerinde aralığı için gidiyorum. 2033 01:29:29,800 --> 01:29:31,540 Ve şimdi farklı kovalar yarattık. 2034 01:29:31,540 --> 01:29:34,790 Ben aynı tabloyu kullanıyorum, Aynı öğe verileri. 2035 01:29:34,790 --> 01:29:39,870 Ama verir bir kova oluşturma Bana göre en iyi oyun skor bir toplanma. 2036 01:29:39,870 --> 01:29:43,180 >> Ve ben bu tabloyu sorgulayabilirsiniz Bu bilgileri almak için. 2037 01:29:43,180 --> 01:29:50,890 Yani ben bu sorgu model kurdum ikincil indeks ile desteklenmelidir. 2038 01:29:50,890 --> 01:29:54,556 Şimdi BoardName sıralaması olabilir ve bağlı Topscore sıralama kriteri. 2039 01:29:54,556 --> 01:29:57,180 Gördüğünüz Peki, bu türleri size oyun içinde olsun durumlarda kullanmak. 2040 01:29:57,180 --> 01:30:02,190 Biz oyun olsun Başka iyi kullanım durumunda ödül ve kimin ödül kazandı olduğunu. 2041 01:30:02,190 --> 01:30:05,340 Ve bu büyük bir kullanım durumdur Biz seyrek indeksler diyoruz nerede. 2042 01:30:05,340 --> 01:30:07,340 Seyrek indeksleri vardır oluşturma yeteneği 2043 01:30:07,340 --> 01:30:10,850 mutlaka değil bir dizin masada her öğe içerir. 2044 01:30:10,850 --> 01:30:11,470 Ve neden olmasın? 2045 01:30:11,470 --> 01:30:14,540 Çünkü davranıyor nitelik endekslenmiş her öğe üzerinde yok. 2046 01:30:14,540 --> 01:30:16,460 >> Bu, özellikle Yani davayı kullanın diyorum, 2047 01:30:16,460 --> 01:30:19,240 ne, ben gidiyorum biliyorum Ödül adlı bir öznitelik oluşturmak. 2048 01:30:19,240 --> 01:30:22,970 Ve ben her kullanıcıya vereceğim Bu özellik bir ödül vardır. 2049 01:30:22,970 --> 01:30:25,950 Kullanıcılar ödüller vardır yok Bu özniteliği için gitmiyorum. 2050 01:30:25,950 --> 01:30:27,800 Yani oluşturduğunuzda indeksi, sadece kullanıcıların 2051 01:30:27,800 --> 01:30:28,960 olduğunu göstermek için gidiyoruz Endekste kadar olan 2052 01:30:28,960 --> 01:30:31,050 aslında ödül kazanmış olanlar. 2053 01:30:31,050 --> 01:30:34,440 Böylece edebilmek için harika bir yoldur süzülmüş dizinleri oluşturmak için 2054 01:30:34,440 --> 01:30:40,580 bilmediğimiz çok seçici endeks için tüm tablo var. 2055 01:30:40,580 --> 01:30:43,050 >> Yani biz burada zamanında düşük alıyoruz. 2056 01:30:43,050 --> 01:30:49,190 Devam edin ve atlamak için gidiyorum dışarı ve bu senaryoyu atlayın. 2057 01:30:49,190 --> 01:30:52,625 Biraz konuşmak about-- 2058 01:30:52,625 --> 01:30:54,460 >> İZLEYİCİ: Ben bir soru sorabilir miyim? 2059 01:30:54,460 --> 01:30:56,722 Bir ağır yazmak mı? 2060 01:30:56,722 --> 01:30:57,680 Rick, Houlihan: Nedir? 2061 01:30:57,680 --> 01:30:58,596 HEDEF KİTLE: Ağır yaz. 2062 01:30:58,596 --> 01:31:01,270 Rick, Houlihan: Ağır yaz. 2063 01:31:01,270 --> 01:31:03,460 Bir bakayım. 2064 01:31:03,460 --> 01:31:06,220 >> HEDEF KİTLE: Ya o değil bir şey sadece can 2065 01:31:06,220 --> 01:31:08,809 birkaç saniye içinde ses? 2066 01:31:08,809 --> 01:31:10,850 Rick, Houlihan: Gitmemiz oylama senaryosu aracılığıyla. 2067 01:31:10,850 --> 01:31:11,670 O kadar da kötü değil. 2068 01:31:11,670 --> 01:31:14,580 Siz birkaç dakika var mı? 2069 01:31:14,580 --> 01:31:15,860 TAMAM. 2070 01:31:15,860 --> 01:31:17,890 >> Bu yüzden oylama hakkında konuşacağım. 2071 01:31:17,890 --> 01:31:20,250 Yani gerçek zamanlı oylama, biz var oylama için gereksinimleri. 2072 01:31:20,250 --> 01:31:25,250 Gereksinimler biz izin verdiğini vardır Her kişi sadece bir kez oy vermeye. 2073 01:31:25,250 --> 01:31:28,060 Biz hiç kimse muktedir olmak istiyorum oylarını değiştirmek için. 2074 01:31:28,060 --> 01:31:31,045 Biz gerçek zamanlı toplanmasını istiyorum ve demografik için analitik 2075 01:31:31,045 --> 01:31:34,210 biz olmak için gidiyoruz Sitede kullanıcılara gösteriliyor. 2076 01:31:34,210 --> 01:31:35,200 >> Bu senaryoda düşünün. 2077 01:31:35,200 --> 01:31:37,550 Biz gerçeğin çok çalışmak Onlar nereli TV şovları 2078 01:31:37,550 --> 01:31:38,960 şeyleri tam bu tip yapıyor. 2079 01:31:38,960 --> 01:31:41,584 Yani senaryo aklınıza gelebilecek, Biz milyonlarca ve milyonlarca 2080 01:31:41,584 --> 01:31:43,959 Oradan genç kız kendi cep telefonları ile 2081 01:31:43,959 --> 01:31:46,250 ve oylama ve oylama ve onlar kim için oy 2082 01:31:46,250 --> 01:31:48,610 En popüler olmaya bulabilirsiniz. 2083 01:31:48,610 --> 01:31:50,830 Peki bu bazı Gereksinim biz tükendi. 2084 01:31:50,830 --> 01:31:52,990 >> Ve böylece ilk almak Bu sorunu çözmede 2085 01:31:52,990 --> 01:31:55,090 Bir inşa etmek olacaktır çok basit bir uygulama. 2086 01:31:55,090 --> 01:31:56,490 Yani bu uygulama var. 2087 01:31:56,490 --> 01:31:57,950 Orada bazı seçmenleri dışarı. 2088 01:31:57,950 --> 01:31:59,980 Onlar oylama uygulaması vurdu gelir. 2089 01:31:59,980 --> 01:32:03,440 Ben bazı ham oy tablo var Ben sadece bu oy içine dökümü olacak. 2090 01:32:03,440 --> 01:32:05,780 Bazı agrega olacak oy tablo bu 2091 01:32:05,780 --> 01:32:09,490 Benim analitik ve demografik yapacak, ve biz orada bütün bu koymak gerekir. 2092 01:32:09,490 --> 01:32:11,420 >> Ve bu harika. 2093 01:32:11,420 --> 01:32:12,332 Hayat güzeldir. 2094 01:32:12,332 --> 01:32:15,040 Hayat biz bulana kadar iyi Her zaman sadece bir veya iki tane var 2095 01:32:15,040 --> 01:32:16,879 bir seçimde popüler insanlar. 2096 01:32:16,879 --> 01:32:19,420 Sadece bir ya da iki şey var insanlar gerçekten umurumda söyledi. 2097 01:32:19,420 --> 01:32:22,340 Ve oy kullanma eğer Ölçek, ben aniden 2098 01:32:22,340 --> 01:32:26,360 defolup çekiçleme olacak İki aday, bir ya da iki aday. 2099 01:32:26,360 --> 01:32:29,390 Öğeleri bir çok sınırlı sayıda insanlar popüler olmaya bulabilirsiniz. 2100 01:32:29,390 --> 01:32:31,710 >> Bu iyi bir tasarım deseni değil. 2101 01:32:31,710 --> 01:32:33,549 Bu aslında bir olduğunu çok kötü desen 2102 01:32:33,549 --> 01:32:36,340 oluşturur, çünkü tam olarak ne biz kısayol tuşları olan konuştuk. 2103 01:32:36,340 --> 01:32:38,960 Sıcak tuşları hoşumuza gitmeyen bir şey vardır. 2104 01:32:38,960 --> 01:32:40,470 >> Peki nasıl böyle düzeltebilirim? 2105 01:32:40,470 --> 01:32:47,640 Ve gerçekten, bunu düzeltmek için bir yoldur Bu aday kovalar alarak 2106 01:32:47,640 --> 01:32:51,490 ve biz her bir aday için, Biz rastgele bir değer eklemek için gidiyoruz, 2107 01:32:51,490 --> 01:32:54,192 rastgele bildiğimiz bir şey, bir ve 100 arasında bir değer, 2108 01:32:54,192 --> 01:32:56,620 100 ila 1,000 arasında, ya da bir ila 1,000 arasında, 2109 01:32:56,620 --> 01:32:59,940 Ancak birçok rasgele değerleri istediğiniz Bu adayın ucuna ekleyin. 2110 01:32:59,940 --> 01:33:01,330 >> Ve ben gerçekten o zaman ne yaptın? 2111 01:33:01,330 --> 01:33:05,830 Ben aday kimliğinizi olarak kullanıyorum ise agrega oyların kepçe, 2112 01:33:05,830 --> 01:33:08,780 Ben rastgele eklediyseniz Bu sonuna sayısı 2113 01:33:08,780 --> 01:33:12,000 Ben yarattım şimdi 10 kovalar, bir yüz kova, bin kovalar 2114 01:33:12,000 --> 01:33:14,160 ben genelinde oy toplayarak ediyorum. 2115 01:33:14,160 --> 01:33:18,030 >> Yani, milyonlarca ve milyonlarca ve kayıtların milyonlarca geliyor 2116 01:33:18,030 --> 01:33:22,050 Bu adaylar için, şimdi yayılıyor am Aday A_1 genelinde bu oy 2117 01:33:22,050 --> 01:33:24,630 Aday A_100 yoluyla nedeniyle Bir oy gelir her zaman, 2118 01:33:24,630 --> 01:33:26,530 Rasgele bir üretme ediyorum bir ve 100 arasında bir değer. 2119 01:33:26,530 --> 01:33:29,446 Ben sonuna üzerine teyel ediyorum kişinin için oy adayı. 2120 01:33:29,446 --> 01:33:31,120 O kova içine damping ediyorum. 2121 01:33:31,120 --> 01:33:33,910 >> Şimdi ters biliyorum ben yüz kova var. 2122 01:33:33,910 --> 01:33:36,350 Yani devam etmek istediğinizde ve oy toplamak, 2123 01:33:36,350 --> 01:33:38,244 Ben tüm bu kova okumak. 2124 01:33:38,244 --> 01:33:39,160 Yani go ahead ve ekleyin. 2125 01:33:39,160 --> 01:33:42,410 Ve sonra dağılım toplamak do Ben dışarı çıkmak ve hey demek nerede, 2126 01:33:42,410 --> 01:33:45,399 ne var biliyor musun, bu adayın anahtar alanlarda yüzün üzerinde kovalar olduğunu. 2127 01:33:45,399 --> 01:33:47,940 Tüm toplamak için gidiyorum Bu yüz kovalar oyu. 2128 01:33:47,940 --> 01:33:49,981 Ben toplamak için gidiyorum Onları ve ben, söylemek için gidiyorum 2129 01:33:49,981 --> 01:33:53,830 Aday A şimdi var x toplam oy sayısı. 2130 01:33:53,830 --> 01:33:55,690 >> Şimdi yazma hem Sorgu ve okuma sorgusu 2131 01:33:55,690 --> 01:33:58,160 güzel dağıtılır Ben yazıyorum çünkü karşısında 2132 01:33:58,160 --> 01:34:00,320 ve ben anahtarları yüzlerce genelinde okuyorum. 2133 01:34:00,320 --> 01:34:03,500 Ben yazmıyorum ve Şimdi tek bir tuş genelinde okuma. 2134 01:34:03,500 --> 01:34:04,950 Böylece büyük bir desen var. 2135 01:34:04,950 --> 01:34:08,090 >> Bu aslında muhtemelen biridir En önemli tasarım 2136 01:34:08,090 --> 01:34:10,420 NoSQL ölçek için desenleri. 2137 01:34:10,420 --> 01:34:14,470 Siz bu tür göreceksiniz Her lezzet tasarım deseni. 2138 01:34:14,470 --> 01:34:19,100 MongoDB, DynamoDB, değil mi olursa olsun, hepimiz bunu yapmak zorunda. 2139 01:34:19,100 --> 01:34:21,840 Eğer uğraşırken Çünkü bu büyük toplamalarla, 2140 01:34:21,840 --> 01:34:26,650 Eğer bir yol anlamaya zorunda kova genelinde onları yaymak. 2141 01:34:26,650 --> 01:34:29,512 Yani bu bunu yoludur. 2142 01:34:29,512 --> 01:34:31,220 Pekâlâ, ne yani Şu anda yapıyoruz 2143 01:34:31,220 --> 01:34:35,252 Eğer okuma kapalı ticaret yapıyoruz edilir Yazma ölçeklenebilirlik için maliyeti. 2144 01:34:35,252 --> 01:34:37,085 Benim okuma maliyeti Biraz daha karmaşık 2145 01:34:37,085 --> 01:34:40,220 ve ben okumak gitmek zorunda Yüz kovalar yerine biri. 2146 01:34:40,220 --> 01:34:41,310 Ama yazabilir değilim. 2147 01:34:41,310 --> 01:34:44,860 Ve benim hacmi, benim yazma verim inanılmaz. 2148 01:34:44,860 --> 01:34:49,450 Bu yüzden genellikle değerli DynamoDB ölçekleme için bir teknik, 2149 01:34:49,450 --> 01:34:51,350 ya da bu konuda herhangi bir NoSQL veritabanı. 2150 01:34:51,350 --> 01:34:53,824 2151 01:34:53,824 --> 01:34:55,240 Yani biz ölçeklemek nasıl anladım. 2152 01:34:55,240 --> 01:34:56,930 Ve biz düşündüm nasıl Bizim kısayol tuşları ortadan kaldırır. 2153 01:34:56,930 --> 01:34:57,820 Ve bu harika. 2154 01:34:57,820 --> 01:34:58,960 Ve biz bu güzel sistem var. 2155 01:34:58,960 --> 01:35:02,043 Ve bu bize çok doğru oylama verdi Biz rekor oy de-dupe çünkü. 2156 01:35:02,043 --> 01:35:03,130 Bu DynamoDB içine yerleşik. 2157 01:35:03,130 --> 01:35:05,380 Biz koşullu haklar hakkında konuştuk. 2158 01:35:05,380 --> 01:35:08,170 >> Bir seçmen geldiğinde, koyar masada bir ekleme, 2159 01:35:08,170 --> 01:35:11,220 Onlar, kendi seçmen kimliğiyle eklemek onlar başka bir oylamayı eklemeye çalışırsanız, 2160 01:35:11,220 --> 01:35:13,320 Ben bir koşullu yazma yapmak. 2161 01:35:13,320 --> 01:35:16,960 Bu bilgileri sadece Say Bu yoksa. 2162 01:35:16,960 --> 01:35:19,270 Yani en kısa sürede bunu gördüğünüz gibi Bu oy masasına vurdu 2163 01:35:19,270 --> 01:35:20,460 kimse olacak kendi oy koymak mümkün. 2164 01:35:20,460 --> 01:35:21,634 Ve bu harika. 2165 01:35:21,634 --> 01:35:23,550 Ve biz artan ediyoruz Bizim aday sayaçlar. 2166 01:35:23,550 --> 01:35:25,466 Ve biz yapıyoruz demografik ve hepsi bu. 2167 01:35:25,466 --> 01:35:29,110 Ama ne olur benim Uygulama yere düşer? 2168 01:35:29,110 --> 01:35:31,350 Şimdi ani oy tüm geliyor ve ben 2169 01:35:31,350 --> 01:35:34,840 onlar işleme alıyoruz olmadığını bilmiyorum Benim analitik ve demografik içine 2170 01:35:34,840 --> 01:35:36,040 Artık. 2171 01:35:36,040 --> 01:35:38,462 Ve ne zaman uygulama yukarı, ne geri geliyor 2172 01:35:38,462 --> 01:35:41,420 cehenneme ben oy var biliyor musunuz İşlenmiş ve nerede başlar? 2173 01:35:41,420 --> 01:35:44,530 >> Yani bu gerçek bir sorun olduğunda sizi olduğunu Bu tür bir senaryoda bakmaya başlar. 2174 01:35:44,530 --> 01:35:45,571 Ve nasıl bunu çözmek mi? 2175 01:35:45,571 --> 01:35:48,070 Biz ne ile çözmeye biz DynamoDB Akışları diyoruz. 2176 01:35:48,070 --> 01:35:53,470 Akarsular zaman sipariş ve Her erişim bölümlenmiş değişiklik günlüğü 2177 01:35:53,470 --> 01:35:55,700 masaya, her yazma masaya erişim. 2178 01:35:55,700 --> 01:35:58,810 Için yazılı herhangi bir veri masa dere üzerinde gösterir. 2179 01:35:58,810 --> 01:36:01,815 >> Bu temelde 24 saat kuyruk var. 2180 01:36:01,815 --> 01:36:03,690 Öğeler akışı vurdu Onlar 24 saat yaşıyor. 2181 01:36:03,690 --> 01:36:05,990 Onlar defalarca okunabilir. 2182 01:36:05,990 --> 01:36:09,400 Teslim edilmesi garantisi Sadece akımı bir kez, 2183 01:36:09,400 --> 01:36:11,180 n defa okunabilir. 2184 01:36:11,180 --> 01:36:14,910 Peki Ancak birçok süreçler istediğiniz bu verileri tüketmek, bunu tüketebilir. 2185 01:36:14,910 --> 01:36:16,350 Her güncelleme görünecektir. 2186 01:36:16,350 --> 01:36:18,455 Her yazma sadece olacak akışta bir kez görünür. 2187 01:36:18,455 --> 01:36:20,621 Yani endişelenmenize gerek yok İki kere işleme konusunda 2188 01:36:20,621 --> 01:36:22,500 Aynı süreçten. 2189 01:36:22,500 --> 01:36:25,350 >> Kesinlikle öğe başına sipariş ediyor. 2190 01:36:25,350 --> 01:36:28,180 Biz zaman derken sipariş ve bölümlenmiş, 2191 01:36:28,180 --> 01:36:30,680 Eğer dere üzerinde bölüm başına görürsünüz. 2192 01:36:30,680 --> 01:36:33,169 Sen sırayla öğeleri, güncellemeleri göreceksiniz. 2193 01:36:33,169 --> 01:36:35,210 Biz garanti değil sen dere üzerinde 2194 01:36:35,210 --> 01:36:40,240 Her işlem alacaksın öğeler arasında sırayla. 2195 01:36:40,240 --> 01:36:42,440 >> Yani akışları idempotent bulunmaktadır. 2196 01:36:42,440 --> 01:36:44,037 Hepimiz idempotent ne anlama geldiğini biliyor musun? 2197 01:36:44,037 --> 01:36:46,620 Idempotent bunu anlamına gelir üzerinde ve üzerinde tekrar tekrar. 2198 01:36:46,620 --> 01:36:48,200 Sonuç aynı olacak. 2199 01:36:48,200 --> 01:36:49,991 >> Akarsular, idempotent vardır ama onlar olmak zorunda 2200 01:36:49,991 --> 01:36:54,860 Başlangıç ​​noktasından oynadı Seçtiğiniz her yerde, sonuna kadar, 2201 01:36:54,860 --> 01:36:57,950 ya da neden olmaz Aynı değerleri. 2202 01:36:57,950 --> 01:36:59,727 >> MongoDB ile aynı şey. 2203 01:36:59,727 --> 01:37:01,560 MongoDB bir yapı yer alır Onlar OPLOG diyoruz. 2204 01:37:01,560 --> 01:37:04,140 Bu aynı yapıdır. 2205 01:37:04,140 --> 01:37:06,500 Birçok NoSQL veritabanları Bu yapı vardır. 2206 01:37:06,500 --> 01:37:08,790 Onlar şeyler yapmak için kullanabilirsiniz gibi çoğaltma, hangi 2207 01:37:08,790 --> 01:37:10,475 Tam olarak akışları ile ne olduğunu. 2208 01:37:10,475 --> 01:37:12,350 HEDEF KİTLE: Belki sapkın bir soru, ama sen 2209 01:37:12,350 --> 01:37:13,975 uygulamalar bir benzeri yapıyorsun hakkında konuşmak. 2210 01:37:13,975 --> 01:37:16,089 Akışları garanti edilir muhtemelen aşağı gitmek asla? 2211 01:37:16,089 --> 01:37:18,630 Rick, Houlihan: Evet, akarsuları aşağı gitmek asla garanti edilir. 2212 01:37:18,630 --> 01:37:21,040 Biz altyapısını yönetmek arkasında. otomatik akışları 2213 01:37:21,040 --> 01:37:22,498 Onların oto ölçeklendirme grubunda dağıtın. 2214 01:37:22,498 --> 01:37:25,910 Biz biraz geçmesi gerekir ne olduğu hakkında biraz. 2215 01:37:25,910 --> 01:37:30,060 >> Ben onlar değil söylememelidir aşağı gitmek asla garanti. 2216 01:37:30,060 --> 01:37:33,110 Elemanlar garantilidir akışında görünmesi. 2217 01:37:33,110 --> 01:37:36,740 Ve dere erişilebilir olacak. 2218 01:37:36,740 --> 01:37:40,580 Peki iner ya da geri geliyor yukarı, bu altından olur. 2219 01:37:40,580 --> 01:37:43,844 O Tamam covers--. 2220 01:37:43,844 --> 01:37:46,260 Pekala, farklı olsun ekranın dışına görünüm türleri. 2221 01:37:46,260 --> 01:37:51,040 Bir önemlidir görünüm türleri Programcı genellikle o neydi vardır? 2222 01:37:51,040 --> 01:37:52,370 Ben eski bir görünüm olsun. 2223 01:37:52,370 --> 01:37:55,630 Bir güncelleme tablosunu çarptığında, olacak dere eski görünümü itin 2224 01:37:55,630 --> 01:38:02,070 bu yüzden veri arşivlemek veya değişiklik olabilir kontrol, değişim tespiti, değişim 2225 01:38:02,070 --> 01:38:03,600 yönetimi. 2226 01:38:03,600 --> 01:38:07,160 >> O sonra şimdi ne yeni görüntü, Bir başka tip güncelleme 2227 01:38:07,160 --> 01:38:07,660 alabilirsin. 2228 01:38:07,660 --> 01:38:09,660 Eski ve yeni görüntüler hem de alabilirsiniz. 2229 01:38:09,660 --> 01:38:10,660 Belki ikisini de istiyorum. 2230 01:38:10,660 --> 01:38:11,790 Ne olduğunu görmek istiyorum. 2231 01:38:11,790 --> 01:38:13,290 Bunun için nelerin değiştiğini görmek istiyorum. 2232 01:38:13,290 --> 01:38:15,340 >> Ben bir uygunluk türü var işlemin bu çalışır. 2233 01:38:15,340 --> 01:38:17,430 Bu doğrulamak gerekiyor bunlar değiştirdiğinizde, 2234 01:38:17,430 --> 01:38:21,840 belli sınırlar içinde olduğunuzu veya belirli parametreler dahilinde. 2235 01:38:21,840 --> 01:38:23,840 >> Ve sonra belki de sadece değiştiğini bilmek gerekir. 2236 01:38:23,840 --> 01:38:26,240 Ben ne değişti öğe umurumda değil. 2237 01:38:26,240 --> 01:38:28,580 Bilmem gereken gerekmez Ne değişti bağlıyor. 2238 01:38:28,580 --> 01:38:30,882 Ben sadece olduğunu bilmek gerekir öğe dokundu ediliyor. 2239 01:38:30,882 --> 01:38:33,340 Peki bu görüşlerin türleri Eğer akış kapalı olsun 2240 01:38:33,340 --> 01:38:35,960 ve etkileşimde bulunabilirsiniz. 2241 01:38:35,960 --> 01:38:37,840 >> Uygulama bu akışı tüketir, 2242 01:38:37,840 --> 01:38:39,298 bu çalışır şekilde türüdür. 2243 01:38:39,298 --> 01:38:42,570 DynamoDB istemci sormak tabloları veri itin. 2244 01:38:42,570 --> 01:38:44,750 Akarsular biz kırıkları dediğimiz dağıtmak. 2245 01:38:44,750 --> 01:38:47,380 Shards ölçeklendirilmiş bağımsız olarak tablo. 2246 01:38:47,380 --> 01:38:50,660 Onlar tamamen hizaya yok senin tablonun bölümleri. 2247 01:38:50,660 --> 01:38:52,540 Ve nedeni ise onlar hizaya çünkü 2248 01:38:52,540 --> 01:38:55,430 kapasitesi, akım Tablonun kapasitesi. 2249 01:38:55,430 --> 01:38:57,600 >> Onlar dağıtmak onların Kendi oto ölçeklendirme grubu, 2250 01:38:57,600 --> 01:39:00,800 ve onlar bağlı dışarı dönmeye başlar geliyor kaç yazıyor üzerinde, 2251 01:39:00,800 --> 01:39:03,090 Kaç reads-- gerçekten var yazıyor. 2252 01:39:03,090 --> 01:39:05,820 Orada hiçbir reads-- ama nasıl Birçok yazar geliyor. 2253 01:39:05,820 --> 01:39:08,200 >> Ve sonra sırtında sonunda, biz ne biz 2254 01:39:08,200 --> 01:39:11,390 Bir KCI, ya da Kinesis Client Library diyoruz. 2255 01:39:11,390 --> 01:39:19,190 Kinesis bir akım verileri Amazon işleme teknolojisi. 2256 01:39:19,190 --> 01:39:22,040 Ve akımları o üzerine inşa edilmiştir. 2257 01:39:22,040 --> 01:39:25,670 >> Yani bir KCL etkin kullanımı Uygulama akışı okumak için. 2258 01:39:25,670 --> 01:39:28,752 Kinesis Müşteri Kütüphane aslında Sizin için işçileri yönetir. 2259 01:39:28,752 --> 01:39:30,460 Ve aynı zamanda, bazı yapar ilginç şeyler. 2260 01:39:30,460 --> 01:39:35,630 Bazı tabloları yaratacak senin DynamoDB tablo içinde 2261 01:39:35,630 --> 01:39:38,410 hangi öğeleri izlemek için İşlenmiş oylandı. 2262 01:39:38,410 --> 01:39:41,190 Yani bu yolu ise, geri düşerse o yere düşer ve gelir ve alır 2263 01:39:41,190 --> 01:39:45,570 geri kalktı, nerede belirleyebilirsiniz akımının işlenmesi içinde oldu. 2264 01:39:45,570 --> 01:39:48,360 >> Bu zaman çok önemli çoğaltma bahsediyoruz. 2265 01:39:48,360 --> 01:39:50,350 Ne bilmeliyim veri işlendikten edildi 2266 01:39:50,350 --> 01:39:52,810 ve hangi verileri henüz işlenecek olan. 2267 01:39:52,810 --> 01:39:57,380 Yani dere KCL kütüphane olacak Sana bu işlevselliği bir sürü vermek. 2268 01:39:57,380 --> 01:39:58,990 Tüm temizlik ilgilenir. 2269 01:39:58,990 --> 01:40:01,140 Her shard için bir işçi ayağa kalkar. 2270 01:40:01,140 --> 01:40:04,620 Bu idari bir tablo oluşturur her işçinin her shard için. 2271 01:40:04,620 --> 01:40:07,560 Ve bu işçiler yangın gibi, onlar bu tabloları korumak 2272 01:40:07,560 --> 01:40:10,510 bu yüzden bu rekor biliyorum okuma ve işlenmiştir. 2273 01:40:10,510 --> 01:40:13,850 Ve sonra bu şekilde süreci ise ölür ve çevrimiçi geri geliyor 2274 01:40:13,850 --> 01:40:17,940 o çıkardı nerede hakkı devam ettirebilirsiniz. 2275 01:40:17,940 --> 01:40:20,850 >> Yani biz bu kullanmak Çapraz bölge çoğaltma. 2276 01:40:20,850 --> 01:40:24,680 Müşterilerin bir sürü ihtiyacı var kendi veri tabloları veri veya parçalarını taşımak 2277 01:40:24,680 --> 01:40:25,920 etrafında farklı bölgelere. 2278 01:40:25,920 --> 01:40:29,230 Dokuz bölge vardır dünyanın her yerinde. 2279 01:40:29,230 --> 01:40:32,100 Yani need-- orada olabilir Asya'da kullanıcıların olabilir, kullanıcılar 2280 01:40:32,100 --> 01:40:34,150 ABD'nin Doğu Kıyısı. 2281 01:40:34,150 --> 01:40:38,980 Onlar farklı veriler var Yerel olarak dağıtılmış olması gerekir. 2282 01:40:38,980 --> 01:40:42,510 Ve belki de kullanıcı uçar ABD'ye üzerinde Asya, 2283 01:40:42,510 --> 01:40:45,020 ve ben çoğaltmak istediğiniz Onunla yaptığı verileri. 2284 01:40:45,020 --> 01:40:49,340 O Uçaktan alır Yani, o var onun cep uygulamayı kullanarak iyi bir deneyim. 2285 01:40:49,340 --> 01:40:52,360 >> Sen çapraz bölge kullanabilirsiniz Çoğaltma kütüphanesi bunu yapmak için. 2286 01:40:52,360 --> 01:40:55,730 Temelde biz iki teknoloji sağladı. 2287 01:40:55,730 --> 01:40:59,400 Bir yapabilirsiniz bir konsol uygulaması var Kendi EC2 örneği ayağa kalk. 2288 01:40:59,400 --> 01:41:01,240 Saf çoğaltma çalışır. 2289 01:41:01,240 --> 01:41:02,720 Ve sonra biz size kütüphaneyi verdi. 2290 01:41:02,720 --> 01:41:06,070 Kütüphane oluşturmak için kullanabileceğiniz kendi uygulama eğer 2291 01:41:06,070 --> 01:41:10,740 Bununla çılgınca şeyler yapmak istiyorum verilerinin-- Filtre, bunun sadece bir bölümünü çoğaltmak 2292 01:41:10,740 --> 01:41:14,120 veri döndürmek bir içine taşımak farklı tablo, vesaire vesaire. 2293 01:41:14,120 --> 01:41:18,700 2294 01:41:18,700 --> 01:41:20,520 Yani o neye benzediğini tür. 2295 01:41:20,520 --> 01:41:23,690 >> DynamoDB Akımlar olabilir Biz Lambda dediğimiz tarafından işlenen. 2296 01:41:23,690 --> 01:41:27,394 Biz olay hakkında biraz söz tahrik uygulama mimarileri. 2297 01:41:27,394 --> 01:41:28,810 Lambda bunun önemli bir bileşenidir. 2298 01:41:28,810 --> 01:41:32,840 Lambda talep üzerine yangınları koddur Belirli bir olaya yanıt olarak. 2299 01:41:32,840 --> 01:41:36,020 Bu olaylardan biri bir olabilir dere üzerinde görünen kaydı. 2300 01:41:36,020 --> 01:41:39,100 Bir rekor akışı belirirse, Bu Java işlevini arayacağım. 2301 01:41:39,100 --> 01:41:44,980 Peki, bu JavaScript ve Lambda olduğunu node.js, Java, Python, destekler 2302 01:41:44,980 --> 01:41:47,820 ve yakında destek verecek diğer diller de. 2303 01:41:47,820 --> 01:41:50,940 Ve saf kod, söylemek yeterli. 2304 01:41:50,940 --> 01:41:53,610 Java yazma, bir sınıf tanımlamak. 2305 01:41:53,610 --> 01:41:55,690 Sen Lambda içine JAR yukarı itin. 2306 01:41:55,690 --> 01:42:00,200 Ve sonra hangi sınıf belirtin Olay yanıt aramak için. 2307 01:42:00,200 --> 01:42:04,770 Sonra Lambda alt arkasında bu kodu çalışacaktır. 2308 01:42:04,770 --> 01:42:06,730 >> Bu kod işleyebilir dere kapalı kayıtlar. 2309 01:42:06,730 --> 01:42:08,230 O onunla istediği her şeyi yapabilir. 2310 01:42:08,230 --> 01:42:11,650 Bu özel örnekte, her we ' Gerçekten özelliklerini oturum yapıyor. 2311 01:42:11,650 --> 01:42:13,480 Ama bu sadece bir koddur. 2312 01:42:13,480 --> 01:42:15,260 Kod doğru, her şeyi yapabilir? 2313 01:42:15,260 --> 01:42:16,600 >> Yani bu verileri döndürebilirsiniz. 2314 01:42:16,600 --> 01:42:18,160 Bir türev görünüm oluşturabilirsiniz. 2315 01:42:18,160 --> 01:42:21,160 Bir belge yapısı ise, Eğer yapısını dümdüz olabilir. 2316 01:42:21,160 --> 01:42:24,300 Sen alternatif dizin oluşturabilirsiniz. 2317 01:42:24,300 --> 01:42:27,100 Şeyler her türlü yapabilirsiniz DynamoDB Streams yapmak. 2318 01:42:27,100 --> 01:42:28,780 >> Ve gerçekten, o gibi görünüyor budur. 2319 01:42:28,780 --> 01:42:29,940 Yani bu güncelleştirmeler geliyor olsun. 2320 01:42:29,940 --> 01:42:31,190 Onlar dize kapalı geliyorlar. 2321 01:42:31,190 --> 01:42:32,720 Onlar Lambda fonksiyonu tarafından okunan ediyoruz. 2322 01:42:32,720 --> 01:42:37,480 Onlar verileri dönen konum ve Türev tablolarda o kadar iterek, 2323 01:42:37,480 --> 01:42:42,200 değişimin dış sistemlerin bildiren ve ElastiCache veri bastırıyor. 2324 01:42:42,200 --> 01:42:45,900 >> Biz önbelleği koymak nasıl hakkında konuştuk Bu satışlar için veritabanı önünde 2325 01:42:45,900 --> 01:42:46,450 senaryo. 2326 01:42:46,450 --> 01:42:50,049 Peki ne olur ben öğe açıklamasını güncellemek? 2327 01:42:50,049 --> 01:42:52,340 Eh, ben olsaydı Lambda işlevi, o masaya çalışan 2328 01:42:52,340 --> 01:42:55,490 Ben öğe açıklamasını güncellemek, eğer olacak dere kapalı rekor pick up, 2329 01:42:55,490 --> 01:42:58,711 ve ElastiCache güncelleme olacak yeni verilerle örneği. 2330 01:42:58,711 --> 01:43:00,460 Yani bir sürü ait olduğunu Biz Lambda ne yapacağız. 2331 01:43:00,460 --> 01:43:02,619 Bu, bağlantı tutkal kodu. 2332 01:43:02,619 --> 01:43:04,410 Ve aslında verir başlatmak için yeteneği 2333 01:43:04,410 --> 01:43:07,930 ve çok karmaşık uygulamaları çalıştırmak için Adanmış bir sunucu olmadan 2334 01:43:07,930 --> 01:43:10,371 gerçekten harika altyapı. 2335 01:43:10,371 --> 01:43:13,100 >> Yani en geri dönelim bizim Gerçek zamanlı oylama mimarisi. 2336 01:43:13,100 --> 01:43:17,984 Bu yeni ve geliştirilmiş olan bizim ile dere ve KCL etkin bir uygulama. 2337 01:43:17,984 --> 01:43:20,150 Aynı, biz daha önce olduğu gibi seçimde herhangi bir ölçek anlaştım. 2338 01:43:20,150 --> 01:43:21,100 Biz bu gibi. 2339 01:43:21,100 --> 01:43:24,770 Biz dağılım büzgüler dışarı yapıyoruz Birden kovaları arasında. 2340 01:43:24,770 --> 01:43:26,780 Biz iyimser kilitleme devam var. 2341 01:43:26,780 --> 01:43:30,192 Biz seçmeni tutabilir oylarını değiştirmesini. 2342 01:43:30,192 --> 01:43:31,400 Onlar sadece bir kez oy kullanabilirsiniz. 2343 01:43:31,400 --> 01:43:32,880 Bu fantastik. 2344 01:43:32,880 --> 01:43:35,895 Gerçek zamanlı hata toleransı, Şimdi ölçeklenebilir toplanma. 2345 01:43:35,895 --> 01:43:38,270 Şey üzerinde düşerse, onu kendisini yeniden bilir nerede 2346 01:43:38,270 --> 01:43:41,300 çünkü geri geldiğinde Biz KCL uygulamasını kullanarak ediyoruz. 2347 01:43:41,300 --> 01:43:45,700 Ve o zaman biz de onu kullanabilirsiniz KCL uygulaması dışarı veri itmek 2348 01:43:45,700 --> 01:43:48,820 diğeri için kırmızıya kayma için Uygulamaya analitik, ya da kullanım 2349 01:43:48,820 --> 01:43:51,990 Elastik MapReduce çalıştırmak off gerçek-zamanlı streaming toplamalardan 2350 01:43:51,990 --> 01:43:53,180 Bu verilerin. 2351 01:43:53,180 --> 01:43:55,480 >> Yani bu şeyler biz çok konuşulan değil. 2352 01:43:55,480 --> 01:43:57,375 Ama ek konum gelen teknolojiler 2353 01:43:57,375 --> 01:44:00,310 Eğer aradığınız zaman ayı senaryolarda bu tür at. 2354 01:44:00,310 --> 01:44:03,160 >> Pekala, bu konuda yani DynamoDB Streams ile analitik. 2355 01:44:03,160 --> 01:44:05,340 Sen de-dupe toplayabilirsiniz Veri, her türlü yapmak 2356 01:44:05,340 --> 01:44:09,490 güzel şeyler, toplam veriler Bellek, bu türev tablo oluşturun. 2357 01:44:09,490 --> 01:44:13,110 Bu çok büyük bir kullanım davası Bu müşterilerinin çok 2358 01:44:13,110 --> 01:44:16,950 İç içe alarak, birlikte katılıyor Bu JSON belgelerin özelliklerini 2359 01:44:16,950 --> 01:44:18,946 ve ek dizin oluşturma. 2360 01:44:18,946 --> 01:44:21,680 2361 01:44:21,680 --> 01:44:23,150 >> Sonuna geldik. 2362 01:44:23,150 --> 01:44:26,689 Benimle rulman için teşekkür ederiz. 2363 01:44:26,689 --> 01:44:28,480 Öyleyse hakkında konuşalım referans mimarisi. 2364 01:44:28,480 --> 01:44:33,440 DynamoDB yüzden ortasında oturur AWS altyapısının çok. 2365 01:44:33,440 --> 01:44:37,090 Temelde bunu kanca bir şey kadar istediğiniz. 2366 01:44:37,090 --> 01:44:45,600 Uygulamalar Dynamo dahil kullanılarak inşa Lambda, ElastiCache, CloudSearch, 2367 01:44:45,600 --> 01:44:49,890 Elastik içine veri itmek MapReduce, DynamoDB ithalat ihracat 2368 01:44:49,890 --> 01:44:52,370 S3, iş akışları her türlü içine. 2369 01:44:52,370 --> 01:44:54,120 Ama muhtemelen en iyi hakkında konuşmak için bir şey, 2370 01:44:54,120 --> 01:44:56,119 ve bu gerçekten ne olduğunu ilginç zaman biz ise 2371 01:44:56,119 --> 01:44:58,350 olay güdümlü uygulamalar hakkında konuşmak. 2372 01:44:58,350 --> 01:45:00,300 >> Bu bir örnek bir iç proje 2373 01:45:00,300 --> 01:45:04,850 biz aslında olduğun yerde var yayıncılık anket sonuçlarını toplamak için. 2374 01:45:04,850 --> 01:45:07,700 Bir e-posta link Böylece Biz orada olacak, göndermek 2375 01:45:07,700 --> 01:45:11,350 Biraz bağlantı söyleyerek tıklayın olmak Burada ankete yanıt vermek. 2376 01:45:11,350 --> 01:45:14,070 Ve ne zaman bir kişinin tıklama Bu bağlantı, ne olur 2377 01:45:14,070 --> 01:45:18,020 Onlar güvenli bir aşağı çekme olduğunu S3'ten HTML anket formu. 2378 01:45:18,020 --> 01:45:18,980 Hiçbir sunucu yok. 2379 01:45:18,980 --> 01:45:20,600 Bu sadece bir S3 nesnesidir. 2380 01:45:20,600 --> 01:45:22,770 >> Bu form çıkageldi tarayıcıda kadar yükler. 2381 01:45:22,770 --> 01:45:24,240 Bu Omurga var. 2382 01:45:24,240 --> 01:45:30,160 Karmaşık JavaScript var o koşuyor. 2383 01:45:30,160 --> 01:45:33,557 Bu yüzden çok zengin bir uygulama var müşterinin tarayıcıda çalışan. 2384 01:45:33,557 --> 01:45:36,390 Onlar değil bilmiyorum Bir arka uç sunucusu ile etkileşim. 2385 01:45:36,390 --> 01:45:38,220 Bu noktada, her bir tarayıcıdır. 2386 01:45:38,220 --> 01:45:41,780 >> Onlar sonuçları yayımlamak neler Amazon API Geçidi diyoruz. 2387 01:45:41,780 --> 01:45:46,270 API ağ geçidi sadece bir web API Tanımlamak ve kanca olabilir 2388 01:45:46,270 --> 01:45:47,760 ne olursa olsun istediğiniz. 2389 01:45:47,760 --> 01:45:50,990 Bu özel durumda, konum Lambda fonksiyonu bağladım. 2390 01:45:50,990 --> 01:45:54,797 >> Yani benim POST operasyonu Hiçbir sunucu ile oluyor. 2391 01:45:54,797 --> 01:45:56,380 Temelde bu API ağ geçidini orada oturur. 2392 01:45:56,380 --> 01:45:58,770 Bana insanların dek hiçbir maliyeti Doğru, o deftere nakil başlar? 2393 01:45:58,770 --> 01:46:00,269 Lambda fonksiyonu sadece orada oturuyor. 2394 01:46:00,269 --> 01:46:03,760 Ve bu kadar bana hiçbir maliyeti insanlar isabet başlar. 2395 01:46:03,760 --> 01:46:07,270 Yani hacim olarak görebilirsiniz ücretleri gelince artar bu. 2396 01:46:07,270 --> 01:46:09,390 Bir sunucu 7/24 kaçmıyorum. 2397 01:46:09,390 --> 01:46:12,310 >> Yani formu çekin aşağı kova dışında, 2398 01:46:12,310 --> 01:46:15,719 ve ben API aracılığıyla sonrası Lambda işlevi Geçidi. 2399 01:46:15,719 --> 01:46:17,510 Sonra Lambda fonksiyon bilirsin diyor 2400 01:46:17,510 --> 01:46:20,600 Ne Bazı PIIS var, bazı kişisel bilgiler 2401 01:46:20,600 --> 01:46:21,480 Bu yanıtlarında. 2402 01:46:21,480 --> 01:46:23,020 Ben kullanıcılardan gelen yorumları aldım. 2403 01:46:23,020 --> 01:46:24,230 Ben e-posta adresleri var. 2404 01:46:24,230 --> 01:46:26,190 Ben adları var. 2405 01:46:26,190 --> 01:46:27,810 >> Bana bu kapalı bölme edelim. 2406 01:46:27,810 --> 01:46:30,280 Bazı üretmek için gidiyorum Bu kayıt dışı meta. 2407 01:46:30,280 --> 01:46:32,850 Ve ben itmek için gidiyorum DynamoDB içine metadata. 2408 01:46:32,850 --> 01:46:36,059 Ve ben tüm verileri şifrelemek olabilir Ben istiyorum ve DynamoDB itin. 2409 01:46:36,059 --> 01:46:38,600 Ama bu benim için daha kolay Önümüzdeki bir söz gitmek için, davayı kullanın, 2410 01:46:38,600 --> 01:46:42,800 Ben ham verileri itmek için gidiyorum Şifrelenmiş S3 kova içine. 2411 01:46:42,800 --> 01:46:47,240 Yani S3 sunucu tarafında inşa kullanmak şifreleme ve Amazon'un Anahtar Yönetimi 2412 01:46:47,240 --> 01:46:51,600 Böylece hizmet bir anahtar var düzenli aralıklarla dönebilir, 2413 01:46:51,600 --> 01:46:55,010 ve ben o KKB verilerini koruyabilir Bütün bu iş akışının bir parçası olarak. 2414 01:46:55,010 --> 01:46:55,870 >> Peki ben ne yaptım? 2415 01:46:55,870 --> 01:47:00,397 Ben sadece bir bütün dağıtılan ettik Uygulama ve hiçbir sunucu var. 2416 01:47:00,397 --> 01:47:02,980 Yani olay uygulama odaklı nedir mimari sizin için yapar. 2417 01:47:02,980 --> 01:47:05,730 >> Şimdi düşünmek eğer bu-- için kullanma durumu 2418 01:47:05,730 --> 01:47:08,730 biz konuşuyorum diğer müşterileri var yaklaşık bu kesin mimarisi kim 2419 01:47:08,730 --> 01:47:14,560 Olağanüstü büyük kampanyaları, koşmak kim Bu bakarak ve oh my, gidiyoruz. 2420 01:47:14,560 --> 01:47:17,840 Şimdi, onlar çünkü temelde orada dışarı itmek, 2421 01:47:17,840 --> 01:47:21,900 Sadece oturup kampanyayı izin orada başlattı ve kadar değil 2422 01:47:21,900 --> 01:47:24,400 Bir incir endişelenmenize gerek altyapı ne tür 2423 01:47:24,400 --> 01:47:26,120 Bunu desteklemek için oraya olacak. 2424 01:47:26,120 --> 01:47:28,600 Ve sonra en kısa sürede Bu kampanya, yapılır 2425 01:47:28,600 --> 01:47:31,520 bu altyapı gibi sadece hemen kaybolduktan 2426 01:47:31,520 --> 01:47:33,680 Gerçekten orada çünkü Hiçbir altyapı. 2427 01:47:33,680 --> 01:47:35,660 Bu Lambda oturur sadece kodu. 2428 01:47:35,660 --> 01:47:38,560 Bu DynamoDB oturur sadece veri var. 2429 01:47:38,560 --> 01:47:41,340 Bu inanılmaz bir yoludur uygulamalar oluşturmak için. 2430 01:47:41,340 --> 01:47:43,970 >> HEDEF KİTLE: Peki daha çok olduğunu geçici olacağını daha 2431 01:47:43,970 --> 01:47:45,740 gerçek bir sunucuda saklanan olsaydı? 2432 01:47:45,740 --> 01:47:46,823 >> Rick, Houlihan: Kesinlikle. 2433 01:47:46,823 --> 01:47:49,190 Bu sunucu örneği Çünkü 7/24 olurdu. 2434 01:47:49,190 --> 01:47:51,954 Bunun için hazır olmak zorundadır Biri cevap. 2435 01:47:51,954 --> 01:47:52,620 Peki ne oldu? 2436 01:47:52,620 --> 01:47:55,410 S3 24/07 mevcuttur. 2437 01:47:55,410 --> 01:47:57,100 S3 zaman verir. 2438 01:47:57,100 --> 01:47:59,320 Ve S3 çok çok iyi, nesneleri hizmet veren. 2439 01:47:59,320 --> 01:48:02,590 Bu nesneler HTML dosyaları olabilir, ya da JavaScript dosyaları, ya da her ne istiyorsun. 2440 01:48:02,590 --> 01:48:07,430 Çok zengin web uygulamaları çalıştırabilir S3 kovalar dışında, ve insanlar yok. 2441 01:48:07,430 --> 01:48:10,160 >> Ve böylece bu fikir burada uzak yoldan elde etmektir 2442 01:48:10,160 --> 01:48:11,270 Biz bu konuda düşünmek için kullanılır. 2443 01:48:11,270 --> 01:48:14,270 Hepimiz düşünmek için kullanılan sunucular ve bilgisayarlara şartları. 2444 01:48:14,270 --> 01:48:16,580 Artık bu konuda değil. 2445 01:48:16,580 --> 01:48:19,310 Bu kodu olarak altyapı hakkında. 2446 01:48:19,310 --> 01:48:22,470 Bulut kodunu dağıtmak ve Bulut sizin için çalışmasına izin verin. 2447 01:48:22,470 --> 01:48:24,980 Ve bu AWS yapmaya çalışıyor budur. 2448 01:48:24,980 --> 01:48:29,690 >> HEDEF KİTLE: ortasına altın kutusunda Yani API Gateway, sunucu gibi değil 2449 01:48:29,690 --> 01:48:30,576 ancak bunun yerine sadece- olduğu 2450 01:48:30,576 --> 01:48:32,850 >> Rick, Houlihan: Sence edebilirsiniz Sunucu cephe olarak bunu. 2451 01:48:32,850 --> 01:48:38,040 O Tüm bir HTTP alacağım olduğunu talep ve başka bir işlem için harita. 2452 01:48:38,040 --> 01:48:39,192 Yani öyle hepsi bu. 2453 01:48:39,192 --> 01:48:41,525 Ve bu durumda biz haritalama konum Bir Lambda fonksiyonu. 2454 01:48:41,525 --> 01:48:44,119 2455 01:48:44,119 --> 01:48:45,410 Pekala, ben aldım hepsi bu. 2456 01:48:45,410 --> 01:48:46,190 Çok teşekkür ederim. 2457 01:48:46,190 --> 01:48:46,800 Bunu takdir ediyorum. 2458 01:48:46,800 --> 01:48:48,100 Sanırım zamanla biraz istediğini biliyorum. 2459 01:48:48,100 --> 01:48:49,980 Ve umarım siz var bilgi biraz 2460 01:48:49,980 --> 01:48:51,410 Bugün uzakta alabilir. 2461 01:48:51,410 --> 01:48:53,520 Ben gidersem Ve özür dilerim senin başlarının üzerinde bazı, 2462 01:48:53,520 --> 01:48:56,697 ama iyi bir şey var Temel temel bilgiler 2463 01:48:56,697 --> 01:48:58,280 Bence sizin için çok değerlidir. 2464 01:48:58,280 --> 01:48:59,825 Yani bana sahip için teşekkür ederim. 2465 01:48:59,825 --> 01:49:00,325 [ALKIŞ] 2466 01:49:00,325 --> 01:49:02,619 HEDEF KİTLE: [duyulamaz] Söylediğiniz zaman olduğu 2467 01:49:02,619 --> 01:49:05,160 Eğer bir şey gitmek zorunda kaldı başından sonuna kadar 2468 01:49:05,160 --> 01:49:07,619 Doğru değerleri almak için veya aynı değerler 2469 01:49:07,619 --> 01:49:09,410 nasıl olur değerler [duyulamaz] eğer değiştirin. 2470 01:49:09,410 --> 01:49:10,480 >> Rick, Houlihan: Oh, idempotent? 2471 01:49:10,480 --> 01:49:11,800 Değerler nasıl değiştirecek? 2472 01:49:11,800 --> 01:49:15,180 Eh, çünkü koşmak vermedi sonuna kadar tüm yol, 2473 01:49:15,180 --> 01:49:19,770 Sonra ben değişir bilmiyorum son mil yapılmıştır. 2474 01:49:19,770 --> 01:49:22,144 Bu olacak değil Ben ne gördüm aynı verileri. 2475 01:49:22,144 --> 01:49:24,560 HEDEF KİTLE: Ah, senin bu yüzden sadece Tüm giriş kazanılmış değil. 2476 01:49:24,560 --> 01:49:24,770 Rick, Houlihan: Doğru. 2477 01:49:24,770 --> 01:49:26,895 Sen baştan gitmek zorunda sonuna ve daha sonra bu 2478 01:49:26,895 --> 01:49:29,280 tutarlı bir devlet olacak. 2479 01:49:29,280 --> 01:49:31,520 Güzel. 2480 01:49:31,520 --> 01:49:35,907 >> HEDEF KİTLE: Eğer bize gösterdi Yani DynamoDB belge veya anahtar değerini yapabilirsiniz. 2481 01:49:35,907 --> 01:49:38,740 Ve biz çok zaman geçirdim Bir karma ve yollar anahtar değeri 2482 01:49:38,740 --> 01:49:40,005 Etrafını çevirmek için. 2483 01:49:40,005 --> 01:49:43,255 O masalarda baktığında, yani Belge yaklaşımı geride bırakarak? 2484 01:49:43,255 --> 01:49:44,600 >> Rick, Houlihan: Ben olmaz Bunu geride bırakarak söylüyorlar. 2485 01:49:44,600 --> 01:49:45,855 >> İZLEYİCİ: Bunlar Şeyin ayrıldı 2486 01:49:45,855 --> 01:49:49,140 >> Rick, Houlihan: Belge yaklaşım, DynamoDB belge türü 2487 01:49:49,140 --> 01:49:50,880 sadece başka nitelik olarak düşünmek olduğunu. 2488 01:49:50,880 --> 01:49:53,560 Bu içeren bir nitelik var hiyerarşik bir veri yapısı. 2489 01:49:53,560 --> 01:49:56,980 Ve sonra sorgularda, Eğer özelliklerini kullanabilirsiniz 2490 01:49:56,980 --> 01:49:59,480 Nesne Notasyonu kullanarak bu nesnelerin. 2491 01:49:59,480 --> 01:50:03,562 Yani iç içe geçmiş bir filtre edebilirsiniz JSON belgenin özelliği. 2492 01:50:03,562 --> 01:50:05,520 HEDEF KİTLE: Yani herhangi bir zaman Bir belge yaklaşım yapmak, 2493 01:50:05,520 --> 01:50:07,906 Ben tür tabular-- varmak olabilir 2494 01:50:07,906 --> 01:50:08,780 HEDEF KİTLE: Kesinlikle. 2495 01:50:08,780 --> 01:50:09,800 HEDEF KİTLE: --indexes ve Sadece konuştuk şeyler. 2496 01:50:09,800 --> 01:50:11,280 Rick, Houlihan: Evet, indeksler ve bütün bu, 2497 01:50:11,280 --> 01:50:13,363 ne zaman dizin oluşturmak istediğiniz JSON özellikleri, 2498 01:50:13,363 --> 01:50:18,230 Biz bunu yapmak zorundayız yolu varsa olduğunu Bir JSON nesnesi veya bir belgeyi eklemek 2499 01:50:18,230 --> 01:50:20,780 Dynamo içine siz akışları kullanmak istiyorsunuz. 2500 01:50:20,780 --> 01:50:22,400 Akarsular girdi okurdum. 2501 01:50:22,400 --> 01:50:24,340 Sen JSON olduğunu olsun istiyorum nesne ve Tamam derdim, 2502 01:50:24,340 --> 01:50:26,030 Ben indeksi istediğiniz özellik nedir? 2503 01:50:26,030 --> 01:50:28,717 >> Bir türev tablo oluşturun. 2504 01:50:28,717 --> 01:50:30,300 Şimdi şu anda çalışır yoludur. 2505 01:50:30,300 --> 01:50:32,650 Biz indeksine izin vermez doğrudan bu özellikleri. 2506 01:50:32,650 --> 01:50:33,520 >> HEDEF KİTLE: Belgelerinizi Tabularizing. 2507 01:50:33,520 --> 01:50:36,230 >> Rick, Houlihan: Kesinlikle, düzleşme o, tam olarak bunu tabularizing. 2508 01:50:36,230 --> 01:50:37,415 Yani onunla ne var. 2509 01:50:37,415 --> 01:50:37,860 >> HEDEF KİTLE: Teşekkür ederim. 2510 01:50:37,860 --> 01:50:39,609 >> Rick, Houlihan: Evet, kesinlikle, teşekkür ederim. 2511 01:50:39,609 --> 01:50:42,240 HEDEF KİTLE: Yani bu tür var Mongo Redis classifers karşılamaktadır. 2512 01:50:42,240 --> 01:50:43,990 >> Rick, Houlihan: Evet, böyle bir çok şey. 2513 01:50:43,990 --> 01:50:45,940 Bunun için iyi bir açıklaması. 2514 01:50:45,940 --> 01:50:47,490 Güzel. 2515 01:50:47,490 --> 01:50:49,102