この記事は、 BigQuery Advent Calendar 2022の 25日目です。 こんにちは。ユビレジで遊撃サーバーチームに所属している濱口です。普段は開発基盤や分析基盤の整備をメインでやっています。 今回は、先日 BigQuery のレガシーな日付別テーブルについて試行錯誤する ...
ナビタイムジャパンでインフラ環境の管理・構築・運用を担当しています。 DBを運用する上で、データの断片化について考えたことがありますか? 大量のデータを更新する必要があるケースや、データの更新頻度が多いケースでは断片化の考慮は必須です。
パーティショニングは、データベースにおけるテーブル内のデータを分割して保持する機能です。PostgreSQLでは、PostgreSQL 10から『宣言的パーティショニング(以降、「パーティショニング」と呼びます』が追加されました。なお、この記事は、PostgreSQL 11.1を ...
nonpartition_salesテーブルに対し、salesテーブルのパーティションキーであるsales_dateを検索条件に指定したSQLを実行し、実行計画を参照します。 テーブル全体に対する「Seq Scan」が実行されており (1) 、実行時間は、3156.240ms (2) となっています。
本記事は、 『Software Design 2019年8月号』 の第2特集 「ゲームを題材に学ぶ 内部構造から理解するMySQL」 をWeb掲載用に再編集したものです。 本記事のテーマを、 より基本的なところから丁寧に解説した 『SQLの苦手を克服する本 データの操作がイメージできれ ...
近年ではRedashやMetabaseのようなBIツールを簡単に導入でき、さらにはMySQLはバージョン8. 0からwindow関数が利用できるようになり、より分析的なSQLを記述する機会が増えた読者もいるかも知れません。このような分析に利用するSQLを記述をすると、どうしても ...
今回も以下のように、前回と同じSQLのチューニングを行います。 select l_orderkey, sum(l_extendedprice * (1 - l_discount)) as revenue, o_orderdate, o_shippriority from customer, orders, lineitem where c_mktsegment = 'BUILDING' and c ...
今回からは、SQL Data Warehouseのアーキテクチャを詳しく紹介します。SQL Data Warehouseのアーキテクチャを理解すれば、データベースのチューニングなども役に立ちます。今回のテーマは「テーブルの分散」に関わるSQL Data Warehouseのアーキテクチャです。 SQL Data ...
SELECT t.name AS TableName, s.name AS SchemaName, COUNT(DISTINCT p.partition_number) AS PartitionCount, SUM(p.rows) AS TotalRows, -- Total sizes CAST(SUM(a.total_pages) * 8.0 / 1024 AS DECIMAL(10,2)) ...