Čo je to AWS Kinesis?

Kinesis je platforma, ktorá pomáha pri zhromažďovaní, spracovaní a analýze streamovaných údajov v Amazon Web Services. Streamovanie údajov je veľké množstvo údajov, ktoré vznikajú z rôznych zdrojov, ako sú sociálne médiá, IoT senzory, predpoveď počasia, zdravotníctvo atď. Tieto údaje sa používajú pri vytváraní aplikácií na základe požiadaviek používateľa. Medzi bežné aplikácie patrí prediktívna analytika v oblasti veľkých dát, strojové učenie atď. V tejto téme sa dozvieme viac o AWS Kinesis.

Služby AWS Kinesis

Predtým, ako sa presunieme k službám, najprv pochopme niektoré terminológie používané v kineščine.

terminológie

termíndefinícia
Záznam údajovÚdajová jednotka uložená v dátovom toku Kinesis. Skladá sa z blokov údajov, poradového čísla a kľúča oddielu
črepSada postupnosti dátových záznamov. Ak sa zvýši rýchlosť prenosu údajov, môže sa zvýšiť alebo znížiť počet zlomkov.
Doba skladovaniaČasové obdobie, v ktorom je možné získať prístup k údajom po ich pridaní do toku.

Predvolená doba uchovávania: 24 hodín

producentZaznamenáva dátové záznamy do Kinesis Stream
SpotrebiteľZískava záznamy z Kinesis Stream a spracováva ich.

Kinesis poskytuje 3 základné služby. Oni sú:

1. Kinesis Streams

Kinesis Stream pozostáva zo súboru sekvencií dátových záznamov známych ako Shards. Tieto črepy majú pevnú kapacitu, ktorá môže poskytnúť maximálnu rýchlosť čítania 2 MB / s a ​​rýchlosť zápisu 1 MB / s. Maximálna kapacita toku je súčet kapacity každého črepu.

Práca v Kinesis:

  • Údaje produkované IoT a ďalšie zdroje, ktoré sú známe ako Producenti, sa privádzajú do tokov Kinesis na uchovávanie v Shards.
  • Tieto údaje budú v službe Shard k dispozícii maximálne 24 hodín.
  • Ak je potrebné ho uložiť dlhšie ako tento predvolený čas, môže používateľ zvýšiť dobu uchovávania na 7 dní.
  • Akonáhle sa údaje dostanú k úlomkom, inštancie EC2 môžu tieto údaje zobrať na rôzne účely.
  • Prípady EC2, ktoré získavajú údaje, sú známe ako zákazníci.
  • Po spracovaní údajov sa privádza do jednej z Amazon Web Services, ako sú Simple Storage Service (S3), DynamoDB, Redshift atď.

2. Kinesis Firehose

Kinesis Firehose je užitočný pri presúvaní údajov do webových služieb Amazonu, ako sú Redshift, Simple storage service, Elastic Search, atď. Je súčasťou streamovacej platformy, ktorá nespravuje žiadne zdroje. Výrobcovia údajov sú nakonfigurovaní tak, že údaje sa musia odosielať do Kinesis Firehose a potom ich automaticky odosiela do príslušného cieľa.

Práca Kinesis Firehose:

  • Ako je uvedené v práci AWS Kinesis Streams, Kinesis Firehose tiež získava údaje od výrobcov, ako sú mobilné telefóny, notebooky, EC2 atď. Nemusí to však brať dáta do střepov alebo predlžovať doby uchovávania, ako sú Kinesis Streams. Je to preto, že Kinesis Firehose to robí automaticky.
  • Dáta sa potom analyzujú automaticky a dodávajú sa do služby Simple Storage Service
  • Pretože neexistuje žiadna doba uchovávania, údaje sa musia buď analyzovať, alebo odoslať do akéhokoľvek úložiska, závisí od požiadavky používateľa.
  • Ak sa údaje musia posielať do služby Redshift, musia sa najprv presunúť do služby Simple Storage Service a odtiaľ ich treba skopírovať do služby Redshift.
  • V prípade pružného vyhľadávania je však možné do údajov priamo vložiť údaje podobné službe Simple Storage Service.

