Google File SystemなどのGoogle インフラの上に作られた分散データベース。
複数のテーブル群をまとめる、 Relational DB とは違い、テーブルひとつが論理単位となっている。
Googleが提供する、検索をはじめ、Google Earth、Google Maps、Youtubeなどでも利用されている。
G-gen の杉村です。当記事は BigQuery について徹底的に解説する記事の応用編です。BigQuery に初めて触れる方はまずは基本編の記事を、ぜひご参照ください。 基本編の記事 外部データ連携の概要図 外部テーブル 外部テーブルとは 用途 Cloud Storage 外部テーブル Google ドライブ外部テーブル Bigtable 外部テーブル 連携クエリ (Federated query) BigQuery Omni BigQuery Omni とは 対応サービス 注意点 BigLake BigLake とは データソース 通常の外部テーブルとの違い 利点 権限の持たせ方 Big…
G-gen の杉村です。Google Cloud のフルマネージドな分析用データベースである BigQuery について、徹底的に解説します。当記事は基本編であり、当記事を読み終わったあとは応用編もご参照ください。 概要 BigQuery とは 利用方法 フルマネージド (サーバーレス) 他の Google Cloud サービスとの連携 他クラウドサービスとの連携 料金 料金体系の基本 ストレージ料金 ストレージ料金の基本 Physical Storage と Logical Storage Active Storage と Long-term Storage コンピュート料金 無料枠 コンポ…
gPRC: Protocol Buffers スタイル規約 & API ベストプラクティスまとめ ファイル & パッケージ構成 Message Field Nested Type Any Enum Service Proto ベストプラクティス API ベストプラクティス フィールドとメッセージを正確かつ簡潔に文書化する Wire (≒API?)と Storage でメッセージを使い分ける Mutations (更新 API) の場合、データの完全なリプレイスではなく、部分的な更新または追加のみの更新をサポートする トップレベルのリクエストまたはレスポンスの proto にプリミティブ型(基本…
この記事の趣旨 2020年に発表されたBigQueryの元となったGoogle内で利用されている分析向けデータベースであるDremel の実装を解説した論文を読みました。 Dremel: A Decade of Interactive SQL Analysis at Web Scale 著者について Sergey Melnik, Andrey Gubarev, Jing Jing Long, Geoffrey Romer, Shiva Shivakumar, Matt Tolton, Theo Vassilakisら2010年のDremel発表論文の著者らと、 Hossein Ahmadi, …
概要 Bigtableは数十億行、数千列規模に拡張可能な分散型NoSQLですが、 特定のカラムファミリのみ持つ行を全て抽出する といった時にcbt(CLIツール)やSDKではiterateしてデータをハンドリングするため、大規模データ分析の用途では使いづらさがあります。 そこでBigQueryの外部テーブルとして扱うことで、SQLを用いて簡単に条件に基づいたデータのみ抽出することが可能になります。 外部テーブルの作成 環境 以下の環境であると仮定して進めます。 項目 設定値 GCPプロジェクト project-a Bigtableインスタンス bigquery-access-test Bigt…
Log-Structured Merge Tree というデータ構造があって、データ指向アプリケーションデザインを読んでいるとかなり最初の方に出てくる。Wikipediaの記事の通りLevelDBを始めきょうびのさまざまなデータベース製品で使われている。 特徴はめちゃくちゃざっくり*1 追記型のログを使うことで書き込みの性能を保つ インデックスはキー名とログ内のオフセットzを持っておき、読み出しも速度を出す ログを SSTable というデータ構造に退避することで、インデックスはある程度疎にしつつ(めちゃくちゃキーが多くなってインデックスの時点でデカくなるなどを防ぐ)速度を保ってアクセスできる…
NoSQLに属するカラムストア型DBについて、もう少し調べてみた。 カラムストア型DBの特徴 KVSでは1つのKeyに対して1つのValueだったのに対して、複数のValue(カラム)を持てる構成 1つのレコード(Key)毎に異なるカラム構成であることが許容される レコードとカラムと聞くと、RDBMSと同じ感じがしてしまうが、1レコード毎に自由にカラムを構成できるところが大きく異なるということがわかった。
こんにちは、インフラ部でアルバイトをしているmya0です。 Cloud Bigtableをpixivのサービス内から利用したときの読み取り速度にどの程度影響があるのか調べるために、Go, PHP(cli), nginx+php-fpm, apache+mod_phpで測定し比較しました。 Bigtableとは Google Cloud PlatformのCloud Bigtable(https://cloud.google.com/bigtable?hl=ja)は、大規模なデータを低レイテンシで扱うことのできるNoSQLデータベースサービスです。 SSDの1ノードで10,000行/sの処理がで…
こんにちは、エムスリーエンジニアリンググループ AI・機械学習チーム(以下「AIチーム」)で機械学習エンジニアをしている農見です。 今日から1週間「AIチーム ブログリレー」と題し、AIチームメンバーでリレー形式でテックブログを執筆し、AIチームがどのような開発をしているのか・どんなチームなのか・どんなメンバーがいるのかなど、ご紹介できればと思います。 記念すべき初回は僕がAIチームで知っている技術スタック( AIチーム内で使ってる技術スタックではない)についてです。それではどうぞ
概要 OpenTelemetryはOpenCensusやOpenTracingをまとめた形で生まれたので、既にOpenCensusやOpenTracingの形で実装されたライブラリは移行するのが大変です。 例えばGCPの各SDKは基本的にOpenCensusで実装されています。 そのようなライブラリを使用する際に OpenCensus Bridge OpenTracing Bridge といったBridgeを使うことで簡単にOpenTelemetry用のSpanとして取り込むことができます。 環境 Go v1.20.2 go.opentelemetry.io/otel/trace v1.14.…
こんにちは。取締役兼ACS事業部の責任者の上林です。 前回は「プラットフォームエンジニアリングの概要」について書かせて頂きました。前回注目されている背景として、さらっと「アジャイルやDevOpsの組織的な推進」と書きましたが、今回はその点を確認していきます。歴史的な背景をもう少し深堀しながら、紐解いていきたいと考えています。なにかのお役に立てば幸いです。 アジャイルとDevOpsの誕生 大きく端折って書くと、1990年代に大規模な開発の反作用としてRAD、スクラム、XPなどの開発の方法論の議論があり、2001年には象徴的に「アジャイルソフトウェア宣言」が登場します。その後、webサービスの発展…
仕事がずっとコンサルワークなので, 休日のプログラミングがめちゃくちゃ楽しみになっている人です. 最初にお礼をさせてください, Developers Summit 2023の発表, なんだか好評価(高評価)だったみたいです. #devsumi 開催報告によると、私のトークの満足度は全90セッション中11位でした🎉フィードバックコメントも多数いただき、誠にありがとうございました!次回作にご期待ください(多分夏ぐらいになるだろう)https://t.co/68lYY2vj25— Shinichi Nakagawa / 中川 伸一 (@shinyorke) 2023年3月2日 練習やレビューに協力い…
ピクシブ株式会社は2022年11月24日、pixivに運用型配信広告が簡単に出稿できる「pixiv Ads」をリリースしました。pixiv Adsは完全自社開発のセルフサーブ型の運用型広告プラットフォームです。実現にあたっては実に二年以上の歳月かけて、数々の技術的挑戦を行ってきました。 本日はpixiv Adsの技術を支えるエンジニア4名から、特に大きな取り組みを中心に技術発表させていただきます。 なお今回は後編記事となりますので、先に前編記事(https://inside.pixiv.blog/2023/02/17/110000)をご覧ください。 pixiv Adsの技術的挑戦 大きな取り組…
解答
はじめに Associate Cloud Engineer試験 勉強開始前の状態 試験対策 試験結果 まとめ はじめに 最近仕事でGCPを触る機会が増えてきたので、 Google Cloud 認定資格である「Associate Cloud Engineer」の資格を取得しました。この記事では学習前の状態から実際の勉強方法についてこれから取得を目指す方の参考になればという思いで参考情報を記述していこうと思います。 勉強開始前の試験概要の調査段階では、最上位の資格を受けようと思ったのですが、不合格だった場合の再受験ポリシー*1があるため、まずはエントリーということで「Associate Cloud…