ScyllaDB-ի օգտագործումը արտադրողից առաջ հակատիպ է։ Ինչպես ճիշտ կազմակերպել կրկնօրինակում?
Golang
Ելնելով այն հանգամանքից, որ մենք մեծ գովազդային ցանց ենք։ Մենք տեղադրում ենք բաններ գործընկեր կայքերում ամբողջ աշխարհում։ Մենք պետք է նախագծենք իրական ժամանակում իրադարձությունների հավաքման և մշակման համակարգ։ Այս տվյալները շատ կարևոր են երկու նպատակների համար՝ Հաշվարկ՝ գովազդատուներից սեղմումների համար գումար կորզել։ Վերլուծություն՝ ներկայիս արդյունավետությունը ցուցադրել անձնական վահանակում (CTR, ցուցադրություններ) Մուտքային տվյալներ (բեռի հաշվարկի համար) Դուք ինքնուրույն պետք է գնահատեք անհրաժեշտ հզորությունները (RPS, տրաֆիկ, պահեստավորում), հիմնվելով հետևյալ մետրիկաներին՝ Գործընկեր ցանցը՝ 500,000 ակտիվ կայք։ Տրաֆիկը՝ միջինում, յուրաքանչյուր կայք ստանում է 2 էջ դիտում секундին։ Գովազդային բլոկներ՝ Յուրաքանչյուր էջում միաժամանակ ցուցադրվում է 3 բաններ։ Փոխարկում՝ Միջին CTR (Click-Through Rate) 1% է։ Անհամապատասխանություն՝ Պիկ բեռը (երեկոյան ժամերը) միջինից 4 անգամ բարձր է։ Եվենթների չափը՝ (ID բանների, ID կայքի, UserID, Timestamp, տեսակի իրադարձություն) մոտ 500 բայթ է։ Տեխնիկական պահանջներ Near Real-Time: Տվյալները վերլուծական ինտերֆեյսում պետք է հայտնվեն առավելագույնը 10 վայրկյան ուշացումով։ Հավաստիություն՝ Կլիկների կորուստը անընդունելի է (այդ դեպքում գումարի անմիջական կորուստ է): Ցուցադրումների կորուստը՝ մինչև 0.01%։ Մասշտաբայնություն՝ Սիստեմը պետք է հեշտությամբ ընդլայնվի՝ աճող հարթակների թվի հետ։
Ինչու է մեզ անհրաժեշտ պահել կեղտոտ տվյալները S3 պահեստում: Արդյո՞ք ճիշտ է օգտագործել TTL Redis- ում 5 րոպե, թե՞ ավելի լավ է պահել ավելի երկար՝ 24 ժամ, և օգտագործել ScyllaDB որպես տվյալների ստուգման աղբյուր։