並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 24 件 / 24件

新着順 人気順

sqlalchemy create_engineの検索結果1 - 24 件 / 24件

  • FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト アンビ(AMBI)

    FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ PythonのWebフレームワークとしていま注目を集めるFastAPIは、シンプルにコードが書けるだけでなく、パフォーマンスが高いWebアプリケーションのバックエンドサーバーが構築可能です。同フレームワークの勘所をPythonスペシャリストの杜世橋さんが、初心者向けのハンズオン、そしてより実践的な画像への自動タグ付けサービス実装をとおして解説します。 FastAPIはいま非常に注目されているPythonのWebフレームワークの1つです。Flaskのようにシンプルに書ける一方でPythonのType Hintの機能をうまく活用し、HTTPのリクエスト/レスポンスをPythonの関数の引数/戻り値とシームレスにマッピングして非常に効率的に開発ができるのが最大の特徴です。非同期処理にも対応していてその名

      FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト アンビ(AMBI)
    • PythonでDDDやってみた💪 - techtekt

      はじめに 実行環境 ディレクトリ構造 app migrations/model pyproject.toml ソースコードと簡単な解説 app/core app/core/abstract app/core/decorator app/core/exception app/core/interface app/core/middleware app/core/mixin app/ddd app/ddd/application app/ddd/application/schema app/ddd/application/schema/studnet app/ddd/application/usecase app/ddd/application/usecase/student app/ddd/domain app/ddd/domain/student app/ddd/infra app/ddd

        PythonでDDDやってみた💪 - techtekt
      • pytest でテストケース毎に DB を自動的に初期化して、テスト開発体験を向上させる - SalesNow Tech Blog

        概要 Web バックエンドのテストコードを書く場合、その多くは DB に依存していることが多いです。 DB 関連のテストは、テストデータの準備やテストケース毎の DB 処理化を適切に行うことが重要ですが、手間がかかる場合あるため、Mock で擬似的にテストしてしまうことも多いかと思います。 ただ、Mock を使ったテストは本質的な問題を検知できない意味のないテストになってしまう可能性があり、可能な限り DB の Mock を行わずに、実際の DB を使用してテストすることが望ましいと考えています。 本記事では、pytest、sqlalchemy、PostgreSQL を使った場合に、テストケース毎に DB を簡単に初期化しつつ、テストケース毎の前提データ登録も簡単うことでテスト開発体験を向上させる方法を紹介します。 前提環境 本記事では、以下の環境を前提として説明いたします。 python

          pytest でテストケース毎に DB を自動的に初期化して、テスト開発体験を向上させる - SalesNow Tech Blog
        • 【データ基盤構築/AWS Lambda】Pythonを使ってSnowflakeのデータをRDSにinsertする - Qiita

          import sys import json import boto3 import ast import os import snowflake.connector import pymysql from snowflake.connector import DictCursor from sqlalchemy import create_engine from sqlalchemy.sql import text from datetime import datetime def lambda_handler(event, context): # 今日の日付とSQLを実行する日時を変数で用意 today = datetime.now() updated_at_str = datetime.strftime(today, '%Y-%m-%d %H:%M:%S') ## Snowflake

            【データ基盤構築/AWS Lambda】Pythonを使ってSnowflakeのデータをRDSにinsertする - Qiita
          • FastAPIのテストコードを書いてDIの重要性を知った話

            きっかけ こんにちは、ランサーズでエンジニアをしている岡田です。 当時は開発スピード優先でテストコードなんて二の次。 DIの概念は知りつつも、「DIを意識した開発コードって?」「DIを意識すると何が良いの?」と分からないままでした。 それでも、FastAPI+sqlalchemyの開発では、DBを使う時に大抵エンドポイントの引数にdb: Session = Depends(get_db)が出てきます。 「どうしてエンドポイントの内部ではなく引数で書くのか?」といまいち納得しないまま、FastAPIの書き方に従っておまじないのようにDependsを書いてました。 そして、開発コードも増えて「ずっと手動でテストしてるわけにもいかないし、そろそろテストコードを書いて品質担保しないとな」と重い腰を上げた時、とうとうDIの重要性とDependsの真価を実感することになりました。 そもそもDI(Dep

              FastAPIのテストコードを書いてDIの重要性を知った話
            • FastAPI SQLModel 入門 - Qiita

              SQLModel はPythonコードから SQL databases と会話するためのライブラリです。ここでは FastAPI での使われ方を見ていきますが、FastAPIとは独立したものとして設計されています。 SQLModelはFastAPI の作者が自ら作成しており、SQLAlchemy と Pydantic の両方との互換性を保っています。Pydantic はデータ検証のためのPythonライブラリです。Pythonのtype hintが使われます。ですからPydanticクラスはAPIの入り口であるパスオペレーション関数で使われることが一般的です。 過去記事「FastAPI と SQL Databases(SQLAlchemy)」でFastAPIで SQLAlchemy を使ってSQL Databaseを扱う方法を述べましたが、SQLAlchemy と Pydantic の2重

                FastAPI SQLModel 入門 - Qiita
              • SQLAlchemyの基本的な使い方 - Qiita

                SQLAlchemyとは SQLAlchemyとは,Pythonの中でよく利用されているORMの1つ. ORMとは,Object Relational Mapperのことで,簡単に説明すると,テーブルとクラスを1対1に対応させて,そのクラスのメソッド経由でデータを取得したり,変更したりできるようにする存在. ORMの利点とは 1. 異なるDBの違いを吸収してくれる DBの種類によらず,同じソースコードで操作できるので,複数のDBを併用する場合や,DBを変更する場合にも,コードの書き換えの必要がない. 2. SQLを書かなくてもよい MySQLや,SQLite,PostgreSQLなどのDBを操作するにはSQLを使うが,SQLAlchemyを使うと,SQLを直接記述することなしに,DBを"Pythonic"に操作できる. SQLAlchemyの使い方 簡単な流れとしては,どのDBにどうやって

                  SQLAlchemyの基本的な使い方 - Qiita
                • TerraformとCloud RunとCloud Load BalancingでCI/CDを突き詰めた

                  こんにちは。 ピリカ開発チームの伊藤です。 ピリカでは6月1日より、ピリカサポーターズクラブを開始しました。 まだご覧になっていない方はこちらをご覧ください。 corp.pirika.org ピリカサポーターズクラブをはじめるにあたって新しいシステムを構築しました。 ピリカの開発チームのリソースは潤沢ではない中、全く新しいシステムを作るのはとても大きなチャレンジです。 社内からも「開発のリソースが潤沢でないならSNSピリカに注力すべき」という意見はありましたが、開発チームでは単に新しいシステムを作るだけではなく、この開発を「SNSピリカの開発を今後少ないリソースで効率的に進めるために必要な基盤の実験」としても位置付けていました。 この開発を通じて得たことのまとめとして、ピリカサポーターズクラブの構成やデプロイの仕組みをご紹介したいと思います。 SNSピリカの開発で抱えている問題 SNSピリ

                    TerraformとCloud RunとCloud Load BalancingでCI/CDを突き詰めた
                  • 【ECS】タスクロールとタスク実行ロールの違いをサンプルアプリで検証してみた - サーバーワークスエンジニアブログ

                    クラウドインテグレーション2部技術3課の山下です。 今回は、Amazon Elastic Container Service(以下、ECS)の タスクロールとタスク実行ロールの違いについて、 簡単なサンプルアプリを用意して検証してみたいと思います。 (背景) タスクロールとタスク実行ロールの違いがピンと来なかった (結論) アプリのコードでAWSリソースへアクセスする場合、タスクロールに権限をつける 検証してみる 構成 データベース IAMポリシー IAMロール パターン1:コンテナ上のアプリケーションからSecrets Managerにアクセスする パターン1サンプルアプリ 検証結果(タスクロールに権限をつけた場合のみ成功) パターン2:コンテナ定義の環境変数にSecrets Managerのシークレット情報を格納する コンテナ定義 サンプルアプリ 検証結果(タスク実行ロールに権限をつけ

                      【ECS】タスクロールとタスク実行ロールの違いをサンプルアプリで検証してみた - サーバーワークスエンジニアブログ
                    • 【SQLAlchemy】sessionの作成はどの方法がいいのか?考えてみた - とりあえずの独り言

                      概要 sessionクラスを使う session_markerクラスを使う scoped_sessionクラスを使う(オススメ) session のクローズについて 補足(auto_flush, auto_commit設定について) 補足(トランザクションについて) 概要 SQLAlchemyでは、sessionの作成方法が複数あって結局どれがいいの?っていうのをいろいろ考えてみた。 ちなみに、Flaskなどのフレームワークを利用している場合はSQLAlchemyをラップしたFlask-SQLAlchemyなどがあるのでここら辺を利用するとsession周りは良しなにやってくれます。 フレームワークを使わないような、ツールやバッチ系などではSQLAlchemy単体で使うことも多いと思うのでそういう人向けです。 参考: SQLAlchemyのSession生成方法 - Qiita 【Pyth

                        【SQLAlchemy】sessionの作成はどの方法がいいのか?考えてみた - とりあえずの独り言
                      • SQLAlchemyでテーブル設計とORMの操作

                        SQLAlchemyとは SQLAlchemyは、PythonのORMの1つで、Pythonでは一番有名なORMでもあります。ORMとしては、SQLインジェクション対策が標準でサポートされています。ただのORMとしてではなく、テーブル設計を行うのにも非常に便利です。 ここではSQLAlchemyの使い方について紹介します。DBはPostgresqlやMySQLではなく、簡易的なはSQLiteを使用します。 ORMとは Object-Relational Mappingの略です。 オブジェクト志向言語のクラスとRDBとのマッピングを行ってくれるのがORMです。SQLをオブジェクト指向で書けるようになります。 ORMの利点をまとめると主に以下の2つの点があります。 異なるDBの違いを吸収する MySQLやPostgresqlといったデータベースの種類によらず、同じソースコードで操作できます。

                          SQLAlchemyでテーブル設計とORMの操作
                        • LangChainでBigQueryデータを使ったグラウンディングを実装してみた - G-gen Tech Blog

                          G-gen 又吉です。当記事では、Google Cloud の LLM (Vertex AI PaLM API) と LangChain を組み合わせて、自然言語から BigQuery 上の統計データを取得する方法を紹介します。 はじめに 準備 実行環境 使用するデータ 実装 ライブラリのインストール 関数の定義 概要 解説 実行 はじめに LangChain とは、大規模言語モデル (LLM) アプリケーションを効率よく実装するためのフレームワークです。LangChain についての詳細は以下の記事をご参照ください。 blog.g-gen.co.jp LangChain にはさまざまな機能が提供されておりますが、今回は Agents 機能を用いて SQL データベースと対話するエージェントを作成します。 LLM のハルシネーション (幻覚) を抑制する手法として、指定した情報源だけに基づ

                            LangChainでBigQueryデータを使ったグラウンディングを実装してみた - G-gen Tech Blog
                          • FastAPI の Dependency Injection (Depends + Injector )

                            はじめまして、株式会社 neoAI というところでソフトウェアエンジニアをしている Moriyasu といいます。 今回は弊社として初めてのソフトウェアのブログを担当させていただくことになりました。 さて、年末年始はみなさんいかがお過ごしでしたか? 僕は暇だったので、自社プロダクトを Flask から FastAPI に移行するコーディングをずっとやっていました。FastAPI を"完全に理解"したので、今回は FastAPI での Dependency Injection (依存性の注入) について解説します。 前提 今回出てくる技術について先にさらっておきます。 FastAPI: 高速でモダンな API を構築するための Python フレームワーク SQLAlchemy: Python の ORM ライブラリ Injector: Python の Dependency Injecti

                              FastAPI の Dependency Injection (Depends + Injector )
                            • 自律型AIソフトウェアエンジニア『Devin AI』を試してみた:実践レビューとリアルな所感

                              はじめに Rehab for JAPANでCTOを務めている@rkyuragiです! 最近話題のAIエージェントの『Devin AI』。 月額$500という個人で使うには少しハードルが高い価格設定ですが、好奇心には勝てず、思い切って個人で契約し使ってみました。 まだ使い始めて間もないですが、実際に使ってみた感想や、Devin AIについて理解したことを荒く共有し、興味ある方の参考になれば幸いです! 本記事のターゲット Devin AIが気になっているが試すことに踏み切れないエンジニア Devin AIにどのようなタスクを依頼すればいいのかわからないエンジニア どのような効果があるのか知りたいエンジニア Devin AIとは Devin AIは、Cognition AI社が開発した自律型AIソフトウェアエンジニアです。SlackやGitHubと連携した上で自然言語での指示に基づき、コードの計

                                自律型AIソフトウェアエンジニア『Devin AI』を試してみた:実践レビューとリアルな所感
                              • FastAPIとSQLAlchemy2.0ならもう型ヒントを諦めなくていい - Sogo.dev

                                サチコ(Google Search Console)を眺めていたら FastAPI MySQL がそれなりに需要ありそうと思ったので、FastAPI と SQLAlchemy を組み合わせて ORM を使う方法を紹介したいと思います。最近の SQLAlchemy(1.4以降)ではマッピングされたオブジェクトに型を適用することもできるので、型ヒントを活かして型安全なコードを書くことも難しくなくなっています。 環境 Python 3.10.6 FastAPI 0.89.1 SQLAlchemy 2.0.1 Docker 20.10.13 Docker Compose v2.3.3 前提 FastAPI 公式ドキュメントの SQL (Relational) Databases のページを熟読しておいてください。 2023年1月にリリースされた SQLAlchemy 2.0を使用します。1系を使用

                                  FastAPIとSQLAlchemy2.0ならもう型ヒントを諦めなくていい - Sogo.dev
                                • Cloud SQL Auth Proxyを使用してCloud RunからCloud SQLに接続する - G-gen Tech Blog

                                  G-gen の佐々木です。当記事では、Google Cloud (旧称 GCP) のサーバーレスコンテナサービスである Cloud Run から、マネージドなリレーショナルデータベースサービスの Cloud SQL に安全に接続する方法を紹介します。 使用するサービス Cloud Run Cloud SQL Cloud Run から Cloud SQL に接続する方法 サーバーレス VPC アクセスコネクタ の使用 Cloud SQL Auth Proxy の使用 Cloud SQL の作成と設定 Cloud SQL インスタンスを作成する データベースを作成する ユーザーを作成する Cloud SQL に接続する Cloud Run サービスを作成 Cloud Run サービスに紐付けるサービスアカウントを作成する サンプルアプリケーションを Cloud Run にデプロイする サンプル

                                    Cloud SQL Auth Proxyを使用してCloud RunからCloud SQLに接続する - G-gen Tech Blog
                                  • sqlalchemy で engine の作り方に注意 - Qiita

                                    はじめに threading を用いた並行処理をさせる常駐型の Python プログラムにおいて、データベースに接続する際に sqlalchemy の create_engine の使い方を間違えるとデータベース接続数が爆増してしまうので注意が必要です。本稿ではそれについて簡単に説明したいと思います。 TL;DR 以下のいずれかの方法を選択すると必要以上に接続数が増えることはないでしょう。 create_engine() はプログラム開始時に一回だけ呼んで Engine クラスインスタンスを使い回す NullPool を指定してコネクションプールを使わないようにし、scoped_session でセッションを生成する 環境 以下の環境で実験しています。 項目名 バージョン

                                      sqlalchemy で engine の作り方に注意 - Qiita
                                    • DB->BQデータ転送をミニマムにpythonとGCPコマンドだけで作る - Qiita

                                      import json import os from pathlib import Path import pandas as pd from dotenv import load_dotenv from invoke import task from pyarrow import Table from pyarrow.parquet import ParquetWriter from sqlalchemy import create_engine, inspect, types from sqlalchemy.dialects import mysql from sqlalchemy.engine.url import URL load_dotenv() PROJECT_ID = os.environ["PROJECT_ID"] DATASET_ID = os.environ["DATA

                                        DB->BQデータ転送をミニマムにpythonとGCPコマンドだけで作る - Qiita
                                      • Python製ETL「dlt」を選んだ話 - Azure Cosmos DB for PostgreSQL × Container App Jobでいい感じにDatalakeを構築する - LayerX エンジニアブログ

                                        こんにちは。LayerX Ai Workforce事業部でSREをしています @shinyorke(しんよーく)と申します。 最近はAi Workforceのデータ周りの基盤を作る仕事をしながら、個人としては野球解説AI Agentの開発を頑張っています。 本ブログでは、Ai Workforceのデータ周りの基盤のコンポーネントの一部であるELTの選定をどうしたかについて執筆します。 特に今回は、 マネージドサービス(Azure Data Factory、通称ADF)での構築・実装を検討していたが なぜ断念したのか ADF の代替として dlt + Container App Job を選んだ経緯と、実際どうだったか Azure Cosmos DB for PostgreSQL の Read Replica を相手にしたときに ハマった点と対策 を中心に共有できればと思います。 なお、以下

                                          Python製ETL「dlt」を選んだ話 - Azure Cosmos DB for PostgreSQL × Container App Jobでいい感じにDatalakeを構築する - LayerX エンジニアブログ
                                        • Web アプリを作成して SQL インジェクションから保護してみた - G-gen Tech Blog

                                          当記事は みずほリサーチ&テクノロジーズ × G-gen エンジニアコラボレーション企画 で執筆されたものです。 Cloud Armor は Google Cloud でセキュアな Web アプリケーションを構築するために欠かせないプロダクトです。 代表的なアプリケーションへの攻撃である SQL インジェクションを題材に、CloudArmor の機能を体験できるハンズオンを整備しました。 G-gen の片岩です。 当記事ではサーバレスな Web アプリケーションを構築し、SQL インジェクション攻撃から保護するまでの手順をご紹介します。 Cloud Armor はじめに Cloud Armor とは 当記事の概要 関連記事 構成図 作成するアプリケーション 事前準備 Google Cloud にアクセス プロジェクトIDの確認 Cloud Shell の起動 変数PROJECT_IDの設定

                                            Web アプリを作成して SQL インジェクションから保護してみた - G-gen Tech Blog
                                          • 総合職の新卒1年目が、自社のデータ構造に合わせたSQL生成AIを作ってみた | CyberAgent Developers Blog

                                            この記事は CyberAgent Developers Advent Calendar 2023 17日目の記事です。 株式会社WinTicketで競輪事業のキャペーン設計や運用、分析を担当しています。2023年ビジネスコース新卒入社の村瀬拓登です。 私はエンジニア職ではありませんが、社内の課題を解決するにあたり生成AI活用にチャレンジしたので、僭越ながらその記録を投稿させていただきます。 今回、CyberAgentメディア事業部 Data Science Centerの若松さん(機械学習エンジニア)の全面サポートにより実現できました! この場を借りて御礼申し上げます!ありがとうございました! はじめに 弊社では現在、競輪・オートレースの投票サービス「WINTICKET」を提供しており、業界最後発ながらシェアNo.1まで事業を拡大してきました。 弊社は日々のデータドリブンな意思決定でグロー

                                              総合職の新卒1年目が、自社のデータ構造に合わせたSQL生成AIを作ってみた | CyberAgent Developers Blog
                                            • SQLAlchemyのセッション・トランザクションを理解する - Sogo.dev

                                              SQLAlchemy の Session や scoped_session、トランザクションに関して理解していきます。 用語おさらい セッション(Session) SQLAlchemy の Session オブジェクトは、ORM マッピングされたオブジェクトの永続化に関する操作を管理するオブジェクトです。 sqlalchemy.orm.Session を直接インスタンス化しても良いですが、実環境では sessionmaker を使うことが一般的です。sessionmaker は Session オブジェクトを作るためのファクトリで、任意の設定をした Session オブジェクトを生成することができます。 from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker engine = create_e

                                                SQLAlchemyのセッション・トランザクションを理解する - Sogo.dev
                                              • SQLAlchemy同期/非同期の比較 - Qiita

                                                PythonのフレームワークであるFastAPIを触る機会があって、その中で非同期プログラミングの存在を知りました。 非同期プログラミングについて色々調べていくと、DB接続も非同期処理に対応してきていることが分かり、PythonのSQLライブラリで有名なSQLAlchemyもバージョン1.4から非同期処理に対応しているようです。 時代は非同期プログラミングみたいですね。 ただSQLAlchemyの非同期処理の記事がまだ少なく、同期処理から非同期処理に変えるときに、苦労しそうなので、今回はSQLAlchemy同期処理と非同期処理で設定やクエリがどう違うの比較しようと思います。 SQLAlchemyにはcoreとormがありますが、ここではormで書いていきます。 APIにはFastAPI、DBはPostgreSQLを使っていきます。 動作確認用コードは下記リポジトリに置いています。 同期処理

                                                  SQLAlchemy同期/非同期の比較 - Qiita
                                                • FastAPIを支えるデータ検証ライブラリ「Pydantic」のV2がベータリリースされたので使ってみた

                                                  はじめに こんにちは。Acompanyの田中(@tkrk_p)です。本記事はAcompany5周年アドベントカレンダー19日目の記事となります。 1日前の記事はこちら↓ 本記事では、先日ベータリリースされたデータ検証ライブラリ「Pydantic」のV2を紹介します。 Pydanticとは Samuel Colvin氏によって2017年に開発されたPythonのデータパース・変換ライブラリです。Pythonの型アノテーションを使用してデータモデルを定義し、入力データの検証や型変換、データのシリアライズ(シリアル化)およびデシリアライズ(逆シリアル化)などの便利な機能を提供しています。 2023年6月現在で月間 7,000 万件以上ダウンロードされていることから、ここ数年で非常に注目されていることがわかります。(ちなみにDjangoのダウンロード数は月間約950万件) PyPIでのDjango

                                                    FastAPIを支えるデータ検証ライブラリ「Pydantic」のV2がベータリリースされたので使ってみた
                                                  1