3. Analýza Kinesis

Kinesis Firehose umožňuje spúšťať dotazy SQL v údajoch, ktoré sa nachádzajú v Kinesis Firehose. Pomocou týchto dotazov SQL je možné údaje ukladať v službách Redshift, Simple Storage Service, ElasticSearch atď.

AWS Kinesis Architecture

AWS Kinesis Architecture pozostáva z

  • výrobcovia
  • črepy
  • spotrebitelia
  • skladovanie

Podobne ako práca vysvetlená v AWS Kinesis Data Stream, údaje od výrobcov sa vkladajú do Shards, kde sa údaje spracúvajú a analyzujú. Analyzované údaje sa potom presunú do inštancií EC2 na vykonávanie určitých aplikácií. Nakoniec budú údaje uložené v ktorejkoľvek z webových služieb Amazonu, ako sú S3, Redshift atď.

Ako používať AWS kinesis?

Aby ste mohli pracovať s AWS Kinesis, musíte urobiť nasledujúce dva kroky.

1. Nainštalujte rozhranie príkazového riadku AWS (CLI).

Inštalácia rozhrania príkazového riadku je pre rôzne operačné systémy iná. Nainštalujte CLI na základe operačného systému.

Pre používateľov systému Linux použite príkaz sudo pip install AWS CLI

Uistite sa, že máte verziu python 2.6.5 alebo vyššiu. Po stiahnutí ho nakonfigurujte pomocou príkazu AWS configure. Potom sa opýtame na nasledujúce podrobnosti, ako je uvedené nižšie.

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

Pre používateľov Windows si stiahnite príslušný MSI Installer a spustite ho.

2. Vykonajte operácie Kinesis pomocou CLI

Upozorňujeme, že dátové toky Kinesis nie sú dostupné pre úroveň AWS zadarmo. Za vzniknuté toky Kinesis sa teda bude účtovať poplatok.

Teraz sa pozrime na niektoré operácie kinesis v CLI.

  • Vytvoriť stream

Pomocou nasledujúceho príkazu vytvorte tok KStream pomocou Shard count 2.

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

Skontrolujte, či sa stream vytvoril.

aws kinesis describe-stream --stream-name KStream

Ak sa vytvorí, zobrazí sa výstup podobný nasledujúcemu príkladu.

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

  • Dajte záznam

Teraz je možné vložiť dátový záznam pomocou príkazu put-record. Tu sa do toku vkladá záznam obsahujúci test údajov.

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

Ak je vloženie úspešné, výstup sa zobrazí, ako je uvedené nižšie.

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

  • Získajte záznam

Najprv musí užívateľ získať iterátor shard, ktorý predstavuje polohu toku pre shard.

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

Potom spustite príkaz pomocou získaného iterátora shard.

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

Výstup vzorky sa získa tak, ako je to znázornené nižšie.

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

  • Vyčistiť

Aby ste sa vyhli poplatkom, vytvorený tok môžete odstrániť pomocou príkazu nižšie.

aws kinesis delete-stream --stream-name KStream

záver

AWS Kinesis je platforma, ktorá zhromažďuje, spracováva a analyzuje streamované údaje pre niekoľko aplikácií, ako je strojové učenie, prediktívna analýza a tak ďalej. Streamované údaje môžu mať akýkoľvek formát, napríklad zvuk, video, údaje zo senzorov atď.

Odporúčané články

Toto je sprievodca AWS Kinesis. Tu diskutujeme o tom, ako používať AWS Kinesis a tiež jeho službu s prácou a architektúrou. Viac informácií nájdete aj v nasledujúcom článku -

  1. Architektúra AWS
  2. Čo je AWS Lambda?
  3. Veľké dátové technológie
  4. Architektúra dolovania dát
  5. AWS Storage Services
  6. Sprievodca konkurenciou AWS s funkciami

Kategórie: