Sobes.tech

ScyllaDB-ს გამოყენება პროდიუსერის წინ არის ანტიპატერნი. როგორ სწორად ორგანიზება დუპლიკაციის?

Senior
152

დავუშვათ, ჩვენ დიდი რეკლამა ქსელი ვართ. ჩვენ ვაყენებთ ბანერებს პარტნიორ საიტებზე მთელ მსოფლიოში. ჩვენ უნდა შევქმნათ რეალურ დროში მოვლენების შეგროვებისა და დამუშავების სისტემა. ეს მონაცემები კრიტიკულია ორი მიზნისთვის: გადასახადები: რეკლამატორებიდან კლიკებზე თანხის ჩამოჭრა. ანალიტიკა: მიმდინარე კამპანიების ეფექტიანობის ჩვენება (CTR, ჩვენებები) პირად პანელზე. შესავალი მონაცემები (საწვავის გამოთვლისთვის) თქვენ უნდა შეაფასოთ საჭირო შესაძლებლობები (RPS, ტრაფიკი, შენახვა), დაყრდნობით შემდეგ მეტრიკებს: პარტნიორი ქსელი: 500,000 აქტიური საიტი. ტრაფიკი: საშუალოდ, თითოეული საიტი იღებს 2 გვერდის ნახვას წამში. რეკლამა ბლოკები: თითოეულ გვერდზე ერთდროულად გამოჩნდება 3 ბანერი. გადაყვანა: საშუალო CTR (Click-Through Rate) 1% არის. არასამართლიანობა: პიკი დატვირთვა (საღამოს საათები) ოთხჯერ მაღალია საშუალოსთან შედარებით. შემთხვევის ზომა: შემთხვევის ობიექტი (ID ბანერი, ID საიტი, UserID, Timestamp, შემთხვევის ტიპი) დაახლოებით 500 ბაიტია. ტექნიკური მოთხოვნები Near Real-Time: მონაცემები ანალიტიკური ინტერფეისში უნდა გამოჩნდეს მაქსიმუმ 10 წამის დაგვიანებით. სანდოობა: კლიკების დაკარგვა მიუღებელია (ეს პირდაპირი თანხის დაკარგვაა). ჩვენება დაკარგვა (impressions) მისაღებია 0.01%-მდე. სკალირებადობა: სისტემა უნდა იყოს ადვილად გაფართოებადი პლატფორმების ზრდასთან ერთად.

Senior
139

რატომ გვჭირდება კერამული მონაცემების შენახვა S3 საცავში? სწორია თუ არა TTL-ის გამოყენება Redis-ზე 5 წუთით, თუ უკეთესია უფრო ხანგრძლივად — 24 საათი, და გამოიყენოთ ScyllaDB როგორც მონაცემების შემოწმების წყარო?

Senior
131