NTTデータのブログ - TECH PLAY

TECH PLAY

NTTデータ

NTTデータ の技術ブログ

603

はじめに Apache Spark(以下Spark)からApache Iceberg(以下Iceberg)に対して、MERGE INTOを実行するユースケースは、差分更新やCDC(Change Data Capture)の取り込み、冪等性の担保においてよく使われます。実際にupsertを実現したいという要件から、MERGE INTOが利用できるIcebergを選択するケースもあります。 一方で、MERGE INTOは単純なINSERTやUPDATEと比較して、処理が複雑です。内部的にはsourceテーブルとtargetテーブルの突合が必要となり、Spark内部でシャッフルが発生するこ
はじめに こんにちは。入社2年目に突入したセキュリティコンサルタントの石尾です。本記事は情報セキュリティのベストプラクティスをまとめたCIS Controlsについて、セキュリティコンサルタントが学んでいくシリーズの第2回です。「CIS Controlsってなに?」という疑問をお持ちの方はぜひ前回の記事を見てみてください。第2回では脆弱性管理にフォーカスしていきます。 脆弱性とは セキュリティ界隈の方以外にはあまり聞き馴染みがないと思いますが、脆弱性(ぜいじゃくせい)と読みます。 NTTドコモビジネスによると、脆弱性とは、 コンピューターのOSやソフトウェア、ハードウェアにおい
はじめに こんにちは!NTTデータ テクノロジーコンサルティング事業部の松苗です。 2026年4月22日〜24日の3日間、米国ネバダ州ラスベガスのマンダレイ・ベイで開催されている Google Cloud Next 2026 に現地参加しています。 本記事では、Cloud Runの製品チームや最前線のパートナーが登壇したセッション「What's new in Cloud Run」の内容をレポートします。AI エージェントの開発から大規模運用まで、Cloud Run がどのように進化したのか、現場の熱量と共にお伝えします! 本記事の対象読者 Cloud Runを用いたAIエージェ
1. はじめに 突然ですが、VS Codeの拡張機能を作ったことはあるでしょうか。 今まで私は、何か難しそうだという理由から、全く作ろうと考えていませんでしたが、生成AIの進歩によってお手軽に作れることを知って、最近いくつか試しに作っています。 今回は、「VS Code の Webview でどこまで動くのか?」 という疑問から、VS Code 拡張機能の描画性能について着目し、ごく簡単にではありますが、Web ブラウザの場合との比較検証をテトリスを動かすことで実施してみました。 また、VS Code標準のUIではなく、描画の自由度がより高いWebview[1]を使うことにしました。
はじめに アジャイル開発では、短いサイクルで実装と検証を回し、できるだけ早く価値を届け続けることが求められます。 その際に課題になりやすいのが、コードをどこで統合し、どの状態を基準とし、いつリリース可能とみなすかという運用です。 その運用を支える仕組みがブランチ戦略です。 ブランチ戦略は、プロジェクト特性に応じて適切に選択する必要があります。 さらに最近は、生成 AI の活用も現場の前提になりつつあります。より高速な開発・リリースサイクルに耐えうるブランチ戦略の策定は、ますます重要になっています。 本記事では、アジャイル開発におけるブランチ戦略の全体像と考え方を、初心者向けに分かりや
はじめに 今回受講した講座 株式会社ジェネラティブエージェンツさんが開催している、AIコーディングを体系的に学べる講座を受講しました。 https://generative-agents.co.jp/service/edu-ai-coding なぜAIコーディング実践講座を受けたのか 私自身、AIエージェントを用いたソフトウェア開発に携わっています。業務でAIエージェントを活用したプロセス設計に関わる中で、その可能性は感じていたものの、AIコーディングツール(特にClaude Code)を用いた開発プロセスは未経験でした。 実践レベルでの活用方法を理解するため、本研修に参加し
はじめに Airflow などのオーケストレーションツールから dbt Core で Snowflake 上のオブジェクトを更新するワークロードを運用していると、次のような悩みが出てきます。 オーケストレーションツールを動かす実行ホストの運用負荷が高い スケジュール、監視、デプロイ、障害対応が分散していて運用しづらい Snowflake 内に閉じて開発できず、運用や変更時の導線が分かれやすい こうした状況で検討しやすいのが、dbt Projects on Snowflake への移行です。 Snowflake の公式ドキュメントにはチュートリアルがありますが、実運用を前提に検討す
AWS Bedrockで売上分析AIエージェントを構築してみた はじめに こんにちは。 新人研修の一環として、生成AIを活用した売上分析AIエージェントの開発を行いました。 今回の取り組みでは、ユーザーが自然言語で分析内容を指示すると、その内容に応じたSQLの生成、データ取得、グラフ描画までを自動で実行する仕組みを構築しました。 本記事では、AWS Bedrockを活用した売上分析AIエージェントの構成と、実装にあたって特に考慮したプロンプト設計や構成上のポイントについて紹介します。 システム構成 自然言語で売上分析の指示を入力すると、その内容に応じたグラフを自動生成するア
はじめに 「資格より先に手を動かすべきだ」 「資格で得られる知識は、生成 AI に聞けば十分だ」 こうした意見には、もっともな部分もあります。 実際、資格を取っただけで実務能力が身につくわけではありませんし、実装や運用における現場固有の課題は、実際に手を動かさなければ分かりません。 ただ、そのうえでなお、私は若手エンジニアに資格取得を勧めたいと考えています。 ここで言う資格とは、主に AWS(Amazon Web Services) や Google Cloud などのクラウドベンダー資格を指しています。 理由は、資格学習が単なる知識の暗記ではなく、学ぶべき範囲を定め、自分の担当領域
はじめに 近年、生成AIの進展により、ソフトウェア開発の進め方は大きく変化しつつあります。特に、コード作成が必要とされるいわゆるM(製造)・UT(単体テスト)工程での支援においてAIを活用する取り組みが広がり、従来の開発プロセスとの組み合わせが注目されています。 その中でも、テスト駆動開発(TDD)とAIを組み合わせたアプローチは、品質と開発効率の両立という観点から関心が高まっています。 本記事では、AI支援型開発フレームワーク「Tsumiki」を用いて、Vibe Codingによる簡単なアプリケーション機能を実装してみました。 この記事でわかること Tsumikiの概要 テス
はじめに マイクロサービスアーキテクチャ(MSA)のような多層のアプリケーション・多数の処理ルートを持つシステムでは、タイムアウト値の設計が重要です。呼び出しチェーンのどこかで待ち時間(=タイムアウト値)の整合性が崩れると、想定外のタイムアウトが発生しやすくなるためです。 タイムアウト値の設計では、原則、呼び出し元のタイムアウト時間を、呼び出し先の想定処理時間よりも長く設定するのがベストプラクティスとされていますが、MSAのように、リクエストが通過するルートのパターンが複雑で多様なシステムにおいては、この原則を守った設計の難易度が高まります。 本記事では、私が実際の開発現場で得たタイ
1. はじめに 本記事は、2026年1月15日に開催されたプロジェクトマネジメント学会(以下、PM学会)主催の「2026年 新春PMセミナ」の参加レポートです。 本記事の目的は、PM領域にまだ馴染みの薄い若手エンジニアを主な読者として想定し、セミナで紹介されたフレームワークやリーダーたちの議論を、日々の現場で活かせる形で整理することです。具体的には、以下の内容を扱います。 プロジェクト成功の評価指標が「QCD」から「価値(Value)」へ転換しつつある背景 PMIが提唱するマインドセット「M.O.R.E.」と、パネルディスカッションで紹介された行動指針「SO SO」 セミナを通じて
Appium × Remote Test Kit (RTK) でスマホアプリ試験の自動化スクリプトを構築した話 背景:手動試験の限界 手動試験の問題点 試験の目的は、画面UI崩れの確認、異常系・正常系の機能動作確認です。 そのため、画面遷移・入力操作・結果表示の確認・エラーハンドリングの確認など、一連の操作を実施する必要がありました。 しかし、手動試験には以下のような課題がありました。 1端末あたり約80分の作業時間が必要 作業者依存による操作ミスや証跡取得漏れ スクリーンショット取得後の移動・リネーム・管理の手間 再現性の担保が困難(同じ操作を別の作業者や新規参画者が完全
はじめに NTTデータグループ 技術革新統括本部 AI技術部の小倉 光瑛です。 私は入社1年目から現在まで、iPaaS/API連携基盤チームに所属し、4年間、MuleSoft勉強会の企画・運営に携わってきました。 その間、MuleSoftのDeveloper/Architect関連の資格を4つ取得しながら、どうすればチームとして学びを継続できるかを試行錯誤してきました。 勉強会はチームとして初の取り組みで、大変な面もありましたが、継続して良かった点も多くありました。 本記事を通じて、「エンジニア勉強会を開催してみよう」、「自組織の勉強会にも取り入れてみよう」と感じてもらえたら嬉しいで
はじめに 本記事のテーマ 本記事では、マスタデータ管理における多言語対応をテーマにします。 Informatica IDMCでは多言語化を実現する機能として、ローカリゼーション機能を標準提供しています。 グローバル展開が当たり前となった今、マスタデータ管理(Master Data Management:以降ではMDMと記載)においても多言語対応が必須要件となる場合があります。 Informaticaのローカリゼーション機能は、一般的なシステム開発におけるローカリゼーションの実現方法に比べて、いくつかの優位性があります。 本記事では、一般的なシステム開発におけるローカリゼーションと
! この記事は執筆者個人の体験・見解に基づくものであり、所属組織を代表するものではありません。 ! この記事では、筆者の環境で実際に詰まったポイントと、そのときに有効だった対処を紹介しています。 PC や WSL、SnowSQL、社内ネットワーク、Zscaler の設定によって挙動が異なることがあるため、環境によっては必要な手順や結果が変わる場合があります。 はじめに はじめまして。データマネジメント統括部の田辺と申します。 2025年に入社し、現在(記事公開時点)2年目です。 業務でSnowflakeを使った開発・操作を自動化するために、AIコーディングエージェント(Codex
はじめに 2026年3月24日に、NTTグループ内でKaggle勉強会が開催されました。 本記事では、当日の内容に基づいて、 Kaggleの始め方や活用方法 各社の取り組み 実務との関係 といったポイントを整理します。 これからKaggleに取り組みたい方や、 社内でのデータ分析・AI活用に関心のある方の参考になれば幸いです。 勉強会の概要 本勉強会は、NTTグループ内の有志メンバーによる取り組みとして開催され、 Kaggleに取り組んでいる参加者を中心に、事例や経験の共有が行われました。 目的としては、 Kaggleの理解促進 グループ内のKaggle参加者のネットワー
はじめに はじめまして。 株式会社NTTデータグループ TC&S分野 DSS事業部の平手愛と申します。 Snowflakeには、自然言語からコード生成やデータ分析を支援する「Cortex Code」という機能があります。 本記事では、プログラミング未経験者の視点から、Cortex Codeを使って「SQL生成からダッシュボード作成まで」を一通り検証してみます。 今回試したのは、Snowflake の AI コーディング支援機能である Cortex Code を使って Python コードのたたき台を生成し、そのコードを Streamlit in Snowflake 上で動かしてダッシ
設計書・コード・テストを全部AIに書かせて半年間開発してみたよ 1. はじめに 本記事は、私のチームが半年間AIネイティブ開発を行った経験とその感想をまとめたものです。 AIネイティブ開発とは、AI技術を活用してソフトウェア開発を行うことを指します。2025/10~2026/3の期間中、私たちはお客様に納品するシステムをAIネイティブで開発しました。その経験と私なりに感じたことをまとめてみました。 ※ なお、私の取組は全社的な取組とは関係ありません。 ※ あくまで、私のチームが独自に行っている取組ですので、その点はご留意ください。 2. 自己紹介 初めてテックブログに記事を書
はじめに 「CI/CD ってなんだかふわっとしていてよくわからない」 「実際にどんな流れで動くのかイメージしづらい」 こんな思いから、今回は GitHub Actions を使って静的 HTML を GitHub Pages に自動デプロイする最小構成の CI/CD を試してみたので、記事にまとめます。 本格的な運用設計ではなく、最小の CI/CD を一度動かして、Pull Request から公開までの流れをざっくりつかむことが目的です。 この記事でわかること CI/CD の基本的な考え方 GitHub Actions の役割 Pull Request 作成から GitHub