Zephyrnet-logo

Amazon OpenSearch Serverless is nu algemeen beschikbaar!

Datum:

We sloten 2022 goed af met de preview release van Amazon OpenSearch Serverless bij re:Invent. Vandaag kondigen we met genoegen de algemene beschikbaarheid aan van Amazon OpenSearch Serverloos, de serverloze optie voor Amazon OpenSearch-service dat maakt het eenvoudiger om zoek- en analysewerklasten uit te voeren zonder zelfs maar na te hoeven denken over infrastructuurbeheer. In dit bericht delen we onze aanpak en architectuur op hoog niveau van OpenSearch Serverless.

Achtergrond

Zelfbeheerd OpenSearch en beheerde OpenSearch Service worden veel gebruikt om petabytes aan gegevens te doorzoeken en te analyseren. Beide opties geven u volledige controle over de configuratie van reken-, geheugen- en opslagresources in clusters, waardoor u de kosten en prestaties voor hun toepassingen kunt optimaliseren.

Het is echter mogelijk dat u vaak toepassingen uitvoert die zeer variabel kunnen zijn, waarvan het gebruik niet altijd bekend is. Dergelijke toepassingen kunnen plotselinge bursts in opnamegegevens of onregelmatige en onvoorspelbare queryverzoeken ervaren. Om consistente prestaties te behouden, moet u clusters voortdurend afstemmen en van grootte veranderen of overprovisioning voor piekvraag, wat resulteert in extra kosten. Veel klanten wilden een nog eenvoudigere ervaring om zoek- en analysewerklasten uit te voeren, zodat u zich kunt concentreren op uw bedrijfsapplicaties zonder dat u zich zorgen hoeft te maken over de backend-infrastructuur en gegevensbeheer.

Wat betekent eenvoudiger gemeen? Het betekent dat u zich geen zorgen wilt maken over deze taken:

  • Instanties kiezen en inrichten
  • Beheer de shard of de indexgrootte
  • Index- en gegevensbeheer voor dimensionering en operationele doeleinden
  • Bewaak of pas de instellingen voortdurend aan om te voldoen aan de eisen van de werklast
  • Plan voor systeemstoringen en overschrijdingen van resourcedrempels
  • Beveiligingsupdates en servicesoftware-updates

Deze checklist hebben we vertaald naar eisen en doelen onder de volgende productthema's:

  • Simpel en veilig
  • Automatische schaling, fouttolerantie en duurzaamheid
  • Kost efficiëntie
  • Integraties van ecosystemen

Voordat we ingaan op hoe OpenSearch Serverless aan deze behoeften voldoet, bekijken we eerst de beoogde gebruiksscenario's voor OpenSearch Serverless, aangezien hun onderscheidende kenmerken onze ontwerpbenadering en architectuur sterk hebben beïnvloed.

Richt u op use-cases

De beoogde use-cases voor OpenSearch Serverless zijn hetzelfde als OpenSearch:

  • Tijdreeksen analytics (ook in de volksmond bekend als log analytics) richt zich op het analyseren van grote hoeveelheden semi-gestructureerde, door machines gegenereerde gegevens in realtime voor operationele, beveiligings- en gebruikersgedragsinzichten
  • Ontdek ondersteunt klantapplicaties in hun interne netwerken (zoeken naar applicaties, contentmanagementsystemen, juridische documenten) en internetgerichte applicaties zoals het zoeken naar e-commercewebsites en het zoeken naar content

Laten we eens kijken naar de verschillen tussen de typische tijdreeksen en zoektaken (uitzonderingen kunnen verschillen):

  • Time Series-workloads zijn schrijfintensief, terwijl zoekworkloads leesintensief zijn
  • Zoekwerklasten hebben een kleiner gegevenscorpus in vergelijking met tijdreeksen
  • Zoek werk belastingen zijn gevoeliger voor latenties en vereisen snellere reactie tijden dan tijd reeks werk belastingen
  • Query's voor tijdreeksen worden uitgevoerd op recente gegevens, terwijl zoekopdrachten het hele corpus scannen

Deze kenmerken hebben grote invloed gehad op onze benadering van het omgaan met en beheren van shards, indexen en gegevens voor de workloads. In de volgende sectie bekijken we de brede thema's van hoe OpenSearch Serverless de uitdagingen van klanten aangaat en tegelijkertijd efficiënt tegemoet komt aan deze kenmerkende werklastkenmerken.

Simpel en veilig

