Teams sometimes need lower latency, lower costs (especially as they scale) or the ability to run their applications somewhere other than AWS. Kuyinto kulula ukucacisa ukuthi izigaba ezininzi zihlanganisa Amazon DynamoDB kusukela kuqala e-2012. Kuyinto kulula ukuqala, ikakhulukazi uma inkampani yakho iyatholakala emkhakheni ye-AWS. It is relatively fast and scalable, with a low learning curve. Futhi ngenxa yokulawulwa ngokuphelele, it ukunciphisa izinzuzo zobuchwepheshe kanye nezinto ezivamile ezidingekayo ukugcina idatha lokusebenza futhi zokusebenza emzimbeni enhle. Kodwa ngesikhathi eside, izinzuzo zihlanganisa, ikakhulukazi njengoba isilinganiso se-workloads kanye nezidingo zebhizinisi zihlanganisa. I-Teams ingaba i-latency engaphakeme, izindleko ezingaphakeme (ngakumbi njengoba zihlanganisa), noma umthamo yokuhamba izicelo zabo eminye ngaphandle kwe-AWS. Kulezi zimo, i-ScyllaDB, okuyinto inikeza i-DynamoDB-compatible API, ikakhulukazi ukhetho. Thola ukubuyekeza izinzuzo ezidlulile ezivela amabhizinisi ezintathu abalandela DynamoDB. Multi-cloud Flexibility kanye nokushintshwa kwezindleko I-Yieldmo kuyinto i-online advertising platform enikeza abathengisi namadivayisi ngexesha elifanayo ngokusebenzisa uhlelo olusekelwe ku-auction, eyenziwe nge-ML. I-business yayo ibhekwa ekuthumela ama-advertisements ngokushesha (kuye ku-200-300 milliseconds) futhi ngokushesha, okuyinto kufuneka i-ultra-fast, i-high-throughput database searchups e-scale. I-database delays zihlanganisa ngqo kwebhizinisi elidlulile. Njengoba Todd Coleman, Technical Co-Founder and Chief Architect, wathi, izinzuzo zabo eziyinhloko ziye zihlanganisa izindleko ezinzima kanye nezinzuzo zendawo. I-database iye yandisa kakhulu ngenkathi zihlanganisa, futhi zihlanganisa kubo ku-AWS, okukhuthaza ukuxhaswa okuhle lwe-multi-cloud. Ngehlola i-DynamoDB alternatives, wahlanganyela ukufumana i-optional enikeza isivinini, ukucindezeleka, nokukwazi ukuzinza izindleko kanye nokupholisa ukunakekelwa kwe-cloud vendor. Yieldmo okokuqala ukhangela DynamoDB futhi ukongezelela ingcindezi caching. Nokho, caching awukwazi ukuguqulwa inkinga lokuzalwa geographic. I-cache misses kuyoba ngokushesha kakhulu, okwenza lokhu indlela engatholakali. U-Aerospike wahlola futhi i-Aerospike, okuyinto ibonise isivinini kanye nokuxhumana kwe-cross-cloud. Kodwa-ke, i-In-memory indexing ye-Aerospike iyahambisana ne-cluster eningi futhi eningi kakhulu yokusebenza ne-Yieldmo ye-small data objects. Ngaphezu kwalokho, ukuhambisa ku-Aerospike kungafuna izinguquko ze-code eningi futhi eningi. Futhi i-DynamoDB-compatible API ye-ScyllaDB (i-Alternator) yaba i-game changer. Todd wathi, "I-ScyllaDB inikeza ukulethwa kwe-cross-cloud, inikeza inani elawulwa le-server, futhi inikeza izindleko zokuthengisa. Okuningi kakhulu, i-API yayo iyahambisana ne-DynamoDB, okungenani singakwazi ukulethwa ngezinyathelo ezincinane ze-code. Ngokuvamile, injiniyela elinye lithumela izinguquko ezidingekayo eminyakeni eminingi. " I-Migration Process yasungulwa ngokucacileyo, ngokuvimbela isakhiwo se-Kafka ye-message queue etholakalayo ukuhlinzeka ukuxhaswa kwedatha. Bhalisa izivivinyo ezimbili ze-proof-of-concept (POC): Okokuqala nge-tablet efanayo ne-2800000000 ye-object, bese emhlabeni wonke ama-AWS amanye. Iziphumo zihlanganisa. Todd wahlanganyela, "Izindleko zethu ze-database ziye zihlangene, ngisho ne-DynamoDB yokushintshwa kwama-capacity." Futhi ngaphandle kokushintshwa kwezindleko, i-Yieldmo iye wahlanganyela ukuvuselelwa kwamanye ama-cloud providers. I-latency yayo iyahambisana, futhi i-ScyllaDB iye lula ukusebenza njengama-DynamoDB. Ukuphathelene, uTodd waqala: "Unye ingxaki yethu yokuqala yaba ukuguqulwa kokubiliwa kwe-DynamoDB. Kodwa-ke, i-ScyllaDB iyinkampani enhle. I-team yayo inikeza ukubuyekeza ama-cluster yethu, inikeza kwamanye ama-problems ezingenalutho, futhi inikeza kumadokhumenti lapho i-scaling iyadingeka ngenxa yokusebenza okuqhubekayo ngokushesha. I-DynamoDB yaziwa efana ne-DynamoDB, kodwa nge-independence ephakeme nokushintshwa kwezimali ezikhulu." Ngena ngemvume nge Yieldmo Ukuguqulwa ku-GCP nge-performance engcono futhi izindleko ezincinane I-Digital Turbine, umdlali ophezulu we-mobile ad technology nge-$ 500 million yentuthuko yonyaka, i-DynamoDB yokusebenza kwe-DynamoDB. Nangona i-motivation yayo yokuqala yokuguqulwa kwenziwa ku-Google Cloud Platform ngemuva kwamakhasimende, isixazululo se-DynamoDB eyenziwe ngempumelelo kokusebenza nama-cost. "Ukuhlinzeka, kungenzeka ukuthi kungenziwa kakhulu," uJoseph Shorter, vice president of Platform Architecture ku-Digital Turbine. "Wathola ezinye izimo zokusebenza. Senza ton ye-reads - i-90% ka-interactions nge-DynamoDB zihlanganisa izinsiza. Nge zonke izinsizakalo zihlanganisa ukuthi izinzuzo zokusebenza zihlanganisa ngaphezulu kuncike, okuholela izindleko. " I-Digital Turbine inesidingo sokuguqulwa ngokushesha nokunciphisa ingozi, okungenani ukugcina ukulungiswa kwe-application kuya ku-minimum. I-refactoring yokuqala, ngokuvumelana ne-Shorter, yaba: "Ukwazi ukulungiswa ngaphandle kokuguqulwa kwe-platform yethu ngokuvamile, ngokuvumelana nokugcina ukusebenza kanye nemali efanayo - nokuvimbela isimo se-crash-and-burn? Ngemuva kokubuyekezwa kwezinye izinketho, i-Digital Turbine ihlukaniswe ku-ScyllaDB kanye nokufinyelela ukuthuthukiswa okusheshayo. Ukuguqulwa kwenziwa ngaphansi kwe-sprint futhi imiphumela ebonakalayo. "Ukuhlukaniswa kwe-20% yebhizinisi - lokhu inombolo eningi, ngaphandle kokufundisa lokho," Shorter wabhala. "Ukuhlola izipho zethu ukuthuthukiswa okwengeziwe, kubaluleke kakhulu." Ngaphandle kwemikhiqizo yokushintshwa, baye baye baye "ngokuthintela ama-ScyllaDB ama-clusters", okuvumela indawo yokukhula okwengeziwe ngaphandle kokushintshwa kwezimali. Thola kusuka ku-Digital Turbine I-High Write Throughput ne-Low Latency ne-Lower Costs I-User State and Customizations Team ye-one of the world's largest media streaming services iye isebenzisa i-DynamoDB eminyakeni emininzi. Njengoba zithintshiselela amabhizinisi amabhizinisi amabhizinisi amahora amabhizinisi amabhizinisi amabhizinisi amabhizinisi amabhizinisi amabhizinisi amabhizinisi amabhizinisi amabhizinisi: I-Pause/Resume: Uma umdlali usihlola ishow futhi usihlola, ungathola lapho wahlala – kumadivayisi noma iyiphi indawo. Ukubuyekezwa: Ngokusebenzisa idatha efanayo, ukucacisa ukuthi umdlali wahlola i-show. Ngiyazi i-diagram ye-architecture enhle: Ngama-30 imizuzu, i-client inikeza i-heartbeats nge-updated playhead position ye-show bese inikeza ama-events e-database. I-Edge Pipeline inikeza ama-events e-user kanye ne-Authority (Auth) Pipeline inikeza ama-events kumazwe amabili angama-company inikeza. Ekugcineni, idatha kufanele ifakwe futhi inikezelwe kwebhizinisi ukuze inikeze ukubuyekeza. Qaphela ukuthi iqembu ufuna ukugcina ukuxubana phakathi kwezifunda ze-Auth ne-Edge, ngakho-ke akufundisa ukuthi akuyona noma iyiphi isivumelwano esizayo se-database phakathi kwabo. Izidingo ezimbili eziyinhloko zobuchwepheshe zokuxhumana le-architecture ziye: Ukuze kuqinisekiswe ukufinyelela kwamakhasimende enhle, uhlelo kufanele lihlale ephakeme, ne-low-latency readings kanye ne-capacity yokuphakamisa ngokuvumelana ne-traffic surges. Ukuze ukunceda ukulungiswa kwe-infrastructure ephakeme noma umsebenzi we-DBA, kufanele kube lula ukuhlanganiswa nezinsizakalo ze-AWS. Uma izikhwama ziye zibonwa, iqembu wabhala ukunciphisa izindleko jikelele. "I-infrastructure yethu ekhaya iye idatha eyenziwe phakathi kwezinhlobonhlobo ezihlukahlukene ze-DynamoDB kanye ne-Elasticache, ngakho-ke sincoma okuhle ukuthi kungenzeka ukuhlanganise lezi ku-cost system enhle kakhulu," umkhakha wama-backend wabhala. Ngokuphathelene, ufuna database nge: Ukusekela ama-multi-region, njengoko inkonzo yaziwa emikhulu eminyakeni angama-geographic. I-updates ayikho i-Service-Level Agreement (SLA), kodwa inkqubo yayingathwa ukuhlolwa okungenani ngokuvumelana ne-event timestamps. Umthamo ukulawula ezingaphezu kuka-78K ukulayishwa ngenyanga nge-latency ye-P99 angu-10 kuya ku-20 milliseconds. Isibonelo sokusebenzisa kuphela isivumelwano se-point; izinto ezifana ne-indices, i-partitioning ne-query patterns eyenziwe ngempumelelo. Cishe 10TB data nge indawo yokukhula. Ngokusho ukusuka ku-DynamoDB? Ngokuhambisana ne-backend engineer yabo, "I-DynamoDB ingathola izidingo zethu zobuchwepheshe ngokushesha. Kodwa ngokuvamile ubukhulu lwethu lomsebenzisi kanye ne-high (writing-heavy) throughput, ukuxhumana ne-DynamoDB kuyinto efana nokuvimbela imali emoyeni." Ngokusekelwe izidingo zakho ze-writing performance kanye ne-cost, bakwazi ukuhlola i-ScyllaDB. Ngokuvamile umqondo, zihlanganisa i-ScyllaDB Cloud test cluster nge-AWS i4i 4xlarge nodes ezingu-6, futhi zihlanganisa i-cluster nge-3 billion irekhodi. Zihlanganisa izindleko ezimbonini ze-170K ze-writes ngenyanga kanye ne-78K ze-reads ngenyanga. Futhi imiphumela? "Sihlanganisa izindleko ezimbonini nge-zero errors. I-P99 yethu yokubacindezela iye yi-9 ms ne-writing latency engaphansi kwe-1 ms." Lezi zincazelo ezincinane, ngokubambisana nezindleko ezikhulu (ngaphezulu kwe-50%) zikhuthaza ukuba afike ku-DynamoDB. Ngaphandle kwezincazelo ezincinane ezincinane ngezindleko ezincinane, iqembu lihlola izindawo ezilandelayo ze-ScyllaDB: Ukwakhiwa kwe-performance-focused ye-ScyllaDB (okusekelwe ku-Seastar framework, usebenzisa i-C++, ukunikezela ku-NUMA, ukunikezela ama-drivers e-shard-aware, njll) inikeza iqembu ukunciphisa isikhathi futhi izindleko zokuhlanza. I-Incremental Compaction Strategy inikeza kubo ukunciphisa kakhulu ukubuyekezwa kwegama. I-Flexible consistency level kanye ne-replication factors inikeza ku-Auth kanye ne-Edge pipelines ezahlukile. Ngokwesibonelo, i-Auth isetshenziselwa ukuxhaswa kwe-quorum lapho i-Edge isetshenziselwa ukuxhaswa kwe-“1” ngenxa ye-data duplication kanye ne-high throughput. Umbhali wayo we-backend wabhala: "Ukuhlola i-database kuyinto enhle. Ufuna ukhangele kuphela izici, kodwa futhi izindleko. I-Serverless akuyona i-silver bullet, ikakhulukazi ku-database domain. "Ukuhlolwa kwethu, ngenxa yemfuneko ophezulu yama-transit kanye ne-latency, i-DynamoDB ye-serverless ayikho ukhetho elihle. Ngaphezu kwalokho, akufanele ukunciphisa okungenani umkhakha we-hardware. Ukusetshenziswa okungcono kwe-hardware kubalulekile ukunciphisa izindleko kanye nokuphucula ukusebenza." Ngena ngemvume Ingabe iqela lakho elilandelayo? Uma iqela lakho lihlala Ngena ngemva to explore. Ngena ngemvume Ukuze uthole okwengeziwe mayelana ne-use case yakho, i-SLAs, izidingo zobuchwepheshe kanye ne-optimizing. Sithole ukuthi i-ScyllaDB iyatholakala kahle futhi, uma kukhona, ukuthi ukuhambisa kungabangela ngezikhathi ze-application changes, data modeling, infrastructure njll. Ukuguqulwa kwe-DynamoDB ScyllaDB kungabangela ukhetho Ukuhlolwa Technical I-Bonus: Ngiyaxolisa ngokushesha kanjani i-ScyllaDB ibandakanya ne-DynamoDB: Ukubhalisa Waze: U-Guilherme da Silva Nogueira Waze UFELIPE CARDENETI MENDES . Ukubhalisa U-Guilherme da Silva Nogueira UFELIPE CARDENETI MENDES