Kinesis Data AnalyticsをKinesis Data Streamsに接続してSQL検索する
2021/08/11
Amazon Kinesis Data StreamsにTwitter検索データを送信するで収集しているツイートをKinesis Data AnalyticsでSQL検索してみます。
目次
Kinesis Data Analyticsアプリケーションの作成
アプリケーションの名前を決めて検索方法をSQLにしました。
Kinesis Data Streamsに接続
[ストリーミングデータを接続]を押下しました。
作成済のKinesis Data Streamを選択しました。
スキーマを検出を実行しました。
検出できました。
SQLを実行
[Go to SQL editor]ボタンを押下しました。
アプリケーション開始のメッセージが表示されるので、[Yes, start application]を押下しました。
テンプレートにサンプルコードがあったのでこれを少し変えました。
|
1 2 3 4 5 6 7 8 9 10 11 12 |
-- Create output stream, which can be used to send to a destination CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" ("text" VARCHAR(256),"source" VARCHAR(256), "user_screen_name" VARCHAR(256),"user_name" VARCHAR(256), "user_followers_count" INTEGER); -- Create pump to insert into output CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM" -- Select all columns from source stream SELECT STREAM "text", "source", "user_screen_name", "user_name", "user_followers_count" FROM "SOURCE_SQL_STREAM_001" -- LIKE compares a string to a string pattern (_ matches all char, % matches substring) -- SIMILAR TO compares string to a regex, may use ESCAPE WHERE "text" SIMILAR TO '%合格%'; |
そして、再度Twitterからデータを取得してKinesis Data Streamに流してみました。
合格の嬉しい声がたくさん検索されてDESTINATION_SQL_STREAMにINSERTされました。
Twitterの高度検索が思い通りにいかないなあという場合は、Twitterをシンプルに検索した結果をKinesisに流して、Analyticsで検索するのもありですね。
次回はこの結果をKinesis Data FirehoseからS3バケットに保存します。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
Route 53で不要なドメインを削除
勢いで作ったけど結局使うのをやめたドメインがあります。 要らないので削除しました …
-
-
Cloud9でCodeWhispererを使用する
アクセス権限 Cloud9のEC2に設定するIAMロールのIAMポリシーで co …
-
-
CloudFormation Lambda-backedカスタムリソースチュートリアルをやりました
チュートリアル: Amazon マシンイメージ ID を参照するの手順に従ってや …
-
-
AWS Service CatalogポートフォリオをOrganizations組織で共有する
AWS Service Catalogチュートリアルで作成したポートフォリオのO …
-
-
Former2で既存リソースのCloudFormationテンプレート出力を試してみた
JAWS DAYS 2020の資料確認のお手伝いを少ししてまして、「ゼロからはじ …
-
-
AWS Protonの管理者ガイドとユーザーガイドのチュートリアル
AWS Proton管理者ガイドのAWS Management Console …
-
-
kintoneに登録されたアカウントの電話番号にGoogleカレンダーの予定をAmazon Pollyが読み上げてTwilioから電話でお知らせする(AWS Lambda Python)
Google Calendar Twilio Reminder Googleカレ …
-
-
AWS Lambdaで「Process exited before completing request」
AWS lambdaで「Process exited before comple …
-
-
Amazon Location Service入門ワークショップの前提環境準備
Amazon Location Service入門ワークショップの前提環境を構築 …
-
-
ブラウザからJavaScript SDKを使ってAmazon S3 への写真のアップロードチュートリアルをやってみました
ブラウザから Amazon S3 への写真のアップロードをやってみました。 HT …









