タグ

sqlに関するR2Mのブックマーク (35)

  • Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表

    Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表 式言語とは一般に、プログラミング言語の一部やネットワークなどの構成ファイル、テンプレートファイルなどの中で、簡易な式やロジック、ポリシーなどを記述する際に使われる言語のことです。 こうした用途では、さまざまなプラットフォームに対応する移植性、起動時やプログラムの実行中に評価されることがあることから高速に評価が完了すること、安全に評価が実行できること、用途に応じて拡張しやすいこと、などが求められます。 CELは超高速に評価、ポータブル、サブセットサポート CELは正にこうした要件に対応した式言語となっており、Googleは次のような特徴があるとしています。 ナノ秒からマイクロ秒程度の高速な評価に最適化されている C++JavaGoでサポートされるスタックによるポータブ

    Google、超高速に評価可能でポータブルな式言語「Common Expression Language」(CEL)発表
    R2M
    R2M 2024/06/21
    「SQLにシームレスに変換」
  • sqlc を TypeScript で利用する

    まとめ sqlc-gen-typescript かなり良い 自分が TypeScript でウェブアプリを利用するなら間違いなく sqlc を選択する SQL は共通言語という点で当に偉大 sqlc とは sqlc とは Go で書かれた SQL を元にコードを生成するツール。 なぜ sqlc ? 結局、それぞれの ORM 固有の技術を覚えるくらいなら SQL を覚えた方が早い 拡張に ORM が対応していようがいまいが関係ない SQL パーサーが pg_query_go を利用しているので信頼できる sqlc は PostgreSQL だけなの? sqlc は MySQLSQLite にも対応している。 sqlc は Go だけなの? sqlc は Wasm でプラグインが書けるようになってきており、つい最近 TypeScript 版がリリースされた。 現時点では、 Postgr

    sqlc を TypeScript で利用する
  • リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita

    はじめに 最近エンジニア界隈では「リーダブルコード」が話題なっていますね。 リーダブルコードでは、このような定理が紹介されています。 「コードは他の人が最短時間で理解できるように書かなければいけない。」 Dustin Boswell リーダブルコード P.3 より引用 SQLでも同じことが言えそうです。 リーダブルなSQLを書いてないと結婚できない時代が今まさに到来しようとしています。 皆さん、クソSQL1を読んだことがありますね? クソSQLを書いたことがありますね? 僕は、あります。 そこで、記事ではどうしたらリーダブルなSQLが書けるかというアイデアを紹介します。 処理の流れの順に上から読めるようにする 人間のメンタルモデルは、問題やタスクを小さなステップに分割し、それぞれを順番に実行することに適しています。 サブクエリを使ったSQLでは、処理の流れは上から下ではなく、ネストされた

    リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita
    R2M
    R2M 2023/09/16
    CTEは制約が厳しすぎて使いづらい…
  • あなたの遅延はどこから? SQLから! 〜患部に止まってすぐ効くSQLレビューチェックリスト 年初め特大サービス号〜 - ANDPAD Tech Blog

    あけましておめでとうございます! 今年は異世界放浪メシのアニメが放送されるらしいので楽しみなバックエンドの原田 (tomtwinkle)です。 内部で運用しているSQLレビューチェックリストの一部を抽出し思いつきで追記して行った結果、結構な分量になってしまいました。 暇な時でも流し読みして頂けるとありがたいです。 Motivation SQLレビュー観点 大きくSQLが変更される修正の際にはEXPLAINをレビュー内容に加える 検索のキーにINDEXを使用しているか SQL発行回数がN+1(1+N)の構造になっていないか サブクエリを利用したSQLはパフォーマンス要チェック Viewの利用は基的に禁止 CROSS JOINは禁止 WHERE句で十分に絞った検索をしているか 必要なcolumnだけSELECTしているか レコード数だけ必要な場合にCOUNT用のSQLを発行しているか 集計関

    あなたの遅延はどこから? SQLから! 〜患部に止まってすぐ効くSQLレビューチェックリスト 年初め特大サービス号〜 - ANDPAD Tech Blog
    R2M
    R2M 2023/01/13
  • ドメインロジックとSQL - Martin Fowler's Bliki (ja)

    以下の文章は、Martin Fowler による Domain Logic and SQLの日語訳である。 データベース指向ソフトウェア開発者とメモリ上(in-memory)アプリケーションソフトウェア開発者との間のギャップは、ここ数十年、徐々に広がってきている。このギャップが原因で、データベースの機能(SQLやストアドプロシージャ)をどのように扱えばよいのかという議論が数多く巻き起こっている。ここでは、ビジネスロジックを SQL に置くべきか、それともメモリ上のコードに置くべきかといった問題について、主にパフォーマンスと更新性の観点から考察を行う。考察には簡単な例を使うが、SQL クエリはしっかりとしたもの(rich SQL queries)を用いるので悪しからず。 エンタープライズアプリケーション(訳注:以下、EA)構築に関する(私の近著『P of EAA』など)を読むと、ロジック

    R2M
    R2M 2022/06/06
  • BigQueryでSaaSのjsonデータを処理するSQLサンプル集 - 下町柚子黄昏記 by @yuzutas0

    この記事の概要 SaaSのデータをBigQueryに統合することで業務改善を促進できる。 しかし、SaaSのデータの中身を見ると、BigQueryの関数では対応しにくい形式になっていることがある。 そこで、稿では「こういうデータ形式だったらこういうSQLを書く」というサンプル集を掲載する。 目次 この記事の概要 目次 宣伝 実現したいこと SaaSデータの処理方法 SQLサンプル1: 純粋な配列だけのケース SQLサンプル2: 配列内にハッシュマップがあるケース SQLサンプル3: 配列宣言ナシでカンマ区切りのハッシュマップが突如始まるケース SQLサンプル4: 配列とハッシュが入り乱れるケース SQLサンプル5: JSONの中に親子構造があるケース SQLサンプル6: Objectを定義したくなるケース 最強のJSONパースの関数は作れるか jsonデータの処理をどこで行うか 最後に

    BigQueryでSaaSのjsonデータを処理するSQLサンプル集 - 下町柚子黄昏記 by @yuzutas0
  • 高性能分散SQLエンジン「Trino」最速ガイド - NTT Communications Engineers' Blog

    こんにちは。なんの因果かNTTコミュニケーションズのエバンジェリストをやっている西塚です。 この記事は、NTT Communications Advent Calendar 2021 22日目の記事です。 5分でわかる「Trino」 「Trino」は、異なるデータソースに対しても高速でインタラクティブに分析ができる高性能分散SQLエンジンです。 以下の特徴を持っており、ビッグデータ分析を支える重要なOSS(オープンソースソフトウェア)の1つです。 SQL-on-Anything: Hadoopだけでなく従来のRDBMS(リレーショナルデータベース)やNoSQLまで、標準SQL(ANSI SQL)に準拠したアクセスをワンストップに提供 並列処理でビッグデータに対して容易にスケールアップ しかも高速(hiveの数十倍) Netflix, LinkedIn, Salesforce, Shopif

    高性能分散SQLエンジン「Trino」最速ガイド - NTT Communications Engineers' Blog
    R2M
    R2M 2021/12/23
  • GPUDirect SQL on NFS-over-RDMAを試す - KaiGaiの俺メモ

    タイトルでほぼほぼ出オチですが、先日、NVIDIAからCUDA Toolkit 11.4と共にリリースされた新機能GPUDirect Storage 1.0のドキュメントを読んでいると、面白い記述を見つけた。 曰く、MOFEDドライバ5.3以降と、Mellanox Connect-X4/5の組み合わせで、NFS-over-RDMAとGPUDirect Storageを組み合わせ、リモートのNFS区画からローカルのGPUへと直接のデータ転送を行う事ができるようになる、と。 14.10. NFS Support with GPUDirect Storage This section provides information about NFS support with GDS. 14.10.2. Install GPUDirect Storage Support for the NFS Cli

    GPUDirect SQL on NFS-over-RDMAを試す - KaiGaiの俺メモ
  • 論理プログラミング言語Logicaでデータサイエンス100本ノック

    Googleが発表したOSSプロジェクトである論理プログラミング言語Logicaを使って、データサイエンス100ノック(構造化データ加工編)の設問を解きながらどのような言語かを確認していく。 (BigQueryのクエリとして実行していく) 最初に、プログラミング言語Logicaの特徴を纏めておく。 論理型プログラミング言語: このカテゴリではPrologが有名 SQLにコンパイルされる: 現状BigQueryとPostgreSQLに対応 モジュール機構がある: SQLと比較した強み コンパイラはPythonで書かれている: Jupyter NotebookやGoogle Colabですぐ始められる Colabでチュートリアルが用意されているので、まずこちらからやると良いと思う。 コードの見た目は関係論理の記述に似ている。 事前に、データサイエンス100ノックのテーブルデータをBigQu

  • 業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 後編

    はじめにこんにちは。GMOアドマーケティングのKONCEです。新卒で入社し、数年経ちました。日々の業務で学ぶことは多いですが、今年度は技術の深堀りをテーマにやっていきたいと思っています。今回は入社してDBSQLに関しては業務内で学ぶことが多く、特別訓練をしていたわけではなかったのですが、「SQLアンチパターン」を用いて学びながら、改めて自分の現状を見つめ直していけたらと思います。今回は学習を行う側面と自分自身のレベルについて見直していきたいので 知っていた → ○ 部分的に知っていた → △ 知らなかった → ... 今回は後編です。 今回も 知っていた → ○ 部分的に知っていた → △ 知らなかった → × を付けてみようと思います。 目次 SQLアンチパターンについて Ⅲ部 クエリのアンチパターン 2-1. [△]13章 フェア・オブ・ジ・アンノウン(恐怖のunknown) 2-2

    業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 後編
  • Best practices for writing SQL queries

    Watch 6-minute demo to see how to set up and publish a dashboard

    Best practices for writing SQL queries
    R2M
    R2M 2021/04/13
    何かと思えばメタベースの奴か
  • SQL パイプライン開発に便利な Dataform 7つのお気に入りポイント - FLINTERS Engineer's Blog

    こんにちは。河内です。 最近はデータ基盤の構築も取り組んでいたりします。 社内では他の DWH が使われている事例がありますが、今回の基盤ではデータソースとの親和性や価格面などを考慮し BigQuery で行くことにしました。 BigQuery 上で多くのデータを順次変換してデータを生成するために何らかのワークフローエンジンが必要でした。 社内の他のシステムではワークフローエンジンとして Digdag を採用している例が多いですが、このシステムでは Kubernetes 上でサービスを運用しているため、当初(2020年12月)は Argo Workflow 上でクエリを順次実行することを構想していました。構想中に DataformGoogle に買収され、無料で使えるようになったというニュースが飛び込んできたため、触って感触が良いことを確かめた後、Dataform を使っていくことに

    SQL パイプライン開発に便利な Dataform 7つのお気に入りポイント - FLINTERS Engineer's Blog
  • SQL勉強会を通して痛感したデータ民主化への長い道のり - Classi開発者ブログ

    こんにちは、ClassiデータAI部の石井です。 私は2019年4月にソフトバンクからClassiに出向し、マーケティング部を経て、現在データAI部でデータエンジニアとして分析基盤の構築を担当しています。今回は私が現部署で最初に担当したSQL勉強会についてご紹介します。 背景 2020年春頃から、新型コロナウイルスの影響による休校や教育現場の急激な状況変化に対応するため、Classiサービスの詳細な利用状況把握の必要性が高まっています。 Classiは弊社の強みともいえる膨大な教育データを蓄積していますが、残念なことに全社的には貴重な教育データを活用しきれていないことが課題でした。 2020年夏に全社で行った「データAI部に期待すること」に関するアンケートでも、「基礎的なデータ活用方法を教えてほしい」という回答が多く寄せられました。 この状況をふまえ、データ活用のための知識の底上げを行い、

    SQL勉強会を通して痛感したデータ民主化への長い道のり - Classi開発者ブログ
  • SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog

    こんにちは、最近はアプリグロースを担当しているabeshi(@abeshi_official)です。 美容のプラットフォーム「LIPS」を運営するAppBrewでは非開発職のSQL習得に力を入れています。誰でもRe:dashやログを触れる状態になっているし、それぞれのDBに何がどう入っているかを共有するためのドキュメントも存在しています。 「非開発職もSQL書けるように頑張ろう!」と掲げたところで、当の人たちは毎日仕事が忙しくなかなか時間も取れない上に明確な目標がないといまいち学習モチベーションを保つことができません。そこで弊社が導入したのが「SQLテスト制度」です。 ✍️SQLテスト制度とは SQLの学習到達度によってレベルごとに分けたテストで、合格すると給与が上がります。 *1現在は二つレベルが存在していて、 【レベル2】... 初学者向けでwhere・joinなど基的な文法が使え

    SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog
    R2M
    R2M 2020/11/11
  • すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita

    sqlsとは sqlsとは、いま私が開発中のSQL用Language Serverです。SQLをエディタで編集するときの支援機能を実装したサーバとなっており、主な特徴は以下です。 Language ServerなのでLSクライアントが存在するエディタであればどんなエディタでも利用可能 SQL編集支援機能 自動補完(テーブル名、カラム名など) 定義参照 SQL実行 複数のRDSMSに対応 MySQL PostgreSQL SQLite3 Language Serverとは Language Server(あるいはLanguage Server Protocol)とは、プログラム言語の開発支援機能をエディタに提供するサーバ、およびその通信内容を規定したプロトコルです。ただしサーバといってもほとんどの場合ローカル内にホスティングしてローカルのエディタと通信をします。 ここでは主題ではないので詳し

    すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita
    R2M
    R2M 2020/05/16
  • SQL Tutorial

    グループ合同の新卒研修で行った SQL 入門向けの解説 + ワークショップです。 基的な部分の解説のみで、一部触れていない構文もございます。 ご了承ください。 KKK: 価格, TNK: 単価, MST: マスタ, IDX: インデックス # URL HomePage: https://nrslib.com Twitter: https://twitter.com/nrslib

    SQL Tutorial
    R2M
    R2M 2020/04/04
  • SQLチューニング_理論と改善の実例_/pgcon19j_t4

    # SQLチューニング 理論と改善の実例 - 2019-11-15 開催のPostgreSQL Conference Japan 2019 の発表スライドです

    SQLチューニング_理論と改善の実例_/pgcon19j_t4
  • [速報]マイクロソフト、「Azure Synapse」発表。BigQuery対抗の大規模並列データ処理サービス。Ignite 2019

    フロリダ州オーランドで開催中のマイクロソフトのイベント「Microsoft Ignite 2019」が開催中です。 その基調講演において同社CEOのサティア・ナデラ氏は、大規模並列データ分析サービス「Azure Synapse Analytics」を発表しました。 同社は現在、大規模データウェアハウス向けのサービスとして「Azure SQL Data Warehouse」を提供していますが、「Azure Synapse」はそれをさらに発展させたもの。 データウェアハウス、ビッグデータ分析、データ統合などを1つのサービスとして統合し、事実上データ容量に上限がなく、ペタバイトクラスのデータでも高速に処理できる性能を提供します。 リレーショナルデータベースのような構造化されたデータおよび非構造化データのいずれにも対応し、SQLによって分析可能です。 そのために「Azure Synapse」では最

    [速報]マイクロソフト、「Azure Synapse」発表。BigQuery対抗の大規模並列データ処理サービス。Ignite 2019
    R2M
    R2M 2019/11/05
  • SQLのインデックスとそのチューニングについてのオンラインブック

    開発者向けのSQLインデックス解説サイト、管理についての間違いない知識を提供します。 インデックスは開発時には忘れられがちである一方で、非常に効果的なSQLのチューニング方法です。Use The Index, Lukeでは、HibernateなどのORMツールの解説にとどまらず、SQLのインデックスについて基礎から説明します。 Use The Index, LukeはSQLパフォーマンス詳解のWeb上の無料版です。サイトを気に入って頂けたら、ぜひ書籍も購入してみて下さい。また、このサイトの運営をサポートする様々なグッズも販売しています。 MySQLOracleSQL ServerなどにおけるSQLのインデックスUse The Index, Lukeでは、ベンダにとらわれないインデックスの説明を心がけています。製品特有の事柄については、以下のような表示をしています。 DB2Use The

    SQLのインデックスとそのチューニングについてのオンラインブック
  • SQL Serverの動的管理ビューとは?

    Microsoft SQL Server」が稼働するデータベースシステムを運用する管理者に向け、「動的管理ビュー」の活用を軸にしたトラブル対策のためのノウハウを紹介していきます。 SQL Server動的管理ビュー一覧 連載では、「Microsoft SQL Server(以下、SQL Server)」で使用可能な動的管理ビューについて、動作概要や出力内容などを紹介していきます。今回は「動的管理ビュー」とは何かを解説します。 連載『SQL Serverトラブルシューティング』では、「動的管理ビュー」や「DMV(Dynamic Management View)」と呼ばれる機能を紹介しています。 「DMV(Dynamic Management View)」でパフォーマンス遅延の「原因」を調べる 動的管理ビューを使うと、SQL Serverの構成や設定の他、現在の状況や起動してからの累積値な

    SQL Serverの動的管理ビューとは?
    R2M
    R2M 2019/03/30