Om aan de slag te gaan met OpenSearch Serverless, maakt u een Collectie. Collecties zijn een logische groepering van geïndexeerde gegevens die samenwerken om een ​​werklast te ondersteunen, terwijl de fysieke bronnen automatisch worden beheerd in de backend. U hoeft niet aan te geven hoeveel rekenkracht of opslagruimte nodig is, of het systeem te controleren om er zeker van te zijn dat het goed werkt. Om de twee overheersende workloads goed aan te kunnen, past OpenSearch Serverless verschillende sharding- en indexeringsstrategieën toe. Daarom moet u in de workflow voor het maken van een collectie het collectietype definiëren: tijdreeks of zoeken. U hoeft zich geen zorgen te maken over het opnieuw indexeren of rollover van indexen om uw groeiende gegevensomvang te ondersteunen, omdat dit automatisch door het systeem wordt afgehandeld.

Vervolgens maakt u de configuratiekeuzes over de te gebruiken coderingssleutel, netwerktoegang tot uw verzamelingen (openbaar eindpunt of VPC) en wie toegang moet krijgen tot uw verzameling. OpenSearch Serverless heeft een gebruiksvriendelijke en zeer effectieve beveiligingsmodel die hiërarchisch beleid ondersteunt voor uw collecties en indexen. U kunt gedetailleerd beveiligingsbeleid op collectie- en accountniveau maken voor al uw collecties en indexen. Het gecentraliseerde beleid op accountniveau biedt u uitgebreide zichtbaarheid en controle, en maakt het operationeel eenvoudig om collecties op schaal te beveiligen. Voor coderingsbeleid kunt u een AWS Sleutelbeheerservice (AWS KMS)-sleutel voor een enkele collectie, alle collecties of een subset van collecties met behulp van een wildcard-overeenkomstpatroon. Als regels uit meerdere beleidsregels overeenkomen met een verzameling, heeft de regel die het dichtst bij de volledig gekwalificeerde naam ligt voorrang. U kunt ook overeenkomende patronen voor jokertekens opgeven in het netwerk- en gegevenstoegangsbeleid. Meerdere beleidsregels voor netwerk- en gegevenstoegang kunnen van toepassing zijn op een enkele verzameling en de machtigingen zijn additief. U kunt het netwerk- en gegevenstoegangsbeleid voor uw verzameling op elk moment bijwerken.

OpenSearch-dashboards zijn nu toegankelijk met uw SAML en AWS Identiteits- en toegangsbeheer (IAM) referenties. OpenSearch Serverless ondersteunt ook fijnmazige IAM-machtigingen, zodat u kunt definiëren wie beleidsregels voor versleuteling, netwerk- en gegevenstoegang kan maken, bijwerken en verwijderen, waardoor organisatorische afstemming mogelijk wordt. Alle gegevens in OpenSearch Serverless zijn standaard versleuteld tijdens verzending en in rust.

Automatisch schalen, fouttolerantie en duurzaamheid

OpenSearch Serverloos ontkoppelt opslag en rekenkracht, waardoor elke laag onafhankelijk kan worden geschaald op basis van de werklast. Deze ontkoppeling maakt ook de isolatie van indexerings- en query-rekenknooppunten mogelijk, zodat de wagenparken gelijktijdig kunnen werken zonder enige bronstrijd. De rekenbronnen zoals CPU, schijfgebruik, geheugen en hot shard-status worden bewaakt en beheerd door de service. Wanneer deze systeemdrempels worden overschreden, past de service de capaciteit aan, zodat u zich geen zorgen hoeft te maken over het schalen van resources. Als een applicatiebewakingswerklast bijvoorbeeld een plotselinge uitbarsting van logboekactiviteiten ontvangt tijdens een beschikbaarheidsgebeurtenis, schaalt OpenSearch Serverless de indexerende rekenknooppunten uit. Wanneer deze logboekactiviteiten afnemen en het resourceverbruik in de rekenknooppunten onder een bepaalde drempel zakt, schaalt OpenSearch Serverless de knooppunten weer naar binnen. Evenzo, wanneer een website-zoekmachine een plotselinge piek van zoekopdrachten ontvangt na een nieuwsgebeurtenis, schaalt OpenSearch Serverless automatisch de query-rekenknooppunten om de query's te verwerken zonder de prestaties van de gegevensopname te beïnvloeden.

Het volgende diagram illustreert deze architectuur op hoog niveau.

