並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 373件

新着順 人気順

冪等性の検索結果241 - 280 件 / 373件

  • グローバルなid生成器(UUID v4とか)の比較 - ちりもつもればミルキーウェイ

    はじめに 分散システムやってるとどこからでも安全に採番できる強い衝突耐性をもったuuid的なほげほげidがほしくなります。 世にほげほげidはたくさんありますが、適当にREADMEとかよんでもみんな「これイケてるで!」「uuidとかより文字数すくないで!」「sortableでうれしいで!」とかそういうことばっかいっててどの程度衝突耐性があるのかよくわからん問題があります 今回はほげほげidの構成要素の調査と衝突耐性をざっとまとめて比較しようと思います。 比較する項目 ざっくり random bit数 衝突耐性 ソートできるか その他メモ みたいな感じで整理して比較していきます。 衝突耐性は 衝突確率P=0.5のときの必要な試行回数 乱数以外の識別要素 の2つで評価します。たとえばtimestampとか入れてるやつは暗号学的な安全性には寄与しないけど実用上はある精度の時刻で識別できて衝突耐性

      グローバルなid生成器(UUID v4とか)の比較 - ちりもつもればミルキーウェイ
    • 【レポート】Let’s dive deep into AWS Lambda error handling #AWSSummit | DevelopersIO

      2020年9月8日から30日まで開催されるAWS Summit Onlineのセッションレポートです。本エントリではライブセッションLet’s dive deep into AWS Lambda error handlingをレポートします。 非常に簡潔でわかりやすいセッションでした。かつ大事な話が詰まっていたので、Lambdaをご利用の方、もしくはこれからご利用の予定がある方は、すでに公開された録画を聴講されたほうが良いと思います!たった30分の動画なのでぜひ。 リンクは以下です。 AWS-35:Let’s dive deep into AWS Lambda error handling というわけで動画を見ていただきたいのですが、レポートもやります。詳細は動画を見ていただければよいのでダイジェストでやります。 セッション概要 AWS Lambda は 20 以上の AWS サービスをイ

        【レポート】Let’s dive deep into AWS Lambda error handling #AWSSummit | DevelopersIO
      • chezmoi を使って VSCode devcontainer 対応 dotfiles を作る - mizdra's blog

        趣味開発で使っている dotfiles をリニューアルした。 github.com 以前までの dotfiles では適切なパスへの設定ファイルの配置や、onetime script の実行タイミングの管理に ansible を使っていた。冪等性を確保するために色々な機能が用意されていて、便利ではあったのだけど、ファイルの配置をするだけで色々なおまじないが必要だったりと、若干冗長だなと感じていた。 シンボリックリンクを貼るタスク シンボリックリンク貼られる側のファイル郡 あと ansible 自体のインストールにそこそこ時間が掛かるという問題がある。GitHub Actions 上でインストールに掛かる時間を測ったところ、2分くらい掛かっていた。 GitHub Actions のログ (Install Ansible が ansible のインストールをしてい部分) dotfiles そん

          chezmoi を使って VSCode devcontainer 対応 dotfiles を作る - mizdra's blog
        • 加盟店リソース作成時の整合性担保の検討と実装 | メルカリエンジニアリング

          こんにちは。メルペイでバックエンドエンジニアとして従事している a-r-g-v です。私は加盟店さまの初期審査やサポートを行うための社内向け管理画面(以下、社内Tool)や加盟店さま向けの管理画面を開発しているチームに所属しています。この記事はメルペイ加盟店リソースを作成するシステムとそこにある課題、それらに対する改善の取り組みついて紹介させていただきます。 また、本記事は、Merpay Tech Openness Month 2021 の16日目の記事です。 背景 メルペイではマイクロサービスアーキテクチャを採用しています。我々のプロダクトでは、精算サービス、銀行サービス、決済サービスなどの複数マイクロサービスを組み合わせて加盟店さまの体験を作り上げており、メルペイ内でもトップクラスに他のマイクロサービスと接続しています。 メルペイを導入するためにはまず加盟店申込みフォームから申込みをし

            加盟店リソース作成時の整合性担保の検討と実装 | メルカリエンジニアリング
          • 本日開催された「Data Platform Meetup#1」に参加しました。 - 安定と刺激の間で生きたい。

            data-platform-meetup.connpass.com 全体を通した所感 挨拶 趣旨説明 所感 竹野 峻輔さん:「カルチャーとエンジニアリングを繋ぐデータプラットフォーム」 内容 質問 所感 yuzutas0さん:「データレイク構築後の四方山話」 内容 質問 所感 鉄本 環さん:「DataPlatform構築プロジェクト推進の事例と学び」 内容 質問 所感 石田 祥英さん:「大規模サービス開発における分析用データの必要要件」 内容 質問 所感 全体を通した所感 データ基盤ではなく、データプラットフォーム(Data Platform = DP)という表現かっこいいので、使っていこう。 DPアーキテクトの基本構成は、Google BigQueryと、Cloud Composer(Airflow)。 DPテーブルの基本構成は、Data Lake(DL), Data WareHouse

              本日開催された「Data Platform Meetup#1」に参加しました。 - 安定と刺激の間で生きたい。
            • HTTPとRESTの基本 『網羅版:HTTPメソッドとレスポンスコード』 - Qiita

              初めに 参考サイト:HTTP 意味論(共通基盤)RFC 9110 — HTTP Semantics 参考サイト:開発者向けのウェブ技術 > HTTP レスポンスステータスコード 参考サイト:Wiki HTTPステータスコード 参考書籍:Webを支えWebを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus) 参考書籍:オライリー・ジャパン RESTful Webサービス 各文献を元にまとめした。『3. HTTPレスポンスコード概要』以降は引用まんまに近いところもあれば、大幅に書き換えた・再構成した部分も多々あります。 この記事を書こうと思った切欠はステータスコードについて質問された時にちゃんと答えられなかったからです。 次は、これを元に RESTful API の設計の記事とか書いてみようと思います。 また、この記事は一応3部作です。特に第1部で

                HTTPとRESTの基本 『網羅版:HTTPメソッドとレスポンスコード』 - Qiita
              • AWS Lambdaを少しでも速くする - Programming Self-Study Notebook

                遅くなる理由 プログラムの問題 コンピューティングリソースの不足 コールドスタート Lambdaファンクション実行時に起きていること コールドスタートが起こる条件 コールドスタートを速くする アーキテクチャの問題 同時実行数 Limit Increaseについて アンチパターン AWS LambdaでRDBMS使いがち問題 IP固定したがり問題 サーバレスに夢見がち問題 監視しなくていいと思ってる問題 その他 参考文献 Lambdaのコールドスタート対策の調査をする中で、「AWS Summit Tokyo 2017の全部教えます!サーバレスアプリのアンチパターンとチューニング」というセッションに到達しました。 上記スライド以外にもYouTubeの動画(約40分)があるようですのでご興味がある方は探してみてください。 遅くなる理由 プログラムの問題 コンピューティングリソースの不足 コールド

                  AWS Lambdaを少しでも速くする - Programming Self-Study Notebook
                • Amazon Redshift 用の AWS Step Functions を使用した ETL プロセスのオーケストレーション | Amazon Web Services

                  Amazon Web Services ブログ Amazon Redshift 用の AWS Step Functions を使用した ETL プロセスのオーケストレーション 現在のデータレイクは、大量の情報を使用可能なデータに変換する抽出、変換、ロード (ETL) 操作をベースとしています。この記事では、AWS Step Functions、AWS Lambda、AWS Batch を緩やかに結合して Amazon Redshift クラスターをターゲットにする ETLオーケストレーションプロセスの実装について詳しく説明します。 Amazon Redshift はカラムナストレージを使用するため、便利な ANSI SQL クエリを使用した迅速な分析的インサイトに最適です。Amazon Redshift クラスターを数分ですばやく増減して、エンドユーザーレポートとデータウェアハウスへのタイ

                    Amazon Redshift 用の AWS Step Functions を使用した ETL プロセスのオーケストレーション | Amazon Web Services
                  • SQS → Lambdaのリトライ処理について整理してみた - Qiita

                    AWSコンソールの画面でAWS Lambdaの画面に遷移して[関数] → [関数を作成]で "dog"という名前のLambda関数を作成します。 今回はロールは[基本的な Lambda アクセス権限で新しいロールを作成] で作成しインラインポリシーで以下の権限を追加しました。 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:[region]:[accountID]:inu-queue" } ] } そして[トリガーの追加]から先ほど作成したSQSのキュー"inu-queue"を選択しトリガーを有効にし

                      SQS → Lambdaのリトライ処理について整理してみた - Qiita
                    • Software Design 2021年9月号

                      2021年8月18日紙版発売 2021年8月18日電子版発売 B5判/184ページ 定価1,342円(本体1,220円+税10%) ただいま弊社在庫はございません。 Amazon 楽天ブックス ヨドバシ.com Fujisan(定期購読のみ) 電子版 Gihyo Digital Publishing Amazon Kindle 本書のサポートページサンプルファイルのダウンロードや正誤表など 第1特集 Rustでわかるメモリ管理 しくみを知る/アプリを作る/ライブラリを読む プログラミング言語Rustは人気の割に,難しいという意見もよく目にします。その理由の1つは,ライフタイムや所有権といった独自のメモリ管理機能にある様子。 本特集では,そうした難所を乗り越えられるよう,しくみから活用方法まで徹底的に解説します。プログラムにおけるメモリとメモリ管理,そしてRustのメモリ管理のしくみを説明し

                        Software Design 2021年9月号
                      • Istio の timeout, retry, circuit breaking, etc

                        こんにちは、スリーシェイクの寺岡です。今回は Kubernetes の代表的な Service Mesh である Istio の timeout やら retry やらについての紹介です。 環境Istio は 1.7.3 で、その中で使われている Envoy は 1.15.1 です。 Kubernetes は EKS で 1.17 です。 Istio と Envoy の関係まずは、Istio と Envoy の関係についてですが、大雑把に言うと Istio は Envoy を Pod のサイドカーとして挿入し、それらの設定を管理するものです。私だけかもしれませんが、最初はそれらの Envoy 同士が特別な接続を持っているのではないかと勝手に想像していました。でも実際にはそれぞれの Envoy はただ Pod の外から中、中から外への通信の間に入って Proxy するだけで Envoy 同士

                          Istio の timeout, retry, circuit breaking, etc
                        • 「モノリスからマイクロサービスへ」サマリのサマリ

                          「モノリスからマイクロサービスへ」サマリ をさらにサマライズしたもの 絵をテキストアートからちょっと整えて、文書もさらに絞った いつでも参照できる自分のためのちょっと細かく書いてある辞書として使う 絵の色は基本的にこう 緑:移行先とか作成・変更するもの 赤:移行元とか問題のあるもの 灰:移行中に必要になるもの イメージ的には GitHub の差分カラー 画像がちょっと大きくて見通しが悪いけど、50 枚数直すのも大変だし、困ったらcmd -して倍率変えて見るか... これはあくまで章にアタリをつけたり一度読んだことを思い出したり、とにかく本を読むためのまとめ h1 と h2 を抽出 1. 必要十分なマイクロサービス デプロイ 凝集度 判断 モノリス 結合 2. 移行を計画する 選択する理由 ふさわしくないケース 定期的にチェックする 3. モノリスを分解する パターン: ストラングラーアプリ

                            「モノリスからマイクロサービスへ」サマリのサマリ
                          • Goフリーランスエンジニアの開発生産性の本気の高め方 | Offers Magazine

                            生産性向上は学生時代からの関心事 はじめまして、フリーランスエンジニアの堀(@hori_ryota)です。Goとドメイン駆動設計と株取引が好きです。開発の生産性を技術的に向上することをメインミッションにしていて、コード生成技術を駆使して開発をDRYにすることが得意です。 今回は開発生産性を高める際に気をつけていることについてご紹介できればと思います。 ▲DDDについてまとめているブログ 本題に入る前に、私が生産性の向上にどのように取り組んできたかを簡単にご説明したいと思います。 私は、もともと社会人になる前から、色々なことを自動化したり効率化したりすることが好きでした。学生時代に実験データの整形などをプログラミングで解決することに楽しさを感じ、就職活動でも、より自動化や効率化により貢献できそうな分野はどこかと考え、機械系の大学からIT系のエンジニア職を志しました。 働き始めてからは、手元作

                              Goフリーランスエンジニアの開発生産性の本気の高め方 | Offers Magazine
                            • 重複実行を許容しないステートマシンを構築してみた | DevelopersIO

                              アプリケーションの処理内容を考慮せず、Step Functionsで重複実行を抑止するなら...といった内容です。 何らかのトリガーによって定期的に処理が呼びだしされるものの、実行中の場合はスキップしたい...EventBridge(CloudWatch Events)から複数回起動される可能性をなくしたい...そんなことがあると思います。 そうした要件には、冪等性を確保するなど処理を行うアプリケーション側で対応していることが多いかと思います。 今回は、何らかの理由でアプリケーションの改修が行えないかつ、該当の処理はStep Functionsにて呼び出しされていることを前提として、重複実行を許容しないステートマシンを作成してみました。 制限のある前提のため、利用できるケースは限られるかと思いますが、こういうやり方もあるか〜程度に、参考にしていただけれと思います。 実装 Lambda Fu

                                重複実行を許容しないステートマシンを構築してみた | DevelopersIO
                              • サービス成長のための社内ツール開発事例の紹介 | メルカリエンジニアリング

                                こんにちは!ソウゾウのSoftware engineerの@ogidowです 「メルカリShops [フライング] アドベントカレンダー2022」の15日目を担当します。 はじめに メルカリShopsでは様々なキャッシュバック系キャンペーンを行っています。 一例として、販売手数料キャッシュバックキャンペーンなどがあります。 これらのキャンペーンではソウゾウの担当者が顧客管理システム上で、1件ずつショップに対してキャッシュバック(販売利益の付与)を行う必要がありました。 顧客管理システムから1件ずつオペレーションする方法は、サービスの成長に伴い対象のショップが増加するとオペレーションコストが大幅に増えてしまいキャンペーンの実施が困難になることが予想されます。 そこで、対象ユーザが増加した場合も問題なくキャンペーンを実施できるよう、Google Sheets(以下、スプレッドシート)を利用した

                                  サービス成長のための社内ツール開発事例の紹介 | メルカリエンジニアリング
                                • アラートメールのslack通知の話 - MicroAd Developers Blog

                                  マイクロアドでアプリケーションエンジニアをしているタカギです。 バッチ開発がメインのチーム(第4開発ユニット:通称ゆーよん)に所属しています。 バッチといえば避けては通れないのが、アラート対応ですね。 そういうわけで、今回の記事では、アラートメールのslack通知について記事を書いていきたいと思います。 背景 マイクロアドでは、非常に多くのバッチ処理が走っています。バッチスケジューラとしては、最近はDigdagが主流ですが、一部にはJenkins、Rundeckなどから実行されるバッチも存在します。また、監視ツール系のバッチはcrontabで動いていたりもします。 大抵の場合、アラートメールはメーリングリスト宛に送信され、所属しているメンバーの会社の個人メールアドレスに届く事が多いと思います。 個人のメールボックスには、アラートメール以外にも多くのメールが届いているはずなので、必然的にアラ

                                    アラートメールのslack通知の話 - MicroAd Developers Blog
                                  • CloudWatch Eventをトリガーにすると複数回実行されることがある - Qiita

                                    CloudWatch Eventスケジュール式(cron式)をトリガーにECSでタスクを起動するよう設定していたのだが、なぜかまれにタスクが同時に2個起動することがある。エラーが起きたからリトライされたというわけではなく、タスクは2個とも正常終了した。 CloudWatch Eventはそういうもので、ちょうど1回だけ起動することを保証していないとAWSドキュメントに書いてある。 1 つのイベントに応じてルールが複数回トリガーされました。CloudWatch イベント で、ルールのトリガーまたはターゲットへのイベントの提供で何が保証されますか。 まれに、単一のイベントまたはスケジュールされた期間に対して同じルールを複数回トリガーしたり、特定のトリガーされたルールに対して同じターゲットを複数回起動したりする場合があります。 CloudWatch イベント のトラブルシューティング Lambd

                                      CloudWatch Eventをトリガーにすると複数回実行されることがある - Qiita
                                    • テスト用お客さまデータ作りツール user-tkool の近況 | メルカリエンジニアリング

                                      Merpay Advent Calendar 2020 の4日目の記事です。 こんにちは!Merpay Solutions Teamの@vvakameです。 1年前のAdvent Calendarでメルペイ社内ツールのお話をしました。この記事では、1年経ってuser-tkoolががどう変わったか、今どのように使われているかをまたしても紹介したいと思います。 gchammerについてはsinmetalがDay 2に記事を書いているのでそちらを見てください。 というわけで、この記事ではテスト環境に任意の状態のお客さまデータを生成するツールである、user-tkoolの最近を紹介していきたいと思います! user-tkool とは メルカリ/メルペイには実に様々な状態のお客さまが存在しています。アカウントを作った直後の方、メルカリで売り買いを楽しんでいただいている方、本人確認を済ませた方(いわゆ

                                        テスト用お客さまデータ作りツール user-tkool の近況 | メルカリエンジニアリング
                                      • 「プログラミングPHP 第3版」 O'REILLYを読みました。 - たろログ

                                        www.oreilly.co.jp 2013年に発行されたかなり古い本ですが、 プログラミングPHPという書籍を読みました。 PHP5技術者認定上級/準上級試験では主教材とされている書籍です。 「PHP5」技術者認定の主教材とされていることからもわかる通り、この書籍が扱うPHPのバージョンは5系です。 紹介されているライブラリや関数も当時使われていたが今は使われていないものが多く、ライブラリなどはWebの公式マニュアルを見に行くと、"Duplicated"となっているものが多々ありました。 というわけで、内容が古すぎて具体的なサンプルコードやテクニックはあまり役に立たなかったなという感想です。 一方で、 PHPの歴史を知る PHPの言語としての基本的な構造を把握する という面では、優れた書籍だと思いました。 また、 Webの基礎が学べた という点でも有用だったなと思います。 歴史 1章 P

                                          「プログラミングPHP 第3版」 O'REILLYを読みました。 - たろログ
                                        • 2019年8月のAWS障害を思いながらAWS Well-Architectedフレームワーク 信頼性の柱 ホワイトペーパーを読んでみた | DevelopersIO

                                          2019年8月のAWS障害を思いながらAWS Well-Architectedフレームワーク 信頼性の柱 ホワイトペーパーを読んでみた 2019年8月のAWS障害のことを思いながら、「AWS Well-Architectedフレームワーク 信頼性の柱」のホワイトペーパーを読んでみました。また、可用性目標ごとの実装例についても比較表にまとめてみました。 こんにちは。AWS事業本部のKyoです。 覚えていますか?一年前の今日のこと。 そう、AWSの東京リージョンのEC2,EBSでの障害の日ですね。 当時はAWSの利用歴が浅かったこともあり、AWSで大きめな障害なんて...と幻想を抱いていました。 この障害をきっけにその幻想は打ち砕かれ、Werner Vogelsの言葉やカオスエンジニアリングを知り、信頼性の面白さにズブズブとハマっていったのでした。 AWS re:Invent 2019 - K

                                            2019年8月のAWS障害を思いながらAWS Well-Architectedフレームワーク 信頼性の柱 ホワイトペーパーを読んでみた | DevelopersIO
                                          • [レポート] Infrastructure-as-Code and the Modern Data Experience (IaCとモダンデータエクスペリエンス) #futuredata | DevelopersIO

                                            [レポート] Infrastructure-as-Code and the Modern Data Experience (IaCとモダンデータエクスペリエンス) #futuredata 大阪オフィスの玉井です。 2021年10月13日 午前9時~午後3時(米国太平洋標準時)、Future Dataというデータ分析に関するオンラインカンファレンスが開催されました。 この記事では、このイベントの「Infrastructure-as-Code and the Modern Data Experience」というセッションのレポートをお届けします。 セッション情報 登壇者 Tristan Handy氏(Founder and CEO, dbt Labs) 概要 The devops movement transformed system administration--once manual,

                                              [レポート] Infrastructure-as-Code and the Modern Data Experience (IaCとモダンデータエクスペリエンス) #futuredata | DevelopersIO
                                            • 運用基盤を刷新しました-Terraform本格導入編 - ハウテレビジョンブログ

                                              こんにちは、SREチームの小川です。 最近やっと「2001年宇宙の旅」を見ました。のっけから真っ暗な画面が流れ、なんのこっちゃ?という感じでしたが、あれは宇宙の始まりを表していたのでしょうか。そして人類が生まれ歴史が作られる壮大な物語が始まったのでしょうか。 あ、外資就活でもTerraformを利用してインフラを改めて作り出したので、今回の記事ではその軌跡をご紹介します! はじめに 外資就活運用基盤刷新記事の第2弾です。 この記事では、インフラ面で多くの課題を抱えていた外資就活が、Terraformの導入により飛躍的に改善した軌跡を紹介します。 自身のインフラに課題を感じている方々にとって、私たちの経験が一助になればと考えています! Terraformとは Introduction to Terraform 「infrastructure as code(IaC)」の1つです。 オンデマン

                                                運用基盤を刷新しました-Terraform本格導入編 - ハウテレビジョンブログ
                                              • 多様で柔軟な働き方を目指し、サーバーの運用脱却と高可用性を実現するAWSのフルサーバーレスで物流会計システムを構築! | 導入事例 | Serverless Operations

                                                2011年、国内の主要な建材・設備機器メーカー5社が統合して誕生しました。 以後、GROHE、American Standardといった世界的ブランドを傘下に収め、日本のものづくりの伝統を礎に、世界をリードする技術やイノベーションで、日々の暮らしの課題を解決する高品質な製品をグローバルで幅広く提供しています。 *(写真左から)株式会社necco 阿部 文人、株式会社LIXIL 和田 修一・猪俣 司、株式会社Serverless Operations 堀家 隆宏 はじめにこのたび、株式会社LIXILさんよりサーバー運用コスト削減と高可用性を狙いに「新規会計システムをサーバーレスで開発したい」というご相談をいただき、LIXILの担当者さんと一緒に開発を進めました。 株式会社LIXILは、住宅およびビル向けの建材・設備機器の製造、販売を行う業界最大手のグローバルメーカーです。 トステム、INAX

                                                  多様で柔軟な働き方を目指し、サーバーの運用脱却と高可用性を実現するAWSのフルサーバーレスで物流会計システムを構築! | 導入事例 | Serverless Operations
                                                • Amazon Redshift のパフォーマンスチューニング 十ヶ条まとめ - Qiita

                                                  Amazon Redshift は Serverless版もGAされ、さらにATO:Automatic Table Optimization(自動テーブル最適化)など、従来からある Provisioned版含めてパフォーマンスチューニングがどんどん自動化されてきている。 一方で、実運用では高負荷など使い方によって問題が全く起こらないことは考えにくく、困った時にチューニングの余地があることはメリットでもある。 以下の公式ブログの Tips をもとに困った時のチューニング対処ポイントをまとめる ※ 記事は 2020年 のものなので、その後新機能でカバーできる点や、主観的な考えについて適宜補足しています。 [1] マテリアライズドビューを使う 予測可能で何度も繰り返されるクエリに特に効果を発揮する 内部テーブルだけでなく、外部テーブル(Spectrumやフェデレーション)にも使える マテビューの

                                                    Amazon Redshift のパフォーマンスチューニング 十ヶ条まとめ - Qiita
                                                  • Monthly AWS Serverless Update 202101 - Sweet Escape

                                                    2021年1月のサーバーレス関連まとめです。こちらのイベントで取り上げる内容です。 serverless-newworld.connpass.com 2021年1月のリリース 昨年の11月30日からAWSの年次グローバルカンファレンスであるre:Inventが開催されたことで12月は大きなアップデートがいくつかあったのですが、それはいろんなところでまとめられているので今回は触れません。今回はあくまでも2021年1月に発表されたアップロードに限ります。 1月はなんとAWS Lambdaに関するアップデートがありません。re:Inventに全力投球って感じだったのでしょうか。 タイトルだけで内容がわかるようなものは特にコメントしていません。 AWS Step Functions が、分析および機械学習のワークフローでデータを準備する AWS Glue DataBrew ジョブのサポートを追加

                                                      Monthly AWS Serverless Update 202101 - Sweet Escape
                                                    • 【dbt小ネタ】 ログの集計 : incremental モデルの実運用 (upsert, リカバリ手法や自動復旧の実現) - KAYAC engineers' blog

                                                      カヤックSREの池田です。 最近、日本のデータエンジニアリング界隈でのdbt(Data build tool)の活用がじわじわと盛り上がってきています。 dbtはpythonのJinjaテンプレートを利用したSQLの拡張を実現し、ETL処理のT(データ変換)に関して強力な機能を提供してくれます。 dbt自体の詳しい説明などは、インターネット上に増えてきていますのでそちらにおまかせするとして、本記事ではdbtを使い慣れてきた人向けの小ネタを話します。 今回は『ログの集計』を例にincrementalモデルを運用する上での問題とその解決方法を紹介します。 www.getdbt.com まずはじめに dbt では モデルと呼ばれる*.sql とスキーマと呼ばれる*.ymlを記述することになります。 例えば、以下のようなsourceのスキーマがあるとします。 models/staging/log/

                                                        【dbt小ネタ】 ログの集計 : incremental モデルの実運用 (upsert, リカバリ手法や自動復旧の実現) - KAYAC engineers' blog
                                                      • データパイプラインの管理 ~ワークフロー管理に利用できる、さまざまなAWSサービス | gihyo.jp

                                                        はじめに 本連載の第2回では様々なデータソースからの収集について、第3回では収集されたデータの管理についてそれぞれ解説してきました。今回は、それぞれのデータの収集から分析するまでの処理の流れを管理するデータパイプライン管理に着目し、求められる要素や関連するサービスとその使い分けについて解説します。 データパイプラインとETL 分析するためのデータを様々なデータソースから収集してデータレイクのような基盤で実際に分析できる状態にするまでには、一般的にいくつかのサービスや機能、処理を組み合わせて実現します。このようにデータの抽出(Extract⁠)⁠、変換(Transform⁠)⁠、ロード(Load)の一連のフロー(流れ)をETLと呼び、データソースやデータの種類ごとに異なるフロー(パイプライン)を構成する必要があります。 さらにこの処理は当然ながら自動化することが一般的です。なお、データウェア

                                                          データパイプラインの管理 ~ワークフロー管理に利用できる、さまざまなAWSサービス | gihyo.jp
                                                        • JAWS-UG コンテナ支部 #15 イベントレポート - Qiita

                                                          セッション 1. AWS コンテナサービスアップデート by トリ Twitter: @toricls 2019年の AWS コンテナ関連サービスアップデートをササササッと振り返り ECS EKS デプロイコントローラーの発表(これでプチカナリアリリースなどがユーザーカスタマイズで可能) Amazon ECS で新しいローカルのテストツールが利用可能 AWS Fargate および Amazon ECS が ECS サービスの外部デプロイメントコントローラーをサポート Amazon EKS が Amazon CloudWatch への Kubernetes コントロールプレーンログの配信を開始 Amazon ECS が awsvpc ネットワークモードの ENI の密度の上限を改善 コンテナワークロードのためのメトリクス・ログモニタリングサービス、CloudWatch Container

                                                            JAWS-UG コンテナ支部 #15 イベントレポート - Qiita
                                                          • REST API開発者はPOSTも冪等になるように設計して欲しいよねって言う話 - Junks, GC cannot sweep

                                                            こんにちは。 もう冬なのにこの国にはまだ蚊が出るんですよね…やってらんねえ〜〜。 さて、そろそろこの国に来て二年になるので、後一年くらいしたら北欧の方に移住しようかと考えています。 2月に長期休暇が取れそうなので、二週間くらい書けてエストニアを中心にヨーロッパの下見旅行に行こうかなと考えています。 エストニアの現地コミュニティに連絡をとったところ、何人か合ってくれそうな開発者がいたので、今からとても楽しみです。 あと、AWSのSolution Architect Professionalの勉強を始めました。 流石にそろそろとっておかないと色々厳しいので、この動画を使って勉強してます。 AWS Certified Solutions Architect (CSA) Professional: Exam | Udemy 超わかりやすい、焦る。 たぶんネイティブじゃないけど、英語もはっきりしてて

                                                              REST API開発者はPOSTも冪等になるように設計して欲しいよねって言う話 - Junks, GC cannot sweep
                                                            • 週刊Railsウォッチ: RBS関連記事、Ruby formatterプロジェクト、Google Cloud Runほか(20220406後編)|TechRacho by BPS株式会社

                                                              週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙏 TechRachoではRubyやRailsなどの最新情報記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ) 🔗Ruby 🔗 RBS関連記事 元記事: RailsアプリをRBS + Steepで型チェックするまでの手順 - アジャイルSEの憂鬱 元記事: RBSを

                                                                週刊Railsウォッチ: RBS関連記事、Ruby formatterプロジェクト、Google Cloud Runほか(20220406後編)|TechRacho by BPS株式会社
                                                              • アソビューのデータ分析基盤をどう設計していったか - asoview! Tech Blog

                                                                この記事はアソビュー! Advent Calendar 2022 の 21日目です。 裏面もよろしくお願いいたします!! tech.asoview.co.jp Intro GCPとリソース階層、プロジェクト粒度について GCPのプロジェクトとリソース階層の全体設計 データ分析基盤のプロジェクト設計 基本方針 BigQueryをデータ分析基盤として使う場合の考慮事項 サービスクォータへの対応 martでの機密情報の取り扱い 中長期的にデータ分析基盤を拡張していくときの方針 BigQuery構造設計 Data Lake Data Mart 最後に こんにちは、アソビューデータ基盤チームの霧生です。 最近はポケモンsvにハマっています。ランクマッチに初めて挑戦し、マスターボール級に行けて非常に満足しています。 以前データ活用について、弊社執行役員CPOの横峯から下記の記事が出ています。 本稿はそ

                                                                  アソビューのデータ分析基盤をどう設計していったか - asoview! Tech Blog
                                                                • Rubyで宣言的なプログラムを書くためのテクニックTips - Qiita

                                                                  この記事は何 この記事は、宣言的なプログラムを書くために使える、ちょっとしたテクニックを紹介していきたいと思います。 宣言的なプログラミングが何かは以下の記事が参考になると思います。 テクニック集 テクニック1: 変数は使い回さない Rubyの場合、定数が少しピーキーな挙動になっているので、基本的に全ての変数は可変になってしまうと思います。 変数を使いまわしたり、値を変更するのはできるだけ避けることで、コードが追いやすくなり、冪等性の担保されたコードがかけるようになります。

                                                                    Rubyで宣言的なプログラムを書くためのテクニックTips - Qiita
                                                                  • PUT vs. PATCH ~Kotlinでの部分更新はどちらを選ぶべきか?

                                                                    Airレジ ハンディの開発を担当している早川です。 リソースを部分更新したい場合はHTTPリクエストメソッドにPUTまたはPATCHのどちらを使うべきでしょうか?この記事ではPUTとPATCHの比較と、Kotlin x Spring Bootで開発している私たちのチームがPATCHを選んで直面した問題を紹介します。 リソースの部分更新とは? この記事におけるリソース部分更新とは、フォーム内のウィジェットの値が更新された時に、サブミットすることなくその値がサーバに保存されることを意味しています。例えば下のgifで示した通り、テキストフィールドの値が更新されるとHTTP通信が行われ、「保存しています…」状態となります。Googleドライブのドキュメントやスプレッドシートを編集して即座にクラウドに反映されるのに似た機能と思っていただければ良いと思います。 PUTとPATCH この機能を実装するに

                                                                      PUT vs. PATCH ~Kotlinでの部分更新はどちらを選ぶべきか?
                                                                    • 【PyCon JP 2019 Tutorial】Lambda(Python)を使用したサーバレスのハンズオン - kuro-46のブログ

                                                                      PyCon JP 2019 Tutorialに参加したので、学んだことをざっくり書き残しておきます。 資料 speakerdeck.com 進め方 Lambdaについての説明 Lambdaを始める(ハンズオン) サーバーレスアーキテクチャとLambdaの位置付け Lambdaと周辺サービスでAPIサーバーを作ってみる チュートリアルのゴール AWS上で構築するサーバーレスアプリケーションの基本構成について知る Lambdaの利用に十分な基本的な構成を知る AWSの基本的なマネージドサービスを使って、サーバーレスなAPIの構成と作成手順を知る Lambdaについての説明 AWS Lambdaとは FaaS(Function as a Service)の1つ AWS上のカテゴリーは「コンピューティング」(その他にはEC2など、プログラミングの実行環境) マネージされたコード実行環境を提供 基本

                                                                        【PyCon JP 2019 Tutorial】Lambda(Python)を使用したサーバレスのハンズオン - kuro-46のブログ
                                                                      • マーケティングオートメーションシステムを支えるリアルタイムデータ連携基盤をリプレイスした話 - ZOZO TECH BLOG

                                                                        こんにちは、MA部の谷口(case-k)と@gachi-muchi-engineerです。 私達のチームではマーケティングオートメーションシステムの開発や運用をしています。ZOZOTOWNではマーケティングオートメーションによって、メールやPush、LINEなど各チャンネルに対して日々配信しています。配信方法は大きく2種類に分けられ、特定のユーザーセグメント向けの「マス配信」と、個別のユーザーに最適化された「パーソナライズ配信」があります。パーソナライズ配信基盤を社内ではリアルタイムマーケティングシステム「RTM」と呼んでいます。リアルタイムマーケティングシステムは随分と前に作られたこともあり、現在リアルタイムマーケティングシステム全体のリプレイスを進めています。本記事ではリアルタイムマーケティングシステムで用いられている、リアルタイムデータ連携基盤をリプレイスした事例をご紹介します。 既

                                                                          マーケティングオートメーションシステムを支えるリアルタイムデータ連携基盤をリプレイスした話 - ZOZO TECH BLOG
                                                                        • AWSサーバーレスアーキテクチャのための冪等性(べきとうせい)入門

                                                                          垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

                                                                            AWSサーバーレスアーキテクチャのための冪等性(べきとうせい)入門
                                                                          • Amazon SQS と処理の重複 前編 ~ 可視性タイムアウトの役割 - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS

                                                                            テクニカルインストラクターの杉本圭太です ! 最近読んで面白かった漫画は「百木田家の古書暮らし」です。 Amazon Simple Queue Service (SQS) を使用することで、アプリケーション同士の通信を非同期にして、さらに信頼性やスケールを高められます。しかし SQS を使用する場合「処理重複が発生する可能性があるため、冪等性 (べき等性) の考慮が必要」と言われますが、どんな場合に処理重複が発生するのかは把握できていますか ? ▼ SQS を使用したシステムの概要 SQS では処理重複を制御するために「可視性タイムアウト」や「FIFO キュー」の機能がありますが、これらを使用しただけで処理重複がゼロになる訳ではありません。そのため、それぞれの機能が何を制御してくれるのかを理解することは、SQS をより適切に扱うために重要です。しかし同時に理解が難しい部分でもあります。 そ

                                                                              Amazon SQS と処理の重複 前編 ~ 可視性タイムアウトの役割 - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS
                                                                            • Developoers.IO 2019 Tokyo 登壇資料「AWS CDKの基本と実例」 #cmdevio | DevelopersIO

                                                                              はじめに Developers.IO 2019 Tokyoで、AWS CDKについて登壇したので、その内容を公開します。 目次 AWS構築の歴史 AWS CDKを使うメリット AWS CDKでテストを行うべき理由 AWS CDKを学ぶ際に見るべきもの(参考リンク紹介) AWS構築の歴史 概要 このセクションでは、AWS構築の歴史を紹介していきます。CDKは構築手段の一つなので、他と比べてどう違うかという事を理解してもらう目的です。 AWS構築の世代 私はAWS構築の歴史を4世代で捉えています。世代という表現ですが、ブログを書く際はマネジメントコンソールからリソース作成(1世代)を行うなど、ユースケースに応じて選択すべきです。 それぞれの、構築方法を説明します。 手順書 手順書を用意して、それに従ってAWSマネジメントコンソールから作成を行う方法です。手順書というのは、Markdownで生成

                                                                                Developoers.IO 2019 Tokyo 登壇資料「AWS CDKの基本と実例」 #cmdevio | DevelopersIO
                                                                              • ECSでRakeタスクを実行する | DevelopersIO

                                                                                ECS環境でRailsサーバを運用する場合、コンテナにSSHするのは一般的ではないので、 従来的な手法、即ち稼働しているサーバインスタンスに入ってそこからrakeタスクを起動したり、RailsConsoleを起動して何かしたり、といった運用は現実的ではありません(よね?) では運用に必要なジョブをどうやって実行すれば?という事で、 任意のRakeタスクを起動させる方法に関して見てみたいと思います。 Rakeタスクを起動する 方法はとても単純です。 Railsサーバを起動させるためのタスク定義がすでに存在する前提ですが、これは通常満たされているものと思いますので、残る手順はこれだけです。 (Railsサーバを起動させるためのタスク定義で) タスクを起動させる その際に、コンテナのコマンドを bundle exec rake hoge:fuga で上書きする ECSでは個々のタスクと、タスクを

                                                                                  ECSでRakeタスクを実行する | DevelopersIO
                                                                                • Looker System Activity を低コストなサーバレスイベント駆動パイプラインで BigQuery へ取り込む - LegalOn Technologies Engineering Blog

                                                                                  はじめに 株式会社LegalOn Technologies でデータエンジニアリングをしている 田中 晶 です。 LegalOn Technologies では、データドリブンな意思決定をするために、データ分析基盤や BI ツールの整備を行い、プロダクトに関わる多くの社員がデータを活用できる状態を維持し、さらなる活用を目指しています。 過去の啓蒙活動や整備の甲斐もあり、現在弊社で利用しているBIツールである Looker のライセンスは多くの社員に付与されており、またその活用も専門職だけでなく、営業部門の活用率も高いという利用率の計測結果も出ているほどです。 このように活用されているデータ分析基盤ですが、より高いデータの利活用水準を目指すためには、利用者や用途に関して、長期的に柔軟な利用状況の分析を行う必要がでてきました。 そこで幅広く Looker の活用度を測定するために使用状況やパフ

                                                                                    Looker System Activity を低コストなサーバレスイベント駆動パイプラインで BigQuery へ取り込む - LegalOn Technologies Engineering Blog