Inleiding (analyse van de pijnpunten)

Voor backend-ontwikkelaars en architecten van snelgroeiende contentplatforms, e-commercewebsites of bedrijfsapplicaties is een krachtige en flexibele zoekmachine een cruciale infrastructuur voor het verbeteren van de gebruikerservaring en de bedrijfsefficiëntie. Wanneer je echter een eigen zoekservice opzet of gebruik maakt van traditionele cloudgebaseerde zoekdiensten, wordt je vaak geconfronteerd met de volgende problemen:

  • Het is moeilijk om pieken in het verkeer aan te kunnen:Tijdens grote promoties of belangrijke gebeurtenissen stijgt de QPS (queries per seconde) plotseling, waardoor de vaste clusterbronnen overbelast raken en de zoekdienst traag reageert of zelfs uitvalt. Dit heeft direct invloed op de conversie en de bedrijfsinkomsten.
  • Het is moeilijk om de balans te vinden tussen middelen en kosten:Om de stabiliteit in piekperiodes te garanderen, moet u de resources configureren op basis van het hoogste verkeersvolume. In de meeste dalperiodes blijven echter veel reken- en opslagresources echter ongebruikt, wat tot een enorme kostenverspilling leidt.
  • De complexiteit van het beheer en onderhoud is hoog:Het uitvoeren van operationele taken, zoals het schalen van clusters, versie-upgrades, indexbeheer en prestatie-optimalisatie, vereist een professioneel team en veel inspanningen. De technische drempels zijn hoog en dit leidt tot een vermindering van de focus op de kernactiviteiten.

Als u worstelt met de stabiliteit, de hoge kosten en het zware beheer van uw zoekdienst, biedt dit artikel u een complete cloud-native elastische zoekoplossing.

Oplossingsarchitectuur en overzicht

Doel:Een foto zegt meer dan duizend woorden en geeft de lezer een algemeen overzicht.

Architectuurdiagram:

Elastic Search-oplossing: de cloud-native zoekmachine Elasticsearch Service ondersteunt kostenefficiënt piekverkeer voor bedrijven - LikaCloud

Overzicht van de architectuur:

De gebruiker start een zoekopdracht in de app (web/app/server), waarna het verkeer eerst wordt verdeeld door de Tencent Cloud Load Balancer (CLB). Vervolgens wordt de aanvraag via een beveiligd privénetwerk (VPC) doorgestuurd naar de Tencent Cloud Elasticsearch (ES)-service. De ES-cluster maakt gebruik vanEen serverloze architectuur.Een elastische schaalbaarheidsgroep op basis van bewakingsindicatoren.De berekeningsknooppunten kunnen binnen enkele seconden worden uitgebreid op basis van realtime query's. De gegevens worden in realtime geschreven door componenten zoals Kafka en worden intern in de ES-cluster verwerkt.Intelligente scheiding van warmte en koudeHet mechanisme slaat de warmtegegevens die vaak worden gebruikt op op SSD-schijven om de prestaties te garanderen. De koudgegevens die minder vaak worden gebruikt, worden automatisch opgeslagen in objectopslag (COS) en met behulp van ZSTD-compressietechnologie worden de opslagkosten verder verlaagd. Het volledige systeem zorgt voor een respons binnen enkele milliseconden en een hoge beschikbaarheid, terwijl de kosten tot een minimum worden beperkt.

Waardepropositie:Het plan werd goedgekeurd doorMaximale flexibiliteit.Om piekverkeer aan te kunnen, moet jeIntelligente opslag en compressieVerlaag de totale kosten doorVolledig beheerde dienstenHet ontlast de exploitatie- en onderhoudskosten en biedt een perfecte oplossing voor alle problemen die in de introductie worden genoemd.