OpenSearch Serverless is ontworpen voor productieworkloads met redundantie voor uitval van beschikbaarheidszones en infrastructuurstoringen. Standaard repliceert OpenSearch Serverless indexen over beschikbaarheidszones. De indexerende rekenknooppunten worden uitgevoerd in een actieve stand-bymodus. Het servicebesturingsvlak is ook gebouwd met redundantie en automatisch herstel van fouten. Alle geïndexeerde gegevens worden opgeslagen in Amazon eenvoudige opslagservice (Amazon S3) om dezelfde gegevensduurzaamheid te bieden als Amazon S3 (11 negens). De query-rekeninstanties downloaden de geïndexeerde gegevens rechtstreeks van Amazon S3, voeren zoekbewerkingen uit en voeren aggregaties uit. Redundante querycomputing wordt geïmplementeerd in beschikbaarheidszones in een actief-actieve modus om de beschikbaarheid tijdens storingen te behouden. Het vernieuwingsinterval (de tijd vanaf het moment dat een document wordt opgenomen door OpenSearch Serverless tot het moment waarop het beschikbaar is om te doorzoeken) is momenteel minder dan 15 seconden.

Kosten en kostenefficiëntie

Met OpenSearch Serverless hoeft u resources niet vooraf te dimensioneren of in te richten, en hoeft u ook niet te veel in te richten voor piekbelasting in productieomgevingen. U betaalt alleen voor de reken- en opslagresources die door uw workloads worden gebruikt. De rekencapaciteit die wordt gebruikt voor gegevensopname en zoeken en query's wordt gemeten in OpenSearch Compute Units (OCU's). Het aantal OCU's komt rechtstreeks overeen met de CPU, het geheugen, Amazon elastische blokwinkel (Amazon EBS)-opslag en de I/O-resources die nodig zijn om gegevens op te nemen of query's uit te voeren. Eén OCU omvat 6 GB RAM, overeenkomstige vCPU, 120 GB GP3-opslag (gebruikt om snelle toegang tot de meest gebruikte gegevens te bieden) en gegevensoverdracht naar Amazon S3. Nadat gegevens zijn opgenomen, worden de geïndexeerde gegevens opgeslagen in Amazon S3. U hebt de mogelijkheid om het bewaren te beheren en gegevens te verwijderen met behulp van de API's.

Wanneer u het eerste verzamelingseindpunt in een account aanmaakt, levert OpenSearch Serverless 4 OCU's (2 opnames die primair en stand-by zijn, en 2 zoekopdrachten die twee exemplaren bevatten voor hoge beschikbaarheid). Deze OCU's worden geïnstantieerd, ook al is er geen activiteit op het serverloze eindpunt om wachttijden bij een koude start te voorkomen. Alle volgende collecties in dat account die dezelfde KMS-sleutel gebruiken, delen die OCU's. Tijdens automatisch schalen voegt OpenSearch Serverless meer OCU's toe ter ondersteuning van de rekenkracht die nodig is voor uw collecties. Deze OCU's kopiëren de geïndexeerde gegevens van Amazon S3 voordat ze kunnen reageren op de indexerings- of queryverzoeken. Evenzo bewaakt het OpenSearch Serverless-besturingsvlak continu het bronnenverbruik van de OCU's. Wanneer het aantal indexerings- of zoekverzoeken afneemt en het OCU-verbruik onder een bepaalde drempel zakt, zal OpenSearch Serverless het aantal OCU's terugbrengen tot de minimale capaciteit die nodig is voor uw werklast. De minimale OCU's voorkomen koude startvertragingen.

OpenSearch Serverless biedt ook een ingebouwde caching-laag voor time series-workloads om een ​​betere prijs-prestatieverhouding te bieden. OpenSearch Serverless slaat de meest recente loggegevens op, meestal de eerste 24 uur, op een kortstondige schijf. Voor gegevens die ouder zijn dan 24 uur, cachet OpenSearch Serverless alleen metadata en haalt de benodigde datablokken op van Amazon S3 op basis van toegang tot query's. Dit model helpt ook om meer gegevens in te pakken en tegelijkertijd de kosten te beheersen. Voor zoekverzamelingen slaat het query-rekenknooppunt het volledige gegevenscorpus lokaal op in de cache op kortstondige schijven om snelle queryantwoorden van milliseconden te bieden.

Integraties van ecosystemen

