/***************************************** { Fintan } 先進技術・ノウハウを駆使して、新しい社会の活力を創造し、人々の笑顔を増やしていく。 *****************************************/
/***************************************** { Fintan } 先進技術・ノウハウを駆使して、新しい社会の活力を創造し、人々の笑顔を増やしていく。 *****************************************/
データアナリティクス事業本部インテグレーション部機械学習チーム・新納(にいの)です。 Amazon Athenaで利用可能なテーブルフォーマットのひとつであるIcebergでは、ACIDトランザクションやタイムトラベル機能をサポートしたりスキーマ変更に追従できたりと、さまざまな便利な機能が提供されています。UPDATE/DELETE/MERGEといったデータ編集もSQLを経由して行えますので、AthenaとStep Functionsを組み合わせたETLフローも作りやすくなりました。 こうした便利な機能を利用するため、既存のHive形式のテーブルをIcebergに移行したいケースも出てくるかもしれません。 今回はそんなケースを想定していくつか移行方法をご紹介します。 気をつけるポイント Athenaでは、CREATE TABLE AS SELECT(CTAS)を使ってテーブルを作成する際に
Amazon Web Services ブログ AWS Step Functions の Distributed Map と再実行機能を使用した効率的な ETL パイプラインの構築 AWS Step Functions は、完全マネージドのビジュアルワークフローサービスで、AWS Glue、Amazon EMR、Amazon Redshift などのさまざまな抽出・変換・読み込み (Extract, Transform, Load; ETL) テクノロジーを含む複雑なデータ処理パイプラインを構築できます。個々のデータパイプラインタスクを繋ぎ、ペイロード、リトライ、エラー処理を最小限のコードで構成することで、ワークフローを視覚的に構築できます。 Step Functions は、データパイプライン内のタスクが一時的なエラーで失敗した場合、自動リトライとエラー処理をサポートしていますが、アクセ
Amazon Web Services ブログ AWS Glue クローラーとテーブル作成におけるApache Iceberg フォーマットサポートの紹介 Apache Iceberg は、Amazon Simple Storage Service( Amazon S3 )における大規模データセット用のオープンなテーブルフォーマットであり、大規模テーブルに対する高速なクエリパフォーマンス、アトミックコミット、同時書き込み、SQL 互換のテーブル進化を提供します。Iceberg はデータレイクにおける ACID トランザクションをサポートし、スキーマやパーティションのエボリューション、タイムトラベル、ロールバックなどの機能で非常に人気があります。Iceberg はデータセットの状態に関するメタデータ情報を取得し、データセットの進化や時間経過に伴う変化を記録します。 AWS Glue クローラ
GlueがサポートしたIcebergテーブルに対するautomatic compactionの機能がどのように使えるか確認したのでご紹介します。 データアナリティクス事業本部 機械学習チームの鈴木です。 先日、Glueデータカタログ上からIceberg形式のGlueテーブルに対して自動でファイルのコンパクションを実行する機能のリリースがアナウンスされていたので試してみました。 例えば機械学習の文脈でも、データレイク上のIcebergテーブルから特徴量を取得し利用することがあります。『Amazon SageMaker Feature Store が Apache Iceberg テーブルフォーマットをサポートするように』のようなユースケースです。このアナウンスでも紹介されているように、小さなデータファイルをまとめて大きなファイルに置き換える仕組みを自動化する機能がGlueデータカタログでリリ
既存と異なる型のカラムを追加した場合(クエリ失敗) 続いて、既存の airTemperature や waterTemperature と異なる型のカラム isRainy を追加します。ここでも敢えて既存のカラムの位置が変わるように追加します。 columns: [ { name: 'id', type: glue_alpha.Schema.STRING, }, { name: 'waterTemperature', type: glue_alpha.Schema.DOUBLE, }, + { + name: 'isRainy', + type: glue_alpha.Schema.BOOLEAN, + }, { name: 'airTemperature', type: glue_alpha.Schema.DOUBLE, }, ], 動作確認 さて、先ほどと同様に INSERT INTO
Amazon AuroraのS3エクスポート機能 AuroraのS3エクスポート機能は、DBクラスターの現在のデータやスナップショットのデータをS3にApache Parquet形式で出力する機能です。 Apache Parquet形式は、スキーマ情報を内包している・列志向で分析用途にも適している・高効率な圧縮が可能・複雑なデータ構造にも対応しているといった特徴を備えたデータ形式です。AthenaやRedshift、あるいはBigQueryへの取り込みに利用することができ、これらを使ったDB内のデータ分析が可能になります。 高効率さについての実験として、試しに手元の64GBのクラスタースナップショットをS3エクスポートしてみたところ、出力されたParquetファイルの合計サイズは約4GBと、なんと1/16にも圧縮されました。特に毎日何TBもの大容量データをリージョン外に転送するようなケース
AWS Glue クローラーが Apache Hudi テーブルをサポートするようになりました。これにより、お客様は Amazon Athena などの AWS 分析サービスから Apache Hudi テーブル内のデータを直接クエリできるようになります。Apache Hudi は、データベースとデータウェアハウスの機能をデータレイクで利用できるようにするオープンソースのテーブル形式です。Apache Hudi は、データエンジニアがクエリのパフォーマンスを維持しながら、絶えず変化するデータセットを管理するのに役立ちます。 以前、Amazon Athena ユーザーは、Apache Hudi テーブルからデータをクエリするために、Glue データカタログ内にテーブルを手動で作成し、パーティションの変更を更新して、クエリ結果が最新のものになるようにする必要がありました。本日のリリースにより、
要するに、id と timestamp は同じスキーマ名および値を使用、temperature は internal_temperature にスキーマ名を変換、また external_temperature スキーマを新しく設け既定値は 0 にするという洗い替えを行いたいです。 そこで今回は、大量のデータをサーバーレスな環境のみでクエリして分析することができる Amazon Athena を利用して、スキーマの変換を伴う洗い替えを行う方法を確認してみました。 環境作成 環境作成は AWS CDK (TypeScript)で行います。移行元および移行先となる S3 Bucket と Glue Table のリソースを作成しています。 lib/cdk-sample-app.ts import { aws_s3, RemovalPolicy, Stack, StackProps } from
こんにちは、エンタープライズクラウド課の加藤ゆです。 AthenaとGlueの料金ページを解読するのがつらかったので、まとめてみました。 なお当記事に記載する情報は、2023年3月1日現在のものです。 最新料金体系は記載の公式ドキュメントをご確認ください。 Athenaの料金体系 課金対象 ①スキャンされたデータ 1 TB あたりの課金 ②DPU (Data Processing Unit) 時間ごとの課金 Glueの料金体系 課金対象 ①ETLジョブの課金 オプション機能の料金 ②Glueデータカタログの課金 ③Glueクローラの課金 おわり 公式ドキュメントの料金体系を少し読みやすくまとめたものなので、内容はドキュメントと変わりはありません。 また、本記事記載の料金はすべて「アジアパシフィック(東京)」で試算しています。 Athenaの料金体系 aws.amazon.com 基本的にそ
Amazon Web Services ブログ AWSローコード-ノーコードサービスによる投資プロセスの高速化 このブログ記事は Accelerate the investment process with AWS Low Code-No Code services を翻訳したものです。 ここ数年、機関投資家を顧客とする資産運用会社では、様々なデータソースから入手したデータをもとに運用するプロセスにおいて大きなパラダイムシフトが起きています。リスク相関の頻繁な変化、予期せぬボラティリティの増大、パッシブ戦略との競争の増加などに伴い、資産運用会社は競争力を高め最終的な損益向上のために、より幅広いサードパーティのデータソースを利用しています。しかし、複数のデータソースから利益を引き出すプロセスは大きな困難を伴います。資産運用会社のデータエンジニアリングチームはデータの取得と前処理に追われ、デー
[失敗談]Partition Projectionの設定不足で1クエリ毎にS3 ListBucketが692,040回呼ばれていた話 こんにちは、洲崎です。Partition Projectionを手探りでやっていたら、S3がとんでもないことになってしまったので紹介します。。 いきなりまとめ Partition Projectionを正しく設定できていなかった 一部設定出来ていたが故に、'projection.year.range'で設定していた2021年〜2100年までのパーティション(計692,040パーティション)を都度S3から呼び出してしまった パーティションを改善したらAthenaで30分かかってタイムアウトしてたのが、2秒程でクエリが完了するようになった クエリをすると異様に時間がかかる。。 Amazon ConnectのCTRデータをAmazon S3に貯めて、QuickSi
AWS Big Data Blog Best practices to scale Apache Spark jobs and partition data with AWS Glue July 2022: This post was reviewed for accuracy. February 9, 2024: Amazon Kinesis Data Firehose has been renamed to Amazon Data Firehose. Read the AWS What’s New post to learn more. AWS Glue provides a serverless environment to prepare (extract and transform) and load large amounts of datasets from a variet
2022.01.11 GCPの次はAWS Lake FormationとGoverned tableを試してみた(Glue Studio&Athenaも) こんにちは。次世代システム研究室のデータベース と Hadoop を担当している M.K. です。 前回のブログではGoogleのGCPのDataproc on GKE(β版)を使って、クラウドネイティブなHadoopクラスタを検証しました。コンピュートノードをストレージノードと分離して、処理したいときだけコンピュートノードを使うような形です。ある程度はやりたいことができましたが、Dataprocメタストアと連携できるようにしたり(β版だからかうまくいかず・・)、GKEクラスタの設計・管理をしないといけなかったりと、統合的にはできませんでした。 もっと簡単にできないものかと探してみると、なんと、AmazonのAWSにLake Forma
はじめにこんにちは。TIGの藤田です。 Python連載 の8日目として、PySparkを使用したGlueジョブ開発のお話をします。 ETLツールとして使用されるAWS Glueですが、業務バッチで行うような複雑な処理も実行できます。また、処理はGlueジョブとして、Apache Spark分散・並列処理のジョブフローに簡単に乗せることができます! 特に複雑な処理は、やや割高な開発エンドポイントは使用せず、ローカル端末で、しっかり開発・テストを行いたいですよね。そのためのローカル開発Tipsをご紹介します。 内容 Glueジョブの開発と実行概要 Tip1: ローカル環境構築 Tip2: PySpark, SparkSQL開発 Tip3: 単体テスト(pytest) Tip4: データカタログどうする問題 Glueジョブの開発と実行概要ローカル開発の前に、AWS Glueでのジョブ実行方法を
Amazon Web Services ブログ [AWS Black Belt Online Seminar] 猫でもわかる、AWS Glue ETLパフォーマンス・チューニング 資料公開 「猫でもわかる、AWS Glue ETLパフォーマンス・チューニング」 の AWS Black Belt Online Seminar についてご案内させて頂きます。 今回は「前編(基礎知識編)」 と「後編(チューニングパターン編)」 の二本立てとなっております。 視聴方法: 下記ページにて資料を公開いたしましたので、オンデマンドでご視聴いただけます。 202108 AWS Black Belt Online Seminar 猫でもわかる、AWS Glue ETLパフォーマンス・チューニング 前編 202108 AWS Black Belt Online Seminar 猫でもわかる、AWS Glue
Amazon Web Services ブログ 【資料&動画公開】AWS で実践!Analytics Modernization ~ETL 編~ 2021年7月14日に、「AWS で実践!Analytics Modernization ~ETL 編~」というオンラインセミナーを開催しました。昨今、データレイクをクラウド上に作ることが一般的になりつつありますが、データレイクに溜まったデータを活用する際に重要になるのが前処理(ETL)であり、その前処理をどのようにAWS上で実現し、モダン化するかという点を解説しました。 今回このセミナーの動画と資料を公開しましたのでご紹介します。全部で3つのセッションがありますが、各セッションの中も内容単位で区切った動画にしていますので、必要なところだけ見ていただけるようになっています。 セッション1: AWSのETLソリューション紹介(アマゾン ウェブ サー
どーもsutoです。 Glue DataBrewは、分析や機械学習のデータのETL処理などを行う際にコードを1つも書かずにデータクレンジングができるサーバーレスサービスです。 今回はこのDataBrewの機能を使ってデータセットからメールアドレスやクレジットカード情報のような機密情報を削除する処理をやってみようと思います。 検証する変換内容は以下です。 記号@の前にdummy_addressとしてメールIDをモックし、ドメイン名を保持します。 携帯電話番号の下8桁を1234-5678でモックします。 CARD番号の最後の4桁のみを保持し、残りの番号を削除します。 電子メールと電話番号の列の名前をmock_emailとmock_phoneに変更します。 プロジェクトの作成 サンプルデータについて 今回は疑似個人情報データ生成サービスから以下のような擬似的なデータセット(xlsxファイル)を生
Amazon Web Services ブログ 新機能 – AWS Glue を使用したサーバーレスストリーミング ETL アプリケーションが本番環境にあるとき、何が起こっているか、どのようにアプリケーションが使われているかを把握する必要があります。データ分析の最初のアプローチはバッチ 処理モデルで、一連のデータを一定期間収集し、分析ツールで実行します。迅速に対応したい場合には、ストリーミングモデルを使用します。このモデルでは、データの到着時にデータ処理し、一度に 1 レコードずつ、または数十、数百、数千のレコードのマイクロバッチで処理します。 継続的な取り込みパイプラインの管理や即時的なデータ処理は、管理、パッチ適用、スケーリング、一般的な対応を必要とする常時オンのシステムであるため、大変複雑です。現在、拡張 (AWS Glue ジョブを Apache Spark に基づいて ) に
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く