Detailbeschrijving van de kernproducten en -onderdelen

  • Naam van het onderdeel: ​\n​ ​De Elasticsearch Service (ES) van Tencent Cloud.
    • Rol spelen:Als kern van de volledige oplossing biedt het gedistribueerde zoek- en analyse-engine services, waarmee alle data worden geïndexeerd en zoekopdrachten worden verwerkt.
    • Belangrijke configuratie-/selectieadviezen:
      • Architectuurselectie: ​Voor situaties waarbij het dataverkeer extreem fluctueert, wordt nadrukkelijk aanbevolen om hiervoor te kiezen.De serverloze versieHet maakt echt mogelijk om te betalen per gebruik en om met een flexibiliteit van milliseconden te schalen. Voor scenario's met regelmatige schommelingen kun je kiezen voor de versie met flexibele schaling en een schaalstrategie instellen op basis van de CPU-bezettingsgraad of het aantal query's per seconde (QPS).
      • Knooppuntconfiguratie:Het wordt aanbevolen om dit in te schakelen.De eigen hoofdnodeOm de stabiliteit van het cluster te verbeteren; er worden data nodes gebruikt.High I/O-typeGeneriekMaak gebruik van voorbeelden en combineer deze met SSD-cloudopslag voor optimale I/O-prestaties.
      • Functieconfiguratie:Zorg ervoor dat dit is ingeschakeld.Beheer van de levenscyclus van indexen (ILM)Functie: automatische realisatie van warme/koude temperatuurstratificatie; inschakelenZSTD-compressieOm een hogere compressieverhouding en een snellere compressiesnelheid te bereiken.
    • Waarom heb je hiervoor gekozen?:Tencent Cloud ES is een volledig beheerde service die compatibel is met open source Elasticsearch (100%) en die alle mogelijkheden van open source biedt, in combinatie met extra functies op ondernemingsniveau, zoals beveiliging, monitoring en waarschuwingen, en upgraden met één klik. Gebruikers hoeven zich geen zorgen te maken over de onderliggende infrastructuur en kunnen zich volledig richten op de logica van de zoekopdracht.
  • Naam van het onderdeel: ​\n​ ​Tencent Cloud Object Storage (COS)
    • Rol spelen:Als onderliggende opslag voor de koude gegevenslaag van ES, wordt hier archiefgegevens opgeslagen die slechts zelden worden gebruikt. Dit zorgt voor een zeer betrouwbare en goedkope opslagdienst.
    • Belangrijke configuratie-/selectieadviezen:Het creëren van koude gegevens voor ESStandard opslagLaagfrequente opslagEen emmer is voldoende. Deze heeft een enorme duurzaamheid van 99,99999999991 TP4T (12 negens) en er is geen extra configuratie nodig.
    • Waarom heb je hiervoor gekozen?:De opslagkosten van COS zijn veel lager dan die van high-performance blokopslag. Door naadloos te integreren met de ILM-functionaliteit van ES, kunnen koude gegevens ongemerkt worden verplaatst. Hierdoor worden de opslagkosten met meer dan 80% verlaagd, zonder dat dit ten koste gaat van de traceerbaarheid van de gegevens.
  • Naam van het onderdeel: ​\n​ ​Tencent Cloud Load Balancing (CLB)
    • Rol spelen:Als centraal toegangspunt voor de dienst worden er automatisch grote aantallen zoekopdrachten verdeeld over meerdere ES-datanodes in de back-end. Hierdoor worden single points of failure geëlimineerd en worden mogelijkheden geboden zoals het ontlasten van HTTPS.
    • Belangrijke configuratie-/selectieadviezen:SelectieEen toepassingsgerichte CLBHet is geconfigureerd als een TCP/UDP-luisteraar die verderstuurt naar poort 9200 van de ES-node. Het wordt aanbevolen om hier een elastisch openbaar IP-adres aan te koppelen en een maximale bandbreedte te configureren.
    • Waarom heb je hiervoor gekozen?:Het realiseren van een loadbalancing voor toegangsverkeer verhoogt de beschikbaarheid en schaalbaarheid van de service en verbergt tegelijkertijd de interne details van de back-end cluster voor de client, waardoor deze eenvoudiger te beheren is.

