Mikä on AWS Kinesis?

Kinesis on alusta, joka auttaa virtaustietojen keräämisessä, käsittelyssä ja analysoinnissa Amazon Web Services -palvelussa. Suoratoistodata on suuri määrä tietoa, joka saadaan eri lähteistä, kuten sosiaalisesta mediasta, IoT-antureista, sääennusteesta, terveydenhuollosta jne. Niitä käytetään rakentamaan sovelluksia käyttäjän vaatimusten perusteella. Joitakin yleisimpiä sovelluksia ovat ennustava analytiikka Big Data -yrityksessä, koneoppimisessa jne. Tässä aiheesta aiomme oppia AWS Kinesis -sovelluksesta.

AWS Kinesis Services

Ennen palveluihin siirtymistä ymmärretään ensin joitain Kinesisissä käytettyjä termejä.

Terminologia

TermiMääritelmä
TietueKinesis-tietovirtaan tallennettu tietoyksikkö. Se koostuu datablobista, järjestysnumerosta ja osioavaimesta
SirpaleJoukko tietotietueiden sekvenssiä. Lastujen lukumäärää voidaan lisätä tai vähentää, jos datanopeutta lisätään.
SäilytysaikaAikajakso, jonka aikana tietoja voidaan käyttää sen jälkeen, kun ne on lisätty virtaan.

Oletuspidätysjakso: 24 tuntia

TuottajaSe syöttää tietueita Kinesis Streamiin
kuluttajaSe saa tietueita Kinesis Streamista ja käsittelee ne.

Kinesis tarjoaa 3 ydinpalvelua. He ovat:

1. Kinesis-virrat

Kinesis Stream koostuu sarjasta datatietueiden sekvenssejä, jotka tunnetaan nimellä Shards. Näillä Shards-laitteilla on kiinteä kapasiteetti, joka pystyy tarjoamaan korkeimman lukunopeuden 2 Mt / s ja kirjoitusnopeuden 1 Mt / s. Virran maksimikapasiteetti on kunkin varjostimen kapasiteetin summa.

Kinesiksen toiminta:

  • IoT: n ja muiden tuottajaksi kutsuttujen lähteiden tuottama tieto syötetään Kinesis-virroihin varastointia varten Shardsissa.
  • Tiedot ovat saatavilla Shardissa enintään 24 tunnin ajan.
  • Jos se on tallennettava pidempään kuin tämä oletusaika, käyttäjä voi pidentää seitsemän päivän säilytysjaksoon.
  • Kun tiedot saavuttavat Shardsin, EC2-ilmentymät voivat ottaa nämä tiedot eri tarkoituksiin.
  • EC2-tapauksia, jotka noutavat tietoja, kutsutaan kuluttajiksi.
  • Tietojen käsittelyn jälkeen se syötetään johonkin Amazon-verkkopalveluista, kuten yksinkertainen tallennuspalvelu (S3), DynamoDB, Redshift jne.

2. Kinesis Firehose

Kinesis Firehose on hyödyllinen siirrettäessä tietoja Amazonin verkkopalveluihin, kuten Redshift, Yksinkertainen tallennuspalvelu, Elastinen haku jne. Se on osa streaming-alustaa, joka ei hallitse resursseja. Tiedontuottajat on konfiguroitu siten, että tiedot on lähetettävä Kinesis Firehose -laitteelle ja se lähettää sen sitten automaattisesti vastaavaan määränpäähän.

Kinesis Firehose -laitteen toiminta:

  • Kuten AWS Kinesis Streams -työryhmän työssä mainittiin, Kinesis Firehose saa myös tietoja tuottajilta, kuten matkapuhelimilta, kannettavilta tietokoneilta, EC2: ltä jne., Mutta tämän ei tarvitse tehdä tietoja sirpaleisiin tai pidentää säilytysjaksoja, kuten Kinesis Streams. Se johtuu siitä, että Kinesis Firehose tekee sen automaattisesti.
  • Tiedot analysoidaan sitten automaattisesti ja syötetään Simple Storage Service -palveluun
  • Koska säilytysjaksoa ei ole, tiedot on joko analysoitava tai lähetettävä mihin tahansa varastoon riippuen käyttäjän vaatimuksista.
  • Jos tiedot on lähetettävä Redshiftille, ne on ensin siirrettävä Simple Storage Service -palveluun ja kopioitava sieltä Redshift-tietokantaan.
  • Mutta joustavan haun tapauksessa tietoja voidaan syöttää suoraan siihen samankaltaisena kuin Simple Storage Service.

3. Kinesis Analytics

Kinesis Firehose sallii SQL-kyselyjen suorittamisen Kinesis Firehose -sovelluksessa olevissa tiedoissa. Tätä SQL-kyselyä käyttämällä tiedot voidaan tallentaa Redshift-, Simple Storage Service-, ElasticSearch-, jne.