De meeste tools die met OpenSearch werken, werken ook met OpenSearch Serverless. U hoeft bestaande pijplijnen en toepassingen niet te herschrijven. OpenSearch Serverless heeft hetzelfde logische datamodel en query-engine van OpenSearch, dus u kunt dezelfde ingest- en query-API's gebruiken waarmee u vertrouwd bent, en serverloze OpenSearch-dashboards gebruiken voor interactieve data-analyse en visualisatie. Vanwege de compatibele interface ondersteunt OpenSearch Serverless ook het bestaande rijke OpenSearch-ecosysteem van clients op hoog niveau en pijplijnen voor streamingopname—Amazon Kinesis-gegevens Firehose, FluentD, FluentBit, Logstash, Apache Kafka en Amazon Managed Streaming voor Apache Kafka (Amazone MSK). Voor meer informatie, zie Gegevens opnemen in Amazon OpenSearch Serverless-collecties. U kunt het proces van het maken van collecties ook automatiseren met behulp van AWS CloudFormatie en AWS CDK. Met Amazon Cloud Watch integratie kunt u belangrijke OpenSearch Serverless-statistieken bewaken en alarmen instellen om u op de hoogte te stellen van eventuele drempeloverschrijdingen.

Kiezen tussen beheerde clusters en OpenSearch Serverless

Zowel beheerde clusters als OpenSearch Serverless zijn implementatieopties onder OpenSearch Service en worden mogelijk gemaakt door het open-source OpenSearch-project. OpenSearch Serverless maakt het gemakkelijker om cyclische, intermitterende of onvoorspelbare workloads uit te voeren zonder na te hoeven denken over de grootte, monitoring en afstemming van OpenSearch-clusters. U kunt er echter de voorkeur aan geven beheerde clusters te gebruiken in scenario's waarin u strakke controle over clusterconfiguratie of specifieke aanpassingen nodig hebt. Met beheerde clusters kunt u uw voorkeursexemplaren en -versies kiezen en meer controle hebben over de configuratie, zoals kortere verversingsintervallen of strategieën voor data-sharding, die van cruciaal belang kunnen zijn voor use-cases die buiten de typische patronen vallen die worden ondersteund door OpenSearch Serverless. Ook ondersteunt OpenSearch Serverless momenteel niet alle geavanceerde OpenSearch-functies en plug-ins, zoals waarschuwingen, anomaliedetectie en k-NN. U kunt de beheerde clusters voor deze functies gebruiken totdat OpenSearch Serverless er ondersteuning voor toevoegt.

Updates sinds de preview

Met de release voor algemene beschikbaarheid zal OpenSearch Serverless nu uit- en inschalen naar de minimale resources die nodig zijn om uw workloads te ondersteunen. De maximale OCU-limiet per account is verhoogd van 20 naar 50 voor zowel indexering als query. Bovendien kunt u nu de OpenSearch-clients op hoog niveau gebruiken om uw gegevens op te nemen en te doorzoeken, en ook gegevens migreren van uw OpenSearch-clusters met behulp van Logstash. We hebben ook ondersteuning toegevoegd voor nog drie regio's. OpenSearch Serverless is nu beschikbaar in acht regio's wereldwijd: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokio), Europa ( Frankfurt) en Europa (Ierland).

Samengevat

De serverloze reis is net begonnen. De meeste van de initiële inspanningen werden besteed aan het definiëren en bouwen van de juiste servicearchitectuur die de groeiende prestatie- en schaalvereisten efficiënt kan ondersteunen. OpenSearch Serverless scheidt opslag- en rekencomponenten, en indexering en querycomputing, zodat ze onafhankelijk kunnen worden beheerd en geschaald. OpenSearch Serverless gebruikt Amazon S3 als primaire gegevensopslag voor indexen, dus u hoeft zich geen zorgen te maken over duurzaamheid. We hebben uw configuratiekeuzes losgekoppeld van de juiste levering van resources, zodat configuratiefouten geen uitval veroorzaken. OpenSearch Serverless past in de toekomst ook beveiligings- en software-updates toe zonder uw werklast te verstoren. Deze flexibele, op microservices gebaseerde architectuur stelt ons in staat om regelmatig nieuwe functies uit te brengen, de lat voor schaal en prestaties hoger te leggen en de kosten verder te verlagen, bijvoorbeeld door de rekenknooppunten volledig uit te schakelen wanneer er geen activiteit is.

We moedigen u aan om OpenSearch Serverless uit te proberen en uw feedback te geven in het commentaargedeelte met uw use cases en vragen. We hebben een aantal bronnen om u op weg te helpen:


Over de auteur

Pavani Baddepudi is een senior productmanager werkzaam in zoekdiensten bij AWS. Haar interesses omvatten gedistribueerde systemen, netwerken en beveiliging.

spot_img

Laatste intelligentie

spot_img