Samenvatting van de voordelen van het plan

  • ⚡ Ultieme flexibiliteit, schaalbaarheid in een fractie van een seconde: ​Met behulp van Serverless of Elastic Scale Group kun je de schaal onmiddellijk uitbreiden naar de vereiste omvang op basis van de werkdruk. Na een piek in het verkeer worden de resources automatisch teruggeschaald, zodat je werkelijk alleen betaalt voor het gebruikte volume.
  • 💸 Aanzienlijke verlaging van de totale kosten:Door slimme scheiding van warme en koude gegevens en ZSTD-compressietechnologie wordt de opslagkosten van koude gegevens met meer dan 801 TP4T verlaagd. Hierdoor wordt verspilling van resources voorkomen om pieken op te vangen en kunnen de totale kosten met 501 TP4T+ worden geoptimaliseerd.
  • 🛡️ Klaar om te gebruiken, met een hoge beschikbaarheid op bedrijfsniveau:We bieden een SLA voor servicebeschikbaarheid van 99,951% voor TP4T, met een ingebouwd kopieermechanisme, implementatie in meerdere beschikbaarheidszones, automatische foutoverdracht en beveiligingsfuncties zoals VPC-netwerkisolatie, beveiligingsgroepen en toegangslogboeken. Dit alles om de bedrijfscontinuïteit en gegevensbeveiliging te garanderen.
  • 🔧 Geen onderhoud en focus op bedrijfsinnovatie:De volledig beheerde service bespaart u het gedoe van hardware-implementatie, software-installatie, versie-upgrades, herstel van storingen en dergelijke. U hoeft alleen maar een paar eenvoudige configuraties via de console of API uit te voeren en u beschikt al over krachtige zoekmogelijkheden, zodat uw team zich kan focussen op de ontwikkeling van de kernactiviteiten.

Toepassingsscenario's en geschikte klanten

  • Typische toepassingsscenario's:
    • E-commerce websites/apps:Productzoeken, -filteren en -aanbevelingen om te voldoen aan de enorme vraag naar informatie tijdens grote promotiecampagnes, zoals 618 en Double Eleven.
    • Inhoud en informatieplatforms:Zoeken naar trefwoorden en full-text zoeken in nieuws, video's, artikelen en andere content.
    • Logboekanalyse en monitoring van bedrijfsvoering (ELK):Verzamel, sla op en analyseer realtime enorme hoeveelheden loggegevens van bedrijfsservers en -applicaties om storingen op te lossen en zakelijke inzichten te verwerven.
    • Dataretrieval binnen de onderneming:Zoals het opvragen van klant-, bestel- en productinformatie in systemen als CRM en ERP.
  • Kenmerken van toepasselijke klanten: ​
    • Er zijn duidelijke pieken en dalen in de bedrijfsbelasting en deze pieken zijn moeilijk te voorspellen.
    • De hoeveelheid data is enorm (in de orde van terabytes tot petabytes) en de toegang tot deze data vertoont duidelijke koude en warme kenmerken.
    • Grote en middelgrote ondernemingen die op zoek zijn naar een optimale prijs-kwaliteitverhouding en de kosten van hun infrastructuur willen optimaliseren.
    • Er is een gebrek aan professionele Elasticsearch-beheerteams en alle ontwikkelaars die op zoek zijn naar een kant-en-klaar, stabiele en betrouwbare zoekservice, zouden hierdoor geïnteresseerd kunnen zijn.

Gerelateerde links

Introductie van de Elasticsearch Service van Tencent Cloud Een volledig gehoste dienst voor het doorzoeken en analyseren van grote hoeveelheden gegevens in de cloud.
Tencent Cloud Object Storage (COS) Nieuwe gebruikers krijgen 30% korting op het driejarige cloudabonnement.
Tencent Cloud Load Balancing (CLB) We bieden een veilige en snelle distributieservice voor dataverkeer op vier tot zeven lagen.