AWS Kinesis -arkkitehtuuri

AWS Kinesis -arkkitehtuuri koostuu

  • tuottajat
  • sirpaleiksi
  • kuluttajat
  • varastointi

Samoin kuin AWS Kinesis Data Stream -sivustossa selitettiin, tuottajien tiedot syötetään Shardsiin, missä tietoja käsitellään ja analysoidaan. Analysoitu tieto siirretään sitten EC2-ilmentymiin tiettyjen sovellusten suorittamiseksi. Viimeinkin tiedot tallennetaan mihin tahansa Amazonin verkkopalveluihin, kuten S3, Redshift jne.

Kuinka käyttää AWS-kinesistä?

Jotta voit työskennellä AWS Kinesisin kanssa, on suoritettava seuraavat kaksi vaihetta.

1. Asenna AWS-komentoriviliitäntä (CLI).

Komentoriviliittymän asentaminen on erilainen eri käyttöjärjestelmille. Joten asenna CLI käyttöjärjestelmäsi perusteella.

Linux-käyttäjille käytä komentoa sudo pip install AWS CLI

Varmista, että sinulla on python-versio 2.6.5 tai uudempi. Määritä lataamisen jälkeen AWS-asetuskomennolla. Sitten kysytään seuraavia tietoja alla esitetyllä tavalla.

AWS Access Key ID (None): #########################
AWS Secret Access Key (None): #########################
Default region name (None): ##################
Default output format (None): ###########

Windows-käyttäjille Lataa sopiva MSI Installer ja suorita se.

2. Suorita Kinesis-toiminnot CLI: n avulla

Huomaa, että Kinesis-tietovirrat eivät ole käytettävissä AWS: n vapaa-tasolle. Joten luodut Kinesis-virrat veloitetaan.

Katsotaanpa nyt joitain kinesisoperaatioita CLI: ssä.

  • Luo stream

Luo stream KStream Shard count 2: lla seuraavan komennon avulla.

aws kinesis create-stream --stream-name KStream --shard-count 2

Tarkista, onko stream luonut.

aws kinesis describe-stream --stream-name KStream

Jos se luodaan, seuraavan esimerkin kaltainen lähtö on ilmestynyt.

(
"StreamDescription": (
"StreamStatus": "ACTIVE",
"StreamName": " KStream ",
"StreamARN": ####################,
"Shards": (
(
"ShardId": #################,
"HashKeyRange": (
"EndingHashKey": ###################,
"StartingHashKey": "0"
),
"SequenceNumberRange": (
"StartingSequenceNumber": "###################"
)
)
) )
)

  • Laita levy

Nyt tietotietue voidaan lisätä put-record -komennolla. Tässä virtaan lisätään datatestiä sisältävä tietue.

aws kinesis put-record --stream-name KStream --partition-key 456 --data test

Jos lisäys onnistuu, lähtö näkyy alla olevan kuvan mukaisesti.

(
"ShardId": "#############",
"SequenceNumber": "##################"
)

  • Hanki ennätys

Ensin käyttäjän on saatava shard-iteraattori, joka edustaa virran sijaintia shardille.

aws kinesis get-shard-iterator --shard-id shardId-########## --shard-iterator-type TRIM_HORIZON --stream-name KStream

Suorita sitten komento käyttämällä saatua shard-iteraattoria.

aws kinesis get-records --shard-iterator ###########

Näytetuotos saadaan alla olevan kuvan mukaisesti.

(
"Records":( (
"Data":"######",
"PartitionKey":"456”,
"ApproximateArrivalTimestamp": 1.441215410867E9,
"SequenceNumber":"##########"
) ),
"MillisBehindLatest":24000,
"NextShardIterator":"#######"
)

  • Siivota

Maksujen välttämiseksi luotu stream voidaan poistaa käyttämällä alla olevaa komentoa.

aws kinesis delete-stream --stream-name KStream

johtopäätös

AWS Kinesis on alusta, joka kerää, käsittelee ja analysoi suoratoistotietoja useille sovelluksille, kuten koneoppiminen, ennustava analytiikka ja niin edelleen. Suoratoistotiedot voivat olla missä tahansa muodossa, kuten ääni-, video-, anturitiedot jne.

Suositellut artikkelit

Tämä on opas AWS Kinesikselle. Tässä keskustellaan siitä, miten AWS Kinesis -sovellusta ja sen palvelua voidaan käyttää työskentelyn ja arkkitehtuurin kanssa. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. AWS-arkkitehtuuri
  2. Mikä on AWS Lambda?
  3. Big Data Technologies
  4. Tietojen louhinnan arkkitehtuuri
  5. AWS-tallennuspalvelut
  6. Opas AWS: n kilpailijoille ominaisuuksilla

Luokka: