Google Cloudのサーバレスなサービスでデータ基盤を作った話.
Google Cloudのサーバレスなサービスでデータ基盤を作った話.
事業会社においてBIやレポート用の分析を担当しているが以下のような状況に該当する人に向けたデータパイプライン構築の入門のための資料です 🧑🏻🦱「BigQuery等のView機能を活用しているが、データの流れを追うのが困難な状態になってしまっている、クエリの実行に時間がかかりBIツールが使いづらい」 👩🏻「専任のデータエンジニアがおらず、前処理をpython等で処理したりするのがリソース調整的に大変」 👱🏻♂️「ロードされたデータに重複があったり、過不足があったりしてデータの品質が担保できていない」 🧑🏻🦰「Digdagやluigiといったデータ変換ツールの独自の仕様を理解しきれておらず使いこなせていない」 ※現時点ではBigQueryを中心に記事を構成してあります、SnowflakeやAmazon Redshift等の様々な分析基盤でもdbtは対応可能です
はじめに早速ですが、皆さんはマイクロサービスを構築するとしたら、どのような構成を考えますか? 多くの企業で、GKE を使ったマイクロサービス アーキテクチャが採用されています。選定理由として、Kubernetes が持つ機能や大きめなリソースが必要であったり、社内インフラチームによる Kubernetes のサポートがあるといった理由などがあります。一方、定期アップグレードなどの観点から、Kubernetes の運用は少し大変…と感じる方もいるかと思います。 GKE Autopilot の利用という考えもありますが、サーバーレスでコンテナを動かせる Cloud Run を使って、インフラ管理不要でマイクロサービスを構築が出来ると嬉しくないですか? 実際、そういった構成を採用されている企業も見かけます。 この記事では、設計や実装時に考えるであろう、以下の 5 つのポイントにフォーカスしてみた
こんにちは、SRE部MA基盤チームの谷口(case-k)です。私達のチームでは、データ連携基盤の開発・運用をしています。 データ基盤には大きく分けて2種類あり、日次でデータ連携してるものとリアルタイムにデータ連携しているものがあります。本記事ではリアルタイムデータ連携基盤についてご紹介します。 既存のデータ連携基盤の紹介 リアルタイムデータ連携基盤の紹介 なぜ必要なのか 活用事例の紹介 データ連携の仕組みと課題 リプレイス後のリアルタイムデータ連携基盤 SQL Serverの差分データの取り方を検討 アーキテクチャ概要と処理の流れ Fluentdのプラグインを使った差分データの取得 Dataflowでメッセージの重複を排除 Dataflowで動的にBigQueryの各テーブルに出力 Pub/Subのメッセージ管理 イベントログ収集基盤 個人情報の取り扱い ビルド・デプロイ戦略 監視 データ
私個人の話なのですが. 最近は仕事でAWSやGCPのサーバレスアーキテクチャにふれる機会が増えた*1と同時に, 自分が気になる世の中のニュース(グルメとかいろいろ)だけをいい感じに集めてまとめて読みたい その中でも特に⚾, 速報とかいい感じに通知させたい という怠け者欲ライフハック欲が高まってきたので, GCP(とちょっとしたPythonスクリプト)でSlack Botを作りました. 趣味開発で雑にはじめた結果, 三日程度でできちゃった*2のでその知見をメモ代わりに残します. おしながき おしながき TL;DR 対象読者 作ったもの GCPをフル活用して実質三日でBotをローンチした Bot本体の開発 GCPの何を使うかで試行錯誤 プランA「GCEを使う」 プランB「Cloud Run + Cloud Scheduler」 採用した構成「Cloud Functions + Cloud Sc
この記事は Google Cloud Japan Customer Engineer Advent Calendar 2019 の 7日目の記事です。 本記事で触れるのは Fully managed 版の Cloud Run のみです 🙇 みなさん、こんにちは。Google Cloud の Kazuu( かずー ) です。2019 年 4 月 9 日に Fully managed 版の Cloud Run が Beta としてリリースされてから半年以上経ち、去る 2019 年 11 月 14 日にとうとう GA となりました㊗️ 本記事では GA に至るまでにどんな機能が主に追加されてきたのかリリースノートの時系列で見ていきたいと思います。 Cloud Run の基本的なところを知りたいという方は Next Tokyo の動画や Cloud OnAir も併せてご覧ください。Cloud
このうち、Cloud Funcionsと、AWSのLambdaはライバルのように言われます。実際機能的には似通っています。LambdaはHTTPのサーバーとして公開しようとすると、API Gatewayが必要なぐらいですね。 Cloud RunとFargateもライバルのように言われますが、Fargateは複数のコンテナを組み合わせたタスク単位で実行しますが、Cloud Runは単体のコンテナの実行になり、そこは少し差があります。 今回は、Go + Vue + Cloud Runでかんたんな管理画面を作ろうと思います。ストレージ側にもサーバーレスがあります。MySQLやPostgreSQLのクラウドサービス(Cloud SQLとかRDS)は、サーバーマシンを可動させて、その上にDBMSが稼働しますので、起動している時間だけお金がかかってしまします。一方、FirestoreやDynamoDB
機械学習ワークフロー管理ツールであるKubeflowのPipelines機能を使って日本語テキスト分類の実験管理を行います。 この記事ではKubeflowのチュートリアルに従ってKubeflowのクラスタを構築してPipelinesを動かし、最後に日本語のデータセットをKubeflow Pipelinesに実際に乗せて機械学習のワークフロー管理を行うところまでまとめていきます。 Kubeflow Kubeflowとは Pipelinesとは GKEでKubeflowクラスタの構築 クラスタ構築 Workload Identityの設定 Pipelinesの基本的な使い方 Pipeline/Experiment/Run PipelineとComponent PipelineとDSL 実験管理としてのKubeflow Pipelines 日本語テキスト分類 with Pipelines Pip
リクルートデータ組織のブログをはじめました。※最新情報はRecruit Data Blogをご覧ください。 Recruit Data Blogはこちら こんにちは。今年2018年4月より新卒でRCOに入社した松田です。 kaggle というデータ分析のコンペティション運営サイトが昨今世間に注目されていますが、 今回 TalkingData AdTracking Fraud Detection Challenge において2月にkaggleを始めた私が単独で金メダル(ソロゴールド)を獲得できたのでそれまでにやったことなどをシェアしたいと思います。 図: kaggleサイト( https://www.kaggle.com/ )のプロフィール画面より 図: kaggleでの活動ログ。中2ヶ月はやってないので実質の活動期間は1ヶ月ほど コンペの具体的内容やテクニックの話は 別記事 にまとめたので、
直接的にお金が絡まないと中々やる気が出ないため、公営競技を題材にしてGCPをざっくり勉強する。 なるべくサーバレスな感じで、なるべく開発もWebベースで。 GCPの色々なサービスを使ってみることを目的にしてるので、無駄の多い構成になってしまっているかも。。 やったこと(ざっくり) GKE上のAirflowでバッチ処理作成 GKE関連のファイル類はSourceRepositoriesで管理し、PushしたらCloudBuildでデプロイ Functionsでとある公営競技の過去レースのデータをダウンロードしGCSに格納する GCSからBigQueryに格納 BigQueryに格納したデータを元にAI Platformでモデル作成 Functionsでスクレイピングしたデータと上記モデルからオンライン予測し、結果をFireStoreに投入 Functionsで予測した結果を購入 開発環境 多分
このスライドについて GCE の無料枠で遊ぶときに、やったほうがいいこととかを紹介します。 大体無料で運用できますが、1年間以上の長期運用をする場合はお金がかかるかもしれません。 やったこと お金をかけずに以下のことができるようにしてみました GCE のサーバインスタンスを立てた ドメイン取った HTTPS 対応した 概要 私が気づいた「気をつけたほうがいいこと」は、大まかにこんなかんじ。 最初に支払いのログの設定をする バケットとオブジェクトの命名ガイドラインに従う GCP の無料枠でなんとかなるようにする GCEのf1-microインスタンスを真にタダで使う方法 の問題 無料ドメインをとる DDNS(ieServer.net系)だと、証明書発行できない 1年間までなら無料で使えるドメインはある 有料でも、安めのドメインを買ったほうがいいかもしれない? Let's Encrypt の証明
関西支店で新規事業開発室に所属する加藤です。私のチームでは、Google Cloud Platform (GCP) で主にGoogle App Engine (GAE) を使ってシステムを構築しています。 GAEはコマンド1つで簡単にデプロイできますが、チームの開発者が増えるにつれて、デプロイ用の設定を共有するのが大変になってきました。 デプロイにも時間がかかって、リリース作業に負荷を感じるようになりました。 そこで、GAEアプリケーションの開発フローに、Cloud BuildによるContinuous Integration (CI) / Continuous Delivery (CD) を組み込み、デプロイを自動化しました。 公式ドキュメントや各種ブログに個別の方法は記載されていますが、開発フローに組み込もうとした時にいくつか考えることがあったので、まとめておきます。 前提 Googl
Binary Authorization 信頼できるコンテナのみを Kubernetes Engine にデプロイ。 Binary Authorization は、Google Kubernetes Engine(GKE)に信頼できるコンテナ イメージのみがデプロイされることを保証するデプロイ時のセキュリティ管理サービスです。Binary Authorization を使用すると、開発プロセス時に、信頼できる機関によるイメージへの署名を必須にして、デプロイ時にその署名を検証する過程を導入できます。検証プロセスを適用することで、適切であると認められたイメージのみがビルドとリリースのプロセスに統合されるため、コンテナの環境をより厳密に制御できます。 <機能> ポリシーの作成 ポリシーの検証と適用 Cloud Security Command Center の統合 監査ログ Cloud KMS
GCPって Google Cloud Platform。 Googleアカウントがあれば使用でき、世界中に多くのデータセンターを持つGoogleの大規模なインフラをCloudサービスとして提供している。 何のメモ GCPには数多くのサービスがあり、ちょっとまとめてみようと思った。 どんな時に役立つ? GCPのこのサービスって何だっけ?どんなんだっけ?と思った時に。 あくまで自分がどんなサービスだったかを思い出すためのメモ。 サービスの分類 おおまかにはこんな感じ。(一部省略してます) ※2019年8月末時点のもの。 ※α版、β版を含む。 https://cloud.google.com/products/?hl=ja よりいろいろ引用してます。 分類 サービス例
TL;DRGAE 2nd-gen では X-Appengine-Inbound-Appid ヘッダの代わりに、ID Token + Identity-Aware Proxy を使った方式をサービス間認証に使えます。 はじめにGAE でマイクロサービスを構成する場合、各サービス同士を呼び合うときに同一 GAE アプリからのリクエストであるかを確認したい場面があります。シンプルな例だと、サービスがフロントエンドとバックエンドに別れていて、バックエンドはフロントエンドからしか呼び出せないようにしたい場合です。 GAE 1st-gen では X-Appengine-Inbound-Appid ヘッダという魔法のヘッダがありました。このヘッダは URLFetch を使用して別の GAE サービスにアクセスする時に、GCP が自動で呼び出し元の Project ID を入れてくれるヘッダです。そのため
この記事は MERPAY TECH OPENNESS MONTH の 13日目の記事です。 こんにちは、メルペイ ソフトウェアエンジニアの laughngman7743 です。 メルペイではマイクロサービスにおけるデータストアのデータや、アプリケーションのログを有効活用できるような基盤づくりをデータプラットフォームチームとして行っています。 データプラットフォームではラムダアーキテクチャに基づき、スピードレイヤとして Cloud PubSub と Cloud Dataflow を利用した仕組みに加え、バッチレイヤとして Cloud Composer と Cloud Dataflow を利用した仕組みを構築しています。 この記事ではバッチレイヤのアーキテクチャについてご紹介します。 スピードレイヤのアーキテクチャについては 「GCPでStreamなデータパイプライン始めました」 を参照くださ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く