並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 5067件

新着順 人気順

postgresqlの検索結果1 - 40 件 / 5067件

  • Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート2 | Amazon Web Services

    Amazon Web Services ブログ Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート2 本記事は、Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade checklist, Part 2 を翻訳したものです。 最初のパートでは、 Amazon Aurora MySQL互換エディション v2 から v3 へのアップグレードの事前チェックが失敗する原因となる最も一般的な問題を説明しました。この投稿ではアップグレードが長引いて失敗する最も一般的な原因について説明します。 クラスターにプリ

      Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート2 | Amazon Web Services
    • Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート 1 | Amazon Web Services

      Amazon Web Services ブログ Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート 1 本記事は、Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade checklist, Part 1 を翻訳したものです。 Amazon Aurora MySQL 互換エディション バージョン 2 (MySQL 5.7 互換)は 2024 年 10 月 31 日に標準サポートの終了が予定されています。Amazon Aurora MySQL バージョン 2 の標準サポートの終了タイムラインについて

        Amazon Aurora MySQL バージョン 2 (MySQL 5.7 互換) からバージョン 3 (MySQL 8.0 互換) へのアップグレードのチェックリスト、パート 1 | Amazon Web Services
      • なぜSQLiteはバイトコードを使うのか

        以前にデータベースを自作しようとして、SQLiteのアーキテクチャを見てみたらVMだったことに疑問を感じ、それをツイートしたところ作者からリプをもらいました。 作者いわく、次のような背景があったとのことでした。 SQLiteを作った当初はデータベースエンジンのことをよく知らないがコンパイラのことをよく知っていた SQLデータベース・エンジンを書くという問題をコンパイラ構築の問題として扱うのは自然なことだった データベースエンジンのコアの部分をVMにするという発想がまったくなかったので、どんなメリットがあるのか?と気になっていました。 それを作者に聞いたら、詳細な説明ページを作ってくれました。 個人的にVMにしたことで、評価&実行のパフォーマンスは多少良くなると思うが、データベースエンジンのパフォーマンスにそれほど寄与していないんじゃないかな?って思ったりしました。 本記事はそのページについ

          なぜSQLiteはバイトコードを使うのか
        • [Software Design連動企画] 実践クエリチューニング | gihyo.jp

          この記事は、『Software Design 2024年6月号』(2024年5月17日発売)の第1特集「SQLチューニングする前に知っておきたい 実行計画&インデックスのしくみ」の連動企画です。ぜひ本誌特集1もお読みください。 適切なインデックスを設計する インデックスの調整によるクエリの高速化は、RDBMSを使用する際の数あるチューニングテクニックの中でも最もお手軽なものです。テーブルのカラムの定義を変えるわけではないので、クエリの結果に違いが生じず、アプリケーションを変更する必要性がないからです。適切なインデックスを付与するだけでチューニングが済むというのは極めて効率的です。それでは適切なインデックスとはどのようなものでしょうか。本記事では、まずインデックスを設計する際に重要なポイントを解説します。 インデックスとSQL構文 「どのカラムの組み合わせに対してインデックスを作成すべきか」

            [Software Design連動企画] 実践クエリチューニング | gihyo.jp
          • Javaで最低限おさえておいてほしいクラス・インタフェース35 - 2024年版 - きしだのHatena

            ま、このくらい知っておいてもらわないと&とりあえずこんだけ知ってればだいたいの処理が書けるクラス・インタフェースをまとめてみました。2024年版。 詳しく知りたい人は「プロになるJava」を! java.lang.Class java.lang.Exception <- new java.lang.Integer java.lang.Object <- new java.lang.Runnable java.lang.String java.lang.System java.lang.Thread java.nio.file.Files <- new java.nio.file.Path <- new java.io.InputStream java.io.InputStreamReader java.io.BufferedReader java.io.OutputStream java.

              Javaで最低限おさえておいてほしいクラス・インタフェース35 - 2024年版 - きしだのHatena
            • 存在するはなぜ二階の述語なのか|ミック

              拙著『達人に学ぶ SQL徹底指南書』の中で、EXISTS述語の使い方を解説している章があるのだが、そこでEXISTS述語だけが唯一SQLの中で二階の述語である、ということを説明している。これはEXISTS述語だけが行の集合を引数にとる述語だからである。それは分かるのだが、なぜ述語論理を考えた人(具体的にはゴットロープ・フレーゲ。タイトル画像のおじさんである)はこんな着想を得たのか、そこが分かりにくいという質問をしばしば受けることがある。確かに、数ある述語の中でなぜ「存在する」だけが二階の述語であるのか、というは直観的にすこし分かりにくい。なぜフレーゲはこんなことを考えたのだろう? この点について、述語論理の創始者でもあるフレーゲの議論を参照しながらかみ砕いて見ていきたいと思う。かなり理論的かつ哲学的な話になるので、興味ない方は読み飛ばしてもらってかまわない。とくにSQLの理解に支障のある話

                存在するはなぜ二階の述語なのか|ミック
              • 【SQL】NULL値を制御/SQLマスターへの道「COALESCE」 - Qiita

                導入 SQL文でNULL値を扱う際の便利な関数、COALESCEを紹介しようと思います。 SELECT句で、NULL値を置き換えることで、データの可読性を高めることができたり。 ORDER BY句で、NULL値のソートの条件分岐の複雑性を吸収したり。 と、SQL文の簡略化にぴったりです。 今回の記事では、簡単にCOALESCE関数の説明と実践例を2つご紹介します。 COALESCEについて リストの最初の非 NULL 値を返します。非 NULL 値がない場合は、NULL を返します。 つまり、欠損値(NULL)にデフォルト値を指定することができます。 例 SELECT COALESCE(`office`.`locale`, `office`.name`, `リモート勤務`); 上記のクエリを例にすると...。 office.locale(オフィスの場所)を出力。 office.locale

                  【SQL】NULL値を制御/SQLマスターへの道「COALESCE」 - Qiita
                • DjangoのマイグレーションとMySQL 5.6~でのオンラインDDLの副作用について - クロスマート Tech Blog

                  まえがき ちょっと待った。オンラインDDLって何よ? DDLについて オンラインDDL オンラインDDL実行で起こりかけた問題 ロックを取得する じゃあどうすればいいのさ DDLを流す時にメンテを入れる TO値を設定する あとがき まえがき こんにちは。バックエンドエンジニアの@mobojisan と申します。 この時期は本当にカンファレンスが多いですね! 個人用GitHub上にSSGを利用したブログ基盤があるのですが、それが使いにくかったので、今流行りのsupabaseでブログ基盤をおっ立て、カンファレンスに参加した時の感想記事でも載っけようかと画策していました。 しかし、作業がカンファレンスの開催スピードにとても追いつかず、カンファレンスのメモが無情にもnotion上に溜まっていきます。 もはやメモをブログとして世に出す頃には来年のカンファレンスが開催されているんじゃないか…?と思いな

                    DjangoのマイグレーションとMySQL 5.6~でのオンラインDDLの副作用について - クロスマート Tech Blog
                  • SQL入門ハンズオン「はじめてのSQL」 第2回資料 〜JOIN編〜 - Qiita

                    本記事の概要 SQL入門ハンズオン「はじめてのSQL」 第1回資料 の続編です。 (※ SQL全くの初めて!DBって何?って方は、まずは↑を読んでみてください〜) エンジニアリング質問プラットフォーム・PRIME ANSWERで主催しているSQL入門勉強会 2回目の資料として執筆しました。わいわい!☺️ はじめに 今回のゴール SQLでJOINを行えるようになる 各種JOINの挙動の違いを理解して使い分けられるようになる 前提知識 JOIN(テーブルの結合)とは? データベースからデータを取り出す際、ほしいデータの項目が複数のテーブルに及んだり、ある条件に一致するデータを取りたい場合があると思います🌷 例) members(メンバー)・teams(メンバーが所属するチーム)の2つのテーブルがある場合に、年齢が20歳以上のメンバーの「名前」と「所属チーム名」を取得したい その際、上の例の場

                      SQL入門ハンズオン「はじめてのSQL」 第2回資料 〜JOIN編〜 - Qiita
                    • SQL入門ハンズオン「はじめてのSQL」 第1回資料 - Qiita

                      本記事の概要 こちらは2021.04.10に株式会社xhackさんの勉強会「【オンラインハンズオン】はじめてのSQL」を主催させて頂いた時に作成した資料です。 筆者はバックエンド中心のエンジニアとしてデビューしたてのピヨピヨではありますが、 データベースが好きでSQLをちゃんと理解したい!と思っていた際 よく参加させて頂いているxhackさんの勉強会で主催やりませんか?と 代表の松田さんにお声を掛けて頂いたのがきっかけでやらせて頂きました。感謝!😊 はじめに 1. 今回のゴール SQLで基本のデータベース操作(参照・挿入・更新・削除)を行えるようになる SQLでの代表的な構文の意味を理解できる 2. ざっくりSQL データベースを操作したり、中のデータを定義するための言語 参考:「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典 - SQL 3. ざっくりデータベース

                        SQL入門ハンズオン「はじめてのSQL」 第1回資料 - Qiita
                      • 【MySQL】読み取り専用トランザクションもmetadata lockを取る - 地方エンジニアの学習日記

                        dev.mysql.com BEGINなどをせずにSELECTを実行しただけでも読み取り専用トランザクションというのが開始されるらしい。スロークエリが実行されているテーブルに対してDDLを実行するとmetadata lockが取られて以降のDMLが全てブロックされる問題があるがBEGINとかしてない場合は問題ないのでは?と思ったので調べてみた。 TrxA > SELECT SLEEP(3600) from HOGE; とやってHOGEに対してDDLを発行すると3600sの間DDLは待たされ以降のDMLを全て待たされる。読み取り専用トランザクション中にALTERが実行されるとトランザクションの分離を実現できなくなるので考えてみればそれはそうという感じである。 実験してみる こんなテーブルにALTER TABLEを実行してみる mysql> desc test_table; +--------

                          【MySQL】読み取り専用トランザクションもmetadata lockを取る - 地方エンジニアの学習日記
                        • MySQL 8.4 LTS登場!!

                          記事を書くのが遅くなってしまったが、先日MySQL 8.4シリーズが登場したので紹介をしておこうと思う。新機能の解説については機会を改めて書くとして、今回は主にアップグレードにまつわる重要なポイントを書き記しておく。 LTS = Long Term Support 以前の記事でも紹介した通り、MySQL 8.4はLTS = Long Term Supportのバージョンとなっている。長期間サポートするために互換性を最大限保証するバージョンである。前のメジャーバージョンであるMySQL 8.0シリーズのように、シリーズの途中で互換性が破壊されるような変更が入ることは基本的に無い。「バグ修正のためにどうしても仕様を変えなければならない」というような事態が生じる可能性はゼロではない。なので絶対に互換性が保たれるとは言い切れないところであるが、基本的には仕様変更はない方向で今後リリースされていくこ

                            MySQL 8.4 LTS登場!!
                          • データ分析力を高めるSQL研修サービス『SQL Everyone』のご紹介|高橋 光 | 著書『データ分析力を高める ビジネスパーソンのためのSQL入門』

                            はじめにこんにちは。高橋です。普段はコンサルとしてデータ分析を活用したデジタルマーケティング支援などをしており、複業としてデータ分析支援やデータ分析コーチングなどもやっております。今回は法人向けSQL研修サービス『SQL Everyone』のご紹介です。 以前からデータ分析力を高めるためのアプローチとして、個人向けにデータ分析で使うSQLの入門書を出版したり、noteでSQLが無料で学べるコンテンツを提供してきました。 さまざまSQL学習用のコンテンツを提供して、嬉しいことにに多くの方に本を読んでもらったり、noteを見てもらったりしています。一方でまだまだSQLの普及には貢献できていないと感じることもあります。 そこで今回は今までのようにある種一方的に学習用のコンテンツを提供するだけでなく、実際に自分自身が講師としてデータ分析のためのSQLを教える場を作り、もっと多くの人にSQLを身につ

                              データ分析力を高めるSQL研修サービス『SQL Everyone』のご紹介|高橋 光 | 著書『データ分析力を高める ビジネスパーソンのためのSQL入門』
                            • RAG With PostgreSQL - pgDash

                              Retrieval-Augmented Generation with Postgres, pgvector, ollama, Llama3 and Go. With a Retrieval-Augmented Generation (RAG) system, you can create an AI assistant that can answer questions based on the information contained within your existing, in-house knowledge bases like wikis, manuals, training and reference material. Read on to see how you can build your own RAG using PostgreSQL, pgvector, ol

                              • Athena で S3 と MySQL を JOIN する | DevelopersIO

                                CDK の中で DB を初期化する点についても後ほど触れます。 S3 にサンプルデータをアップロードする 続いて、以下のコマンドで S3 にサンプルのデータを入れます。 bucket_name=$(aws cloudformation describe-stacks --stack-name BlogAthenaJoinS3AndMysqlStack --output text --query 'Stacks[0].Outputs[?OutputKey==`BucketName`].OutputValue') aws s3 cp ./s3_test_data/data "s3://${bucket_name}/data" --recursive これで CloudFormation で作成した S3 バケット名を取得し、そのバケットに以下の CSV ファイルをアップロードしました。 ※4都

                                  Athena で S3 と MySQL を JOIN する | DevelopersIO
                                • MySQL :: MySQL Shell 8.0 :: 8.1 アップグレードチェッカユーティリティ

                                  util.checkForServerUpgrade() 関数は、MySQL サーバーインスタンスのアップグレード準備ができているかどうかを確認できるアップグレードチェッカユーティリティです。 MySQL Shell 8.0.13 から、最初の MySQL Server 8.0 General Availability (GA) リリース (8.0.11) から現在の MySQL Shell リリース番号と一致する MySQL Server リリース番号まで、アップグレード先のターゲット MySQL Server リリースを選択できます。 アップグレードチェッカユーティリティは、指定されたターゲットリリースに関連する自動チェックを実行し、手動で行う必要がある関連チェックをさらにアドバイスします。 アップグレードチェッカユーティリティを使用して、MySQL 5.7 サーバーインスタンスの互換

                                  • MySQLの文字コード(characterset)と照合順序(collation)についてとその設定 - Qiita

                                    株式会社TECH LUCKという会社で代表兼エンジニアをしている齊藤です。 開発している際にMySQLの文字コード関連でエラーが出てきたので、いい機会だと思って調べたことをまとめました。 前提条件 macOS13.2.1(M1チップ) MySQL:8.0.32 また記事の後半で、AWSのRDSも出てきます。 文字コードと照合順序について MySQLは文字コードとソート順の2つの設定を持っています。ソート順の部分を照合順序と呼びます。 MySQL内で文字列を比較する際に、文字コードだけでなく照合順序が一致するかどうかも比較します。そのため、照合順序が合わないと比較できず、JOINしようとした際にエラーになってしまいます。 文字コード(characterset)は、MySQL内ではutf8mb4, utf8, cp932などで表されています。 文字コードは、MySQLクライアント(接続元)の設

                                      MySQLの文字コード(characterset)と照合順序(collation)についてとその設定 - Qiita
                                    • Amazon RDS ブルー/グリーンデプロイを利用してMySQLのアップグレードをした話 - Pepabo Tech Portal

                                      こんにちは。技術部プラットフォームグループのharukinです。 この記事では、私たちが提供するネットショップ作成・運用のためのECプラットフォーム「カラーミーショップ」のデータベースを、Amazon RDSのブルー/グリーンデプロイを利用し、MySQLのバージョン5.7.38から8.0.35へアップグレードした経験についてご紹介します。カラーミーショップにおいてはこれが初の試みでした。Amazon RDS固有のファーストタッチレイテンシーの解除方法や、ダウンタイム時間の計測についてもお伝えします。 Amazon RDSのブルー/グリーンデプロイを活用するメリットは、本番環境に準ずるステージング環境を構築し事前検証が可能であることです。ステージング環境は約1分で本番環境に昇格させることができ、昇格時に許容ダウンタイムを超えたり、レプリケーションやインスタンスの問題が生じた場合は、自動的にプ

                                        Amazon RDS ブルー/グリーンデプロイを利用してMySQLのアップグレードをした話 - Pepabo Tech Portal
                                      • Aurora MySQLのメモリ不足の原因を特定する

                                        シンプルフォーム株式会社でインフラエンジニアをしている守屋です。 本記事では Aurora MySQL の OOM(メモリ不足)エラーについて、原因となるクエリを特定するために役立つ Tips を弊社での実例を交えてご紹介します。 発端 突如 Slack に鳴り響く不吉な通知。 「パターン青!障害です!!」 どうやら本番環境の Aurora クラスターがフェイルオーバーしてアプリケーションが DB コネクションエラーを引き起こした模様です。幸いインスタンスは冗長化していて Aurora のフェイルオーバーは高速であるため、ユーザー目線では瞬断が発生した程度の比較的影響が小さめな障害に留まりました。しかしインフラエンジニアとしては捨ておけない状況です!早速原因の調査を始めました。 フェイルオーバーの原因 結論から言うとメモリ使用量がスパイクして OOM エラーが発生したことが原因でした。根拠

                                          Aurora MySQLのメモリ不足の原因を特定する
                                        • pytest でテストケース毎に DB を自動的に初期化して、テスト開発体験を向上させる - SalesNow Tech Blog

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

                                            pytest でテストケース毎に DB を自動的に初期化して、テスト開発体験を向上させる - SalesNow Tech Blog
                                          • SQLは滅ぶべきか|ミック

                                            でかい釣り針が来たので釣られてみる。とりあえず以下の資料を読んでいただきたい。そんなに長くないのでサクッと読める。 SQLの記述順序と思考の順序が違うので書きにくいし、エディタの補完機能の恩恵が受けられないのが嫌だ、という意見はもう大昔からある。何度も何度も何度も繰り返されてきた議論である。以下の2011年のスレッドでも「SQLはFROM句が最初に来るべきではないか?」という問いが提起されている。すぐに出てこないが、筆者はこれより古い文書も見た記憶がある。

                                              SQLは滅ぶべきか|ミック
                                            • Pinterest社で運用されているText-to-SQLを理解する

                                              導入 こんにちは、株式会社ナレッジセンスの須藤英寿です。普段はエンジニアとして、LLMを使用したチャットのサービスを提供しており、とりわけRAGシステムの改善は日々の課題になっています。 本記事では、Pinterest社のエンジニアチームが紹介していた、実運用環境におけるText-to-SQLの構築方法に関する記事の紹介をします。 Text-to-SQLを実際の運用レベルで実現するための手法が解説されているので、その内容を解説、そして考察していきたいと思います。 なおこの手法には特に名前などは設定されていなかったので、以降Pinterest社の提案するText-to-SQLをPinterest Text-to-SQLと呼称します。 サマリー Pinterest Text-to-SQLは、RAGのシステムを最適化することで 検索に必要なTableのより正確な抽出 実際に使用されている値に準拠

                                                Pinterest社で運用されているText-to-SQLを理解する
                                              • FugueSQL — Fugue Tutorials

                                                FugueSQL# All questions are welcome in the Slack channel. ⬅️ Launch these tutorials in Binder ⬅️ Check out our source code ⬅️ Chat with us on slack FugueSQL is designed for heavy SQL users to extend the boundaries of traditional SQL workflows. FugueSQL allows the expression of logic for end-to-end distributed computing workflows. It can also be combined with Python code to use custom functions alo

                                                • SQL滅ぶべし | ドクセル

                                                  SQL • リレーショナルデータベースシステムと会話するための言語 • 1970年 Codd が RDB モデルと同時に提案 (Alpha言語) • 1974年 Chamberlin と Boyce が改良 • 元々は SEQUEL (Structured English Query Language) だったが、商標登録されていた • 読み方は エスキューエル とそのまま読む (Glliespie 2012)

                                                    SQL滅ぶべし | ドクセル
                                                  • LLMをWebフレームワークにしたら、未来が見えた #2024

                                                    最近、LLMにWeb Backendを書かせて遊ぶ、Hanabiというサービスを作っています。その開発過程で、前に試したLLMをAPIとして振る舞わせるアプローチを再検討したので、記事としてまとめました。 一年ちょっと前、私はChatGPTをWebフレームワークにしようと試みました...が、残念ながら全く実用的ではありませんでした。しかし、あれから一年、LLMは目覚ましい進歩で進化を遂げました。価格は下がり、速度も上がり、記憶容量の増加やRAGの発展など、もはや別物レベルで進化しています。 いまならもうちょっと実用的なヤツが作れるんじゃねってことで、色々な手法を面白がった再検討したまとめです。 余談ですが、一年前はLLM=ChatGPTという状況でしたね...懐かしい。ちょうどvicuna13Bが出た頃ですかね? ↓去年の記事(できれば読んでほしい)↓ 出来たもの 全部プロンプトに入れちゃ

                                                      LLMをWebフレームワークにしたら、未来が見えた #2024
                                                    • クエリのパフォーマンスチューニングの第一歩。実行計画や統計情報について入門する

                                                      SQL実行の流れ まずはSQLがどのような流れで実行されるのかを見ていきます。 SQL実行の流れは大まかに捉えると以下のようになります。 パーサ パーサでは、ユーザーから送信されたクエリを受け取り、その文法的な正確さを検証します。SQLクエリが正しくフォーマットされているか、必要な構文要素が全て含まれているかをチェックし、例えばFROM句で指定されたテーブルが存在するかどうかも確認します。 文法的なエラーがある場合、例えばカンマの欠落や存在しないテーブルの参照など、クエリはエラーとして返されます。 エラーがない場合は、クエリは「抽象構文木」というデータ構造に変換されます。これにより、データベースはクエリをより効率的に解析し、次の処理ステップに進めることができます。 オプティマイザ SQLクエリがパーサを通過した後、次にクエリの最適化を行うのが「オプティマイザ」です。オプティマイザの主な役割

                                                        クエリのパフォーマンスチューニングの第一歩。実行計画や統計情報について入門する
                                                      • [PostgreSQL]pg_dumpとpg_restoreを用いたバックアップとリストア - Qiita

                                                        ※1…バックアップ時に選択した対象を全てリストアする ※2…TOC=Table Of Contents。そのバックアップファイルにどのようなデータが格納されているかを一覧形式で確認したり、一覧から選んだデータだけリストアできる。 ※3…SQLに変換してから行う。変換時に標準SQLオプションを指定する事ができる為、平文形式より柔軟性が高い。 目的別コマンドサンプル一覧 この記事で紹介されている目的別のコマンドラインサンプルを一覧でまとめます。 コマンドライン中の -h YOUR_HOST -p YOUR_PORT -U YOUR_USERのDB接続情報オプションは省略しています。-dオプションが付いている場合、これらも必要に応じてオプションに追加して下さい。 カスタム形式のダンプデータを扱う場合(お勧め) 目的 コマンドラインサンプル

                                                          [PostgreSQL]pg_dumpとpg_restoreを用いたバックアップとリストア - Qiita
                                                        • 自社サービスのバックエンドを Go から TypeScript へ切り替えるための整理

                                                          切り替える理由 自社の主力製品で利用している技術(WebRTC / WebTransport)がブラウザベースのため TypeScript を利用する Go を採用したのは sqlc が使いたかったという理由 sqlc-gen-typescript が出てきたのでもう Go を使う理由がなくなった 自社サービスチーム全員が Go にまったく興味が無い sqlc 自体は便利 そもそも自社に Go への興味がある人がいない 自社サービスの規模ではボトルネックになるのはデータベースであって言語ではない もしアプリでスケールが必要なときは Rust や Erlang/OTP に切り替えれば良い コネクションプールは PgBouncer を利用すればいい TypeScript からは 1 コネクション 1 接続で問題無い どうせフロントエンドでは TypeScript を書く 自社では React

                                                            自社サービスのバックエンドを Go から TypeScript へ切り替えるための整理
                                                          • もう人間がクエリを書く時代じゃない!SQLクエリの組み立てを自動化するSlack botを開発・導入しました - Pepabo Tech Portal

                                                            こんにちは。SUZURI事業部の@kromiiiと申します。 私のメインの業務はWebアプリケーションの開発ですが、大学院時代のスキルを活かして並行してデータ分析業務も行っています。 データ分析業務ではデータベースのクエリを書くことが多いのですが、私自身SUZURI事業部に配属されたばかりで、テーブルの名前やリレーションを覚えるのが大変でした。そこでクエリの設計を自動化するツールをSlackに導入しました。 その名も tbls-ask bot です。どのようなものか先に見てみましょう。 ユーザーはSlackでメンションする形で、どのようなクエリを実行したいのか自然言語で入力します。 メンションされるとSlack botが起動し、どのDBスキーマを利用するかを尋ねます。 ユーザーがDBスキーマを選択すると、自然言語からSQLクエリを生成し、Slackに返答します。 今回はパブリックに公開する

                                                              もう人間がクエリを書く時代じゃない!SQLクエリの組み立てを自動化するSlack botを開発・導入しました - Pepabo Tech Portal
                                                            • Snowflake の Copilot が優秀すぎる件について

                                                              マーケティングテクノロジーの情報やノウハウ・TIPS、エクスチュア社の情報を発信。【ブログネタ募集】ご興味のある分野を教えてください!ご要望の内容を記事に起こします!メニューの「ブログへの」リクエストよりお送りください。 menu こんにちは、喜田です。 いままでSnowflakeのライトユーザーで一部機能だけに特化して触っている状態でしたが、最近はData Superheroes 2024になったこともあり、いままで関わりの薄かった製品領域も調査したり、海外リージョンでしか出ていないプレビューを触ったりしています。 そのうちの一つがCopilotで、いまは北米など一部リージョンでのみパブリックプレビュー中の、Snowflakeコード開発が一段と捗るAIおしゃべり機能です。 この右側のパネルがCopilotとのチャット。出力が多くてチャットっぽくないですが、上から会話が続いております。 C

                                                                Snowflake の Copilot が優秀すぎる件について
                                                              • Oracle Database 23ai がリリースされたので作成してみてみた - Qiita

                                                                Oracle Database 23ai がリリースされました。このデータベースのリリースでは AI に重点を置いているため、データベースの名前を Oracle Database 23c から Oracle Database 23ai に変更することにしました。この Long-Term Support Release には、Oracle AI Vector Searchと、データによるAIの使用の簡素化、アプリ開発の加速、ミッションクリティカルなワークロードの実行に焦点を当てた300を超える追加の主要機能が含まれています。 ⚫︎ AI and Converged Data: Oracle's Strategy for Data Management Larry Ellison と Juan Loaiza が、Oracle Database 23ai の GenAI 戦略と、Oracle D

                                                                  Oracle Database 23ai がリリースされたので作成してみてみた - Qiita
                                                                • サブクエリの書き方を2万文字弱かけてすべて解説する

                                                                  これはなに ども、レバテック開発部のもりたです。 今回はSQLのサブクエリについてまとめます。仕事でクエリを書く際、サブクエリは頻出の構文だと思うんですが、同時にサブクエリの書き方を完全に理解しているよという人は案外少ないのではないでしょうか?[1] 実際、MySQLの公式ドキュメントを見ると12ページくらいを割かれており、意外と奥深いのがサブクエリです。使いこなせると便利ですし、何よりちょっとSQLのコツみたいなのがわかって面白いよ、ということで記事にしてみました。 前提 この記事は以下の前提を含んでいます。 環境 MySQL8.0系 読者の知識 なんとなくサブクエリが書ける けど相関サブクエリとかになると「あーっ」つってGoogle meetを閉じてしまうくらいのレベル感 記事のボリューム 18,000文字 おれの卒論が20,000文字だった マサカリ 間違ってたら投げてくれ〜〜 それ

                                                                    サブクエリの書き方を2万文字弱かけてすべて解説する
                                                                  • WEBアプリケーション開発者です。 特別セキュリティのスペシャリストになりたいというわけでないですが、アプリケーション開発者として徳丸本に記載されている内容レベルのセキュリティ知識はあります。 システムのセキュリティに関してはベンダーの脆弱性診断を通して運用しており、個人的にはセキュリティに関して何か困ったことがいままでありません。 ただ、ふと考えてみると「情報漏洩やサイバー攻撃が発生した際などの有事にどのような行動をとるべきか」という観点ではあまり自信がないなと感じました。社内でもそのような場合の指針が

                                                                    WEBアプリケーション開発者です。 特別セキュリティのスペシャリストになりたいというわけでないですが、アプリケーション開発者として徳丸本に記載されている内容レベルのセキュリティ知識はあります。 システムのセキュリティに関してはベンダーの脆弱性診断を通して運用しており、個人的にはセキュリティに関して何か困ったことがいままでありません。 ただ、ふと考えてみると「情報漏洩やサイバー攻撃が発生した際などの有事にどのような行動をとるべきか」という観点ではあまり自信がないなと感じました。社内でもそのような場合の指針が整っているわけではないです。 徳丸先生は、一般的な開発者には最低限どのレベルのセキュリティ知識を求められていますか? 回答の難しい質問ですが、ここは本音をさらけ出したいと思います。 私が「安全なWebアプリケーションの作り方(通称徳丸本)」を出したのが2011年3月でして、それから13年以

                                                                      WEBアプリケーション開発者です。 特別セキュリティのスペシャリストになりたいというわけでないですが、アプリケーション開発者として徳丸本に記載されている内容レベルのセキュリティ知識はあります。 システムのセキュリティに関してはベンダーの脆弱性診断を通して運用しており、個人的にはセキュリティに関して何か困ったことがいままでありません。 ただ、ふと考えてみると「情報漏洩やサイバー攻撃が発生した際などの有事にどのような行動をとるべきか」という観点ではあまり自信がないなと感じました。社内でもそのような場合の指針が
                                                                    • PostgreSQL supported platforms over time

                                                                      The recent discussion about AIX support in PostgreSQL (as of now removed in PostgreSQL 17) led me to look through the project’s history, to learn what platforms we have supported when. In this context, “platform” really means operating system. One useful proxy is looking at the files in src/template/, because every supported platform needs to be listed there. There are other dimensions, such as wh

                                                                      • 複数の企業でデータエンジニアとして求められたスキル - yasuhisa's blog

                                                                        最近「ああ、これ前職でも前々職でもやったことあるなぁ」という仕事があった。データエンジニア(やその関連職種)として働き始めて約5年、3社でフルタイムとして働いてきて「このスキルは業界や組織規模が変わってもデータエンジニアとしてスキルを求められることが多いな」と感じたものをまとめてみることにした。棚卸し的な意味はあるが、特に転職用などではないです。 前提 どこでも必要とされたスキル データマネジメントに関する概要レベルの知識と実行力 セキュリティや法令に関する知識 事業ドメインに関する興味関心 他職種とのコミュニケーション能力 コスト管理 / コスト削減のスキル ソフトウェアエンジニアとしてのスキル DataOpsやアラートのハンドリング能力 分析用のSQLを書く力 古いテーブルやデータパイプラインを置き換えていくスキルや胆力 あるとやりやすいスキル 関連部署の動きを何となく把握しておく力

                                                                          複数の企業でデータエンジニアとして求められたスキル - yasuhisa's blog
                                                                        • Exploring the Enigma of Database Vacuuming

                                                                          Before we discuss what VACUUM does and its implications, we need to understand how data is actually stored on disk. What happens when a tuple is inserted, updated, or deleted? Understanding this will help us understand what VACUUM does, why it’s needed, and its implications. We will primarily focus on Postgres, as it’s one of the most widely used open-source databases. Different databases might ha

                                                                            Exploring the Enigma of Database Vacuuming
                                                                          • 生成AI (Cohere)+LangChain+Vector Database (PostgreSQL)でRAGを試してみた - Qiita

                                                                            生成AI (Cohere)+LangChain+Vector Database (PostgreSQL)でRAGを試してみたPostgreSQLlangchainLLMVectorStorepgvector 生成AIを企業が使う場合、社内データを使った回答を得るにはファインチューニング、もしくは Retrieval-Augmented Generation (RAG、検索拡張生成) を行う必要があります。 企業では毎日データが更新される中で、ファインチューニングを頻繁に行うのはコスト高で現実的ではありません。 そこでRAGを使った方法が注目されています。 ということで、今回は以下の組み合わせでRAGを試してみました。 生成AI: Cohere Command Vector Database: PostgreSQL (pgvector) 生成AIとVector Databaseの連携: La

                                                                              生成AI (Cohere)+LangChain+Vector Database (PostgreSQL)でRAGを試してみた - Qiita
                                                                            • GitHub - HexaCluster/pgdsat: PostgreSQL Database Security Assessment Tool

                                                                              PGDSAT is a security assessment tool that checks around 70 PostgreSQL security controls of your PostgreSQL clusters including all recommendations from the CIS compliance benchmark but not only. This tool is a single command that must be run on the PostgreSQL server to collect all necessaries system and PostgreSQL information to compute a security assessment report. A report consist in a summary of

                                                                                GitHub - HexaCluster/pgdsat: PostgreSQL Database Security Assessment Tool
                                                                              • BigQueryで利用しているSQLFluffルールを公開してみる

                                                                                はじめに SQLの書き方は開発対象や人・チーム事情によっても様々なので、チーム開発で利用しているSQLFluffの設定を公開してみる。 なぜこのような設定・ルールになったか理由を紹介します。 ちなみに、私達のチームではBigQueryで比較的多くのカラム数やstruct型によるネスト構造を扱っているので、他のDBや他のチームでは合う/合わないはあるかもしれない。 SQLFluff 設定 下記がチームメンバーで合意した SQLFluff 設定。 なお、下記参考として公式の Rules Reference です。 [sqlfluff] dialect = bigquery max_line_length = 120 exclude_rules = # joinするときTable Aliasを使いたいので除外する aliasing.forbid, # Table Aliasのas句の省略ができる

                                                                                  BigQueryで利用しているSQLFluffルールを公開してみる
                                                                                • 【魚拓】【番外編】Excelの知識しかない人をRDBの担当者にする:SQLの知識がなくてもJetBrains AIを利用してRDBをノーコード生成!|kintoneにお...

                                                                                  ・ 05月02日 07時    取得の修正をアップデートします     ウェブ魚拓をご利用いただき、ありがとうございます。先日のアッ ... ・ 05月01日 19時    【追記】ウェブ魚拓のバージョンアップが終了しました     連携が上手に言ってなかった点から延長が行われてしまい、お手数 ... ・ 04月29日 23時    【重要・緊急】ウェブ魚拓のバージョンアップを行います     ウェブ魚拓のやや大きいバージョンアップを行います。5/1 A ...

                                                                                    【魚拓】【番外編】Excelの知識しかない人をRDBの担当者にする:SQLの知識がなくてもJetBrains AIを利用してRDBをノーコード生成!|kintoneにお...