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などからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
「JAWS-UG 名古屋 2022年 “re:Invent”の復習~忘年会~」に参加しました
re:Inventのおみやげも飲み物、ピザ、お寿司もたくさん。 コラボベースさん …
-
-
EC2 Instance Connect向けのセキュリティグループのソースにプレフィックスリストを
EC2 Instance Connect、便利ですね。 キーペア不要で、EC2イ …
-
-
Cloud9でCodeWhispererを使用する
アクセス権限 Cloud9のEC2に設定するIAMロールのIAMポリシーで co …
-
-
「Getting started with AWS Glue DataBrew」をやってみました
AWS Glue DataBrewを体験してみたくて、開発者ガイドのチュートリア …
-
-
CloudTrailのログファイルの整合性検証をAWS CLIで実行しました
CloudTrailのログファイルの検証を「有効」にしました。 上記のようなCl …
-
-
執筆環境(PyCharm, CodeCommit, CodePipeline, S3, Lambda, 署名付きURL)
2018年から、年に1回ぐらい商業本の執筆をさせていただいております。 2020 …
-
-
GoogleフォームからAPI Gatewayで作成したREST APIにPOSTリクエストする
「API GatewayからLambdaを介さずにSNSトピックへ送信」の続きで …
-
-
AWS LambdaをVPC設定したときに「The provided execution role does not have permissions to call CreateNetworkInterface on EC2」
The provided execution role does not hav …
-
-
EC2にSystems MangerからCloudWatchエージェントをインストール
CloudWatchエージェント EC2の標準メトリクスでは収集できないメモリの …
-
-
AWS Systems Manager セッションマネージャを使用するために必要な設定
AWS Systems Manager セッションマネージャを使用するために必要 …









