並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 29 件 / 29件

新着順 人気順

SQLの検索結果1 - 29 件 / 29件

  • 生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」

    生SQLを扱う $queryRaw TypeScript向けのORMライブラリとしてPrismaがあります。Prismaは直感的で型安全なAPIを提供し、TypeScript向けのORMとしては第一に名前が上がることが多いライブラリです。 しかしそんな人気なPrismaでも、裏側では少しクセのあるSQLが発行されていたり、欲しいSQLがPrismaのAPIでは実現できない場合があります。 そういった場合のために $queryRaw というメソッドが用意されており、これを使うことで生SQLを書いてその結果を受け取ることができました。他のORMにもよくある機能です。 例えば以下のように実装することができます。 const users = await prisma.$queryRaw` SELECT id, name FROM "Users" WHERE id = ${userID} `; co

      生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」
    • SQL緊急救命室──非効率なコードを改善せよ!

      2024年9月14日紙版発売 ミック 著 A5判/432ページ 定価3,520円(本体3,200円+税10%) ISBN 978-4-297-14405-0 Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Amazon Kindle honto この本の概要 2011~2012年に『Web+DB Press』誌上で連載された「SQL緊急救命室」の書籍化です。病院を舞台としてダメなSQL文が毎回持ち込まれて,どこが非効率なのか,どこが間違っているのかをコミカルな対話形式で議論しながら効率的で正しいSQL文の書き方を学びます。中級者向けのSQL解説書は内容が難しく読者にとって敷居が高くなりがちですが,本書は初級者と上級者の登場人物の対話形式を採用することで物語調でスムーズに理解できるようにしています。 こんな方におすすめ 「脱初級者」を目指すエンジニア 営業やマーケタ

        SQL緊急救命室──非効率なコードを改善せよ!
      • PrismaのTypedSQLがなぜアツイのか

        Prisma界隈で話題沸騰中(自分調べ)のTypedSQLだが、自分の中ではかなりアツいと思っているので、その理由を語ろう。なおTypedSQLの機能とか仕組みについては記述しないのでドキュメントや以下の記事を参照するとよい。 Prismaの難しさ 複雑なクエリを組み立てるのが特に難しい。複雑といっても何10行もあるようなクエリとかではなく、joinとか集計関数がいくつかあるくらいで十分複雑になる。たとえば特定のユーザーに紐づく記事をコメントの数を含めて取得したいとする。クエリは雰囲気こんな感じ。SQLとしては全然難しくない。 SELECT posts.id, count(comments.id) AS cnt FROM posts INNER JOIN users ON posts.author_id = users.id LEFT JOIN comments ON posts.id =

          PrismaのTypedSQLがなぜアツイのか
        • SQLに対するバックエンドのアプローチ比較、そしてSafeQLの紹介

          はじめに こんにちは。calloc134 です。 バックエンド開発において、DB にデータを保存することはよくあることです。 DB と接続してデータのやり取りを行う必要がありますが、皆さんはどのようにしてデータを取得していますか? ORM やクエリビルダを利用したり、逆に SQL を記述してコード生成を行ったりと、様々な方法があります。 今回はこれらのアプローチについて比較し、比較的斬新な方針を取っているものとして SafeQL を紹介します。 注意点 ここでは、TypeScript のバックエンド開発と、そこで利用されるライブラリを前提として話を進めます。 Go や Python など他の言語での利用方法については、別途調査が必要です。 SQL に対するアプローチ まず、SQL に対するアプローチには大きく分けて 2 つの方法があります。 それぞれのライブラリの使い方を、簡単に見ていきま

            SQLに対するバックエンドのアプローチ比較、そしてSafeQLの紹介
          • PHP アプリケーションのトレース計装ではじめる OpenTelemetry 入門 - Shin x Blog

            OpenTelemetry を利用して PHP アプリケーションのテレメトリデータを計装する方法をまとめました。 本エントリのコードは下記で公開しています。 github.com OpenTelemetry とは 用語 PHP アプリケーションのマニュアル計装(手動計装) 構成 OTel Collector Jaeger 動作環境 必要なパッケージ PHP コード 設定 実行 PHP アプリケーションのゼロコード計装(自動計装) 必要な拡張とパッケージ 設定 PHP コード 実行 さいごに 参照 OpenTelemetry とは opentelemetry.io OpenTelemetry は、サービスやアプリケーションのテレメトリーデータ(トレース、メトリクス、ログなど)を計装、生成、収集、送信するためのオブザーバビリティフレームワークです。ベンダーニュートラルな OSS であり、CNC

              PHP アプリケーションのトレース計装ではじめる OpenTelemetry 入門 - Shin x Blog
            • Announcing TypedSQL: Make your raw SQL queries type-safe with Prisma ORM

              Generate query functions by using the --sql flag on prisma generate: Import the query function from @prisma/client/sql … … and call it inside the new $queryRawTyped function to get fully typed results 😎 If your SQL query has arguments, they are provided to the query function passed to $queryRawTyped The Prisma Client API together with TypedSQL provides the best experience for both CRUD operations

                Announcing TypedSQL: Make your raw SQL queries type-safe with Prisma ORM
              • DMMのGo言語5daysインターンが最高すぎた! - Qiita

                初めて企業のインターンに参加しました。DMMさんのGo言語5daysのインターンです。今回はこのインターンの内容、またGo言語でのAPI開発で学んだTipsを中心に記事を書きます。 温かい目で見てくださると嬉しいです。記事の内容に誤りがあった場合は、いつでもご指摘ください 🙇‍♂️ インターン概要 今回のインターンは8月5日から8月9日の5日間にわたって行われました。最終日はオフィス開催で、4日間はオンラインでの開催でした。 初日と2日目は主にライブラリの使い方を学び、残りの3日間はハンズオン でAPIのエンドポイントを実装しました。このインターンの教材はDMMさんの新卒バックエンド研修の課題として使用されているため、難易度はとても高かったです。 私はGo言語を使用した経験がありますが、本で独学という勉強の仕方だったので、少し古い情報で学んでいたこともあり、 今回最近のバージョンに追加さ

                  DMMのGo言語5daysインターンが最高すぎた! - Qiita
                • Software Design 2024年8月号 連載「レガシーシステム攻略のプロセス」第4回 ZOZOTOWNリプレイスにおけるマスタDBの移行 - ZOZO TECH BLOG

                  はじめに 技術評論社様より発刊されているSoftware Designの2024年5月号より「レガシーシステム攻略のプロセス」と題した全8回の連載が始まりました。 ZOZOTOWNリプレイスプロジェクトで採用したマイクロサービス化のアプローチでは、安全かつ整合性のとれたデータ移行が必須となりました。第4回では、このマスタDBの移行について紹介します。 目次 はじめに 目次 はじめに マスタDB移行 マスタDB移行について 要件と課題 テーブル構成を再設計したうえでデータ移行を実施する ダウンタイムなしでデータ移行を実施する 方針 異なるDBおよびデータスキーマ間で移行を実施するためEmbulkを使用する ダブルライトをリリースし、データ移行中に発生するDBへの書き込みを両DBにアトミックに実施する データを一時DBに格納し、一時DBから移行先DBにデータを移行する BulkloadとBac

                    Software Design 2024年8月号 連載「レガシーシステム攻略のプロセス」第4回 ZOZOTOWNリプレイスにおけるマスタDBの移行 - ZOZO TECH BLOG
                  • Prisma TypedSQL をクエリビルダとしてのみ運用する

                    タイトルのこともできることを検証した。(ORM で文句ない人は ORM として使えばいい) Prisma は TypeScript の優秀な ORM / QueryBuilder だが、Prisma 以外で運用されていると途中から投入するのが(一応可能ではあるが)面倒だったりする。 だが Typed SQL によって、既に存在するDBに対して、副作用なくクエリビルダとしてのみ導入することができるのでは、と思いついて試したところ、できた。 今回はリモートの Supabase の PostgreSQL に対して行ったが、たぶん他の環境にも使える。 d1 とか。 prisma の最小プロジェクトのセットアップ $ mkdir prisma-qb-only $ cd prisma-qb-only ## 初期化 $ pnpm init $ pnpm add prisma @prisma/client

                      Prisma TypedSQL をクエリビルダとしてのみ運用する
                    • フレームワークだけじゃない! 「State of JavaScript 2023」で見直すJavaScriptの人気ライブラリ

                      TOPコラム新発見!フロントエンド技術の今フレームワークだけじゃない! 「State of JavaScript 2023」で見直すJavaScriptの人気ライブラリ フレームワークだけじゃない! 「State of JavaScript 2023」で見直すJavaScriptの人気ライブラリ 2024年9月2日 執筆 山内 直 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)に所属するテクニカルライター。出版社を経てフリーランスとして独立。ライター、エディター、デベロッパー、講師業に従事。屋号は「たまデジ。」。著書に『Bootstrap 5 フロントエンド開発の教科書』、『作って学べるHTML+JavaScriptの基本』など。 監修 山田 祥寛 静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念

                        フレームワークだけじゃない! 「State of JavaScript 2023」で見直すJavaScriptの人気ライブラリ
                      • サイバーエージェントはHBaseからTiDBへ移行、大規模データ処理基盤における検証結果を明かす

                        性能と運用面での変化はどれくらい? 移行における要点整理 記事公開日:2024年8月27日 2024年7月3日に開催された「TiDB User Day 2024」では、オープンソースのNewSQLデータベース「TiDB」が、実際にどのように使われているか、ユーザーによる事例などを通して紹介された。サイバーエージェント グループIT推進本部 データプロダクトユニットの渡邉敬之氏からは、「大規模データ処理基盤におけるHBaseからTiDBへの移行事例」と題して、HBaseの課題と移行先となったTiDBの選定理由が明かされた。さらにHBaseからTiDBへの移行方法、移行後の性能と運用面での変化なども紹介してくれた。 老朽化したHBaseのデータ処理基盤をTiDBに移行 渡邉氏が所属するグループIT推進本部のデータプロダクトユニットは、「データの力で事業成長を加速させる」をミッションに掲げている

                          サイバーエージェントはHBaseからTiDBへ移行、大規模データ処理基盤における検証結果を明かす
                        • 最強のクエリビルダ「kysely」の紹介 ~薄いORMを探して~

                          はじめに こんにちは、畑田です。 最近、RDBを使用しているプロダクトをリプレイスする機会がありました。 このプロジェクトの目標は今現在の使用や実装方針をできるだけそのままに、インフラと技術だけをリプレイスするというものでした。 もちろん、インフラや技術を刷新するということはその上に乗るアプリケーションの実装にも必ず影響を及ぼします。その中で出来るだけ現状の仕様に寄せる試みを行いました。 元のプロジェクトはPHPで書かれており、DBのへの通信においても、文字列とsprintfなどを使用し、生のSQLを書いてpg_queryで実行していました。 私はこれを再現する最も安全な方法を探しました。 Prismaなどを用いたactive record形式のORMを使用するより、SQLに近い書き味のクエリビルダーを求めてkyselyに辿り着きました。 あまり情報が第三者からの情報が出てきていないように

                            最強のクエリビルダ「kysely」の紹介 ~薄いORMを探して~
                          • インターンの二週間で社内APIを新しく建て本番リリースまで何でもやった話【ソフトウェアエンジニアインターン参戦記】 - エムスリーテックブログ

                            はじめまして。河村 (@KowerKoint2010)です。 この夏、エンジニアリンググループ AI・機械学習チームで2週間の新卒ソフトウェアエンジニアインターンに参加しました。 インターンでは、「Yucca」という内部サービスの改善を担当しました。 当初与えられた課題については設計・開発から本番環境へのリリース、そしてユーザーへの利用法説明まで行い、まだ時間に余裕があったので追加でデータベースの改善も検討しました!*1 ここでは私がやったことを簡単に紹介しつつ、エムスリーという会社で働いてみた感想を伝えます。 エムスリーでのインターンや就職を考えている他の学生の参考になれることを願っています。 最終日にエムスリークリアファイルをプレゼントしたときの様子 Yuccaについて簡単に紹介 BigQueryに特定のフォーマットでデータを置くと、それをクローリングしてきて自動でAPIとして提供する

                              インターンの二週間で社内APIを新しく建て本番リリースまで何でもやった話【ソフトウェアエンジニアインターン参戦記】 - エムスリーテックブログ
                            • 本番環境における等価比較を活用した言語リプレイス - ZOZO TECH BLOG

                              はじめに こんにちは。基幹システム本部・物流開発部の上原です。昨年度に中途入社しまして、現在はZOZO基幹システムのリプレイスを担当しています。前職では、SESエンジニアとしてリプレイスプロジェクトに上流工程から参画し、大規模なシステムの言語リプレイスを経験してきました。さて私の紹介はこの辺りにして本題に入ります。 基幹システムリプレイスは既に進行しており、本年度には発送領域の機能を発送マイクロサービスとして切り出してリリースしました。それに続いて、入荷領域の機能をマイクロサービス化ではなくモジュラーモノリスに移行するリプレイスも進んでおり、こちらは細かく区切った単位でリリースをしています。 本記事では、自動テストによる「等価比較」を本番環境で実施しながら言語リプレイスを進めた事例を紹介します。この事例では、「言語間での処理の等価性を保証し、安心・安全にリプレイスをする」ということを目的と

                                本番環境における等価比較を活用した言語リプレイス - ZOZO TECH BLOG
                              • 地銀勘定系の存在意義、富士通はPROBANK事業から撤退

                                勘定系システムを巡って、地方銀行の判断が真っ二つに割れている。北國銀行や静岡銀行、福島銀行は勘定系システムを競争力の源泉と位置付け、アプリケーションの全面再構築を選択した。「COBOLの勘定系システムを塩漬けにすることはできない」。北國銀行で執行役員システム部長を務める新谷敦志氏は力を込める。 「勘定系システムは未来の銀行においてビジネスモデルの中核になり得る」。こう語るのは、しずおかフィナンシャルグループ執行役員CIO(最高情報責任者)の鈴木統也氏だ。傘下の静岡銀行は2021年1月、日立製作所のオープン勘定系パッケージである「OpenStage」を活用して、勘定系システムを刷新した。同行はOpenStageの共同開発元であり、第1号ユーザーでもある。2度の延期などで投資額は400億円超に膨らみ、稼働後も例外的な処理の扱いなどに苦労し、安定運用フェーズに入るまで時間を要した。 それでもメイ

                                  地銀勘定系の存在意義、富士通はPROBANK事業から撤退
                                • tanukirpcというWebフレームワークを作っています - ぱいぱいにっき

                                  最近の盆栽ですけれど、tanukirpcというGoのWebフレームワークを書いています。ある程度やりたいことができはじめてきたので、どんなフレームワークかを紹介します。 github.com TL;DR Webアプリケーションでよくやるようなことを、最短手順で自然に書けるように設計したフレームワーク リクエストをパースして構造体にマッピングする リクエストの内容をバリデーションする レスポンスの構造体をエンコードしてレスポンスとして書き込む グローバルスコープもしくはリクエストスコープでの構造体のコントローラーへの依存性注入 DBコネクションやAPIクライアントの保持などに使う 現在の責務範囲はWebアプリケーションのコントローラーだが、Webアプリを作る時によくやるようなことはできるだけやれるようにしてく tanukiup 開発サーバー起動用コマンド。ファイル更新を監視してビルドおよびサ

                                    tanukirpcというWebフレームワークを作っています - ぱいぱいにっき
                                  • 空港とコックピットのセキュリティがSQLインジェクション攻撃で突破可能だったという指摘

                                    アメリカ運輸保安庁(TSA)は、パイロットや客室乗務員がオフの時でも保安検査をパスできる「KCM(Known Crewmember:既知の乗組員)」と呼ばれるプログラムを設けています。同様に、コックピットへの立ち入り時にもKCMと似たような「CASS(Cockpit Access Security System:コックピットアクセスセキュリティシステム)」という仕組みがあり、認定パイロットであると確認されるとコックピット内の補助席を利用することができます。このKCMとCASSが、SQLインジェクション攻撃で突破可能だったと指摘されています。 Bypassing airport security via SQL injection https://ian.sh/tsa Bypassing airport security via SQL injection | Hacker News htt

                                      空港とコックピットのセキュリティがSQLインジェクション攻撃で突破可能だったという指摘
                                    • バージョン1.0リリース記念:Rust製データフレームライブラリ、Polarsの進化した機能を試す | gihyo.jp

                                      これらのメソッドを使用することで、データフレームの列に対して.when()で定義した条件に従ってデータの操作を行えます。たとえば以下のサンプルスクリプトでは、楽器名と演奏者数のデータフレームに対して条件により「Group」列を追加しています。 example03.py:.when()で指定された条件で新たな列を追加するサンプル import polars as pl # サンプルデータフレームを楽器名と演奏者数で作成 df = pl.DataFrame( { "Instruments": ["Violin", "Trombone", "Flute", "Cello", "Trumpet"], "Players": [5, 1, 3, 2, 1], } ) # 新しい列 'Group' を条件に基づいて作成 df = df.with_columns( pl.when(pl.col("Play

                                        バージョン1.0リリース記念:Rust製データフレームライブラリ、Polarsの進化した機能を試す | gihyo.jp
                                      • The 4-chan Go programmer

                                        Introduction We're using Go to write Dolt, the world's first version-controlled SQL database. Like most Go codebases, we use channels and goroutines to implement concurrent execution. Usually we use these constructs in the most boring and straightforward way possible, because concurrent programming is hard enough without trying to be clever. But at one point we inherited some code from another ope

                                          The 4-chan Go programmer
                                        • 仮想カラムと関数インデックスを使ったSQLパフォーマンス改善の話 - asoview! Tech Blog

                                          はじめに こんにちは、アソビュー株式会社でバックエンドエンジニアをしています竹村です。 ありがたいことにアソビューのサービスも長く続き、ご利用いただいているユーザーが増えるにしたがってデータも増え、SQLのパフォーマンス改善を行なうタスクが増えてきました。 今回はそんなSQLのパフォーマンス改善をしているなかで遭遇した問題とその対策について書こうと思います。 問題の概要と背景 パフォーマンス上問題がありそうなクエリを調査しているなかで、ごく一部のテーブルですが、数値であるべきカラムが誤って文字列型で定義されていたことがわかりました。 そしてこの型の不一致が原因で、SQLクエリの実行時にインデックスが効率的に利用できず、結果としてクエリのパフォーマンス低下を引き起こしていました。 問題の詳細 実際のテーブルとは大幅に変更、簡略化していますが、下記のような感じで本来user_statuses.

                                            仮想カラムと関数インデックスを使ったSQLパフォーマンス改善の話 - asoview! Tech Blog
                                          • 【PGlite:Part2】pg-gatewayを利用したTCP接続 - RAKUS Developers Blog | ラクス エンジニアブログ

                                            はじめに 復習:PGlite pg-gateway pg-gatewayとPGliteを起動してSQLクライアントから接続する まとめ はじめに こんにちは、エンジニア2年目のTKDSです! 前回はPGliteの概要・使い方・速度実験について記事にしました。 今回はさらに、PGliteへのSQLクライアントからの接続を可能とするpg-gatewayについて紹介し、活用例について示します。 復習:PGlite PGliteは、PostgreSQLをWebAssembly(WASM)にコンパイルした軽量なデータベースエンジンです。 これにより、ブラウザ、Node.js、Bun、DenoなどでPostgresの機能を利用でき、開発者はローカルやサーバーレス環境でデータベース操作を行うことが可能です。 PGliteは、インメモリデータベースやファイルシステム(Node.jsやBun)、Indexe

                                              【PGlite:Part2】pg-gatewayを利用したTCP接続 - RAKUS Developers Blog | ラクス エンジニアブログ
                                            • SQLのFULLTEXT INDEXとElastic Searchの速度比較 | 株式会社divx(ディブエックス)

                                              目次[非表示] 1.はじめに 2.SQLとElastic Searchの違いとは? 3.Elastic Searchの環境構築(Mac) 4.何を検証するのか 4.1.レコード数での比較 4.1.1.テストデータの準備 4.1.1.1.SQL側の準備 4.1.1.2.Elastic Search側の準備 4.1.2.検証 4.1.3.結果 4.2.文字数の速度比較 4.2.1.テストデータの準備 4.2.2.検証 4.2.3.結果 4.3.重複文字で比較 4.3.1.テストデータの準備 4.3.2.検証 4.3.3.結果 5.まとめ 5.1.結果の分析 5.2.結果 6.お悩みご相談ください はじめにこんにちは、株式会社divxでエンジニアをしている清水です。 以前、私はプロジェクト内でElastic Searchを導入するか、あるいはSQLのフルテキストインデックスを使用して全文検索を行

                                                SQLのFULLTEXT INDEXとElastic Searchの速度比較 | 株式会社divx(ディブエックス)
                                              • SnowflakeのマイクロパーティションはSQLを進化させ続ける(ORDER BY×LIMITの場合)

                                                Snowflakeのマイクロパーティション Snowflakeのデータウェアハウスとしてのスケーラビリティ、パフォーマンス、多くの有用な機能の根源の一つに、マイクロパーティションというアーキテクチャの良さがあります。 Snowflakeはオブジェクトストレージ上に構成されたマイクロパーティションと、そのメタデータを徹底的に最適化することで、ACID制御からタイムトラベルまで、多くの機能をとてもうまく実装しています。(でもこのアーキって最近よく聞くIcebergや他のオープンテーブルフォーマットとちょっと似てない?というのは今回とは別のお話) マイクロパーティションを超わかりやすく解説されているほーりーさんの素晴らしい記事はこちら。 このマイクロパーティションはプルーニングという仕組みにより、Snowflakeのパフォーマンス向上に絶大な影響を与えています。解説記事はこちら。 最近、マイクロ

                                                  SnowflakeのマイクロパーティションはSQLを進化させ続ける(ORDER BY×LIMITの場合)
                                                • Go1.23 New Features

                                                  Go1.23が8月13日にリリースされ、リリースノートや概要のブログが公開されました。 前回の New Features から1回分空いてしまいましたが、改めまして、この記事ではGo1.23の中から気になった新機能についてご紹介していきます。 spec Go1.22で実験的に導入されていたrange-over funcがGo1.23で本格導入されています。Goでループをまわす際はrangeを使いますが、このrangeが受け取れる型として、以下のシグネチャを持つ関数型が追加されました。 func(func() bool) func(func(K) bool) func(func(K, V) bool) これらの関数はiterator functions(イテレータ関数)と呼ばれています。 イテレータ関数が導入されて何が嬉しいか、これだけだとよく分からないかと思いますが、その導入背景や基本的な

                                                    Go1.23 New Features
                                                  • Datastreamの本番運用に向けてつまづいたこととわかったこと

                                                    はじめに お世話になっております。primeuNumberの庵原です。 処暑の候、いかがお過ごしでしょうか。 今回はGoogle CloudのDatastreamを本番運用開始するにあたって検証した内容や構築に際してつまづいた点やTipsなどを共有できればと思います。 対象 Datastreamについて興味がある方 RDBMSからBigQueryへのレプリケーション(複製)の実際のソリューションが気になる方 DatastreamのTipsやつまづいた点が気になる方 Datastreamについての説明 概要 ・MySQL、PostgreSQL、AlloyDB、SQL Server、Oracle データベースからのストリーミング データへのアクセス ・BigQuery for Datastream を使用した BigQuery で、ほぼリアルタイムの分析を実現 ・安全性の高い組み込み接続が利用

                                                      Datastreamの本番運用に向けてつまづいたこととわかったこと
                                                    • Bypassing airport security via SQL injection

                                                      08/29/2024 IntroductionLike many, Sam Curry and I spend a lot of time waiting in airport security lines. If you do this enough, you might sometimes see a special lane at airport security called Known Crewmember (KCM). KCM is a TSA program that allows pilots and flight attendants to bypass security screening, even when flying on domestic personal trips. The KCM process is fairly simple: the employe

                                                        Bypassing airport security via SQL injection
                                                      • DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話

                                                        【DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話】というタイトルでDevelopers Summit 2024夏に登壇しました。 ▼登壇資料 本記事では「登壇内容」、「登壇した経緯」、「登壇内容への自分自身の振り返り」の順でまとめていきます。すでに登壇を聞いていただいたり資料を見ていただいた方は、後半の章から読んで頂けますと幸いです。 登壇内容 どんな発表? よくある取り組みや設計ルールに対して 「無視していること」 「遵守していること」 「バランスを取っていること」 をそれぞれ事業・組織・プロダクト特性などの観点から説明します。 つまり アーキテクチャ論でよく聞く「要はバランス」の具体例を徹底的に解説します! 私がアーキテクチャを学んだ経緯 CTOが「要はバランス」と言いたくなるアーキテクチャ論を、スタートアップの立ち上げを通して学んできた経緯を話しつつ

                                                          DDDを志して3年経ったら「DDDの皮を被ったクリーンアーキテクチャ」になった話
                                                        • Flywayのマイグレーションの管理を考えてみる(Spring Bootでのサンプル付き) - CLOVER🍀

                                                          これは、なにをしたくて書いたもの? Flywayのマイグレーションをどう管理するのがいいのかなと悩んだことがあって、ちょっとまとめておこうかなと。 方針? Gitを使い、ブランチで開発 → マージする、といったフローを組んでいるチーム開発を背景にしています。 こういう感じで考えました。 マイグレーションファイルのバージョンは日付をベースにする 環境ごとにディレクトリを分ける DDL(DCLも?)とデータ(DML)でディレクトリを分ける (気になるなら)Out Of Orderを許可する ちょっとずつ書いていきます。 引用しているFlywayのドキュメントは、Flyway 10.17.2時点の情報で参照しています。 マイグレーションファイルのバージョンは日付をベースにする Flywayのドキュメントで、マイグレーションのページを見るとバージョニングされたマイグレーションファイル名の例で最初に

                                                            Flywayのマイグレーションの管理を考えてみる(Spring Bootでのサンプル付き) - CLOVER🍀
                                                          • Google、Gemini in BigQueryを正式公開!データ分析に革命が起きそう — 自然言語でデータ分析可能、更に分析用プロンプトをAIが提案

                                                            8月29日、GoogleはGemini in BigQueryの複数の新機能を正式に提供開始した。 Gemini in BigQueryとは、Google Cloudのデータ分析プラットフォームであるBigQueryにAI機能を統合した新しいサービスであり、データ分析作業の効率を飛躍的に向上させる。これにより、ユーザーはAIを活用して複雑なデータセットの分析や重要な情報の抽出を、より簡単かつ迅速に行うことができる。 特に注目すべきは、自然言語での指示を通じてAIが適切なSQLクエリやPythonコードを生成する機能である。たとえば、ユーザーは次のように指示を出すことができる: 「このテーブルの各製品ごとの総売上を計算して。」 「pandasを使って、製品の売上と顧客レビュー数の相関を求めるPythonコードを書いて。」 「サブスクライバータイプ別に平均旅行時間を計算して。」 これらの指示を

                                                              Google、Gemini in BigQueryを正式公開!データ分析に革命が起きそう — 自然言語でデータ分析可能、更に分析用プロンプトをAIが提案
                                                            1