並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 81件

新着順 人気順

spannerの検索結果1 - 40 件 / 81件

spannerに関するエントリは81件あります。 googlecloudgcp などが関連タグです。 人気エントリには 『2020年現在のNewSQLについて - Qiita』などがあります。
  • 2020年現在のNewSQLについて - Qiita

    Disclaimer 当記事はNewSQL開発ベンダの技術ブログや各種論文、その他ニュースサイト等の内容を個人的にまとめたものです。 そのため、理解不足等に起因する誤解・誤認を含む可能性があります。更なる理解が必要な方はリファレンスに挙げた各種文献を直接参照下さい。技術的な指摘は可能であれば取り込み修正しますが、迅速な対応はお約束できません。 NewSQLの解説は二部構成 当記事は前編でNewSQLの概要編となる。 全体の目次は下記である。 NewSQLとは何か NewSQLのアーキテクチャ NewSQLとこれまでのデータベースの比較 NewSQLのコンポーネント詳解 1章から3章までの内容を当記事で解説する。 4章はさらに詳細な技術的解説となり、後編の「NewSQLのコンポーネント詳解」で記述している。 こちらも合わせて一読いただきたい。 1. NewSQLとは何か NewSQLとは、海

      2020年現在のNewSQLについて - Qiita
    • 秒間100万リクエストをさばく - Googleの共通認可基盤 Zanzibar - 発明のための再発明

      はじめに Googleの提供するサービス郡が共通して利用している認可システムにはZanzibarという名前がついています。ZanzibarはGoogleDrive・Google Map・Youtubeなどの巨大なサービスにも使用されています。 そのため、利用量も凄まじく 数10億のユーザー 数兆のACL(access control list) 秒間100万リクエスト もの量をさばいています。 にも関わらず、Zanzibarはこれを10ミリ秒以内に返します(95パーセンタイル)。 この記事では、そんなZanzibarの内部構造に関する論文「Zanzibar: Google’s Consistent, Global Authorization System」の中から、主に大量のリクエストをさばくための工夫を紹介します。 ちなみに、以前Googleの社内システム用の認可システム「Beyond

        秒間100万リクエストをさばく - Googleの共通認可基盤 Zanzibar - 発明のための再発明
      • みんなの銀行:日本初の「デジタルバンク」として Google Cloud に勘定系を構築。Cloud Spanner で銀行基幹システムで求められる可用性を実現 | Google Cloud Blog

        みんなの銀行:日本初の「デジタルバンク」として Google Cloud に勘定系を構築。Cloud Spanner で銀行基幹システムで求められる可用性を実現 2021 年 5 月にサービス提供を開始した「みんなの銀行」は、デジタル ネイティブ世代をターゲットとしたスマートフォン専業銀行。金融にまつわる煩わしさを排除し、ゼロベースでこれからの銀行に求められる機能を開発・提供していくと打ち出しています。そんな同行の大きな技術的トピックの 1 つが、勘定系システムにパブリッククラウドを採用したこと。これはもちろん国内初*の試みです。ここではサービス開始後の手応えをシステム構築をリードしてきた皆さんにお伺いしました。 利用している Google Cloud ソリューション: Google Cloud Databases、Stream Analytics 利用している Google Cloud

          みんなの銀行:日本初の「デジタルバンク」として Google Cloud に勘定系を構築。Cloud Spanner で銀行基幹システムで求められる可用性を実現 | Google Cloud Blog
        • 理解して拡げる分散システムの基礎知識

          20200725の #JTF2020 セッションスライド。 (資料内で説明した資料へのリンク) ・昨年のJTF発表資料 https://speakerdeck.com/tzkoba/cloud-nativekai-fa-zhe-falsetamefalsedatabase-with-kubernetes ・「2020年のNewSQL」 https://qiita.com/tzkoba/items/5316c6eac66510233115 ・「NewSQLのコンポーネント詳解」 https://qiita.com/tzkoba/items/3e875e5a6ccd99af332f ・Saga https://www.infoq.com/jp/news/2018/03/data-consistency-microservices/ ・「マイクロサービスとは分散システムである」 https://

            理解して拡げる分散システムの基礎知識
          • Google、大規模分散DB「Spanner」にPostgreSQL互換インターフェイスを実装。強い一貫性で秒間10億以上のリクエストを処理可能。Google Cloud Next '21

            GoogleはGoogle Cloudで提供している大規模分散データベース「Cloud Spanner」に、PostgreSQL互換のインターフェイスを実装したと発表しました。 At #GoogleCloudNext, we've announced the preview of Cloud Spanner’s PostgreSQL interface—combining the scalability & reliability of Spanner that enterprises trust with the familiarity & portability of PostgreSQL that dev teams . Take a deeper dive ↓ https://t.co/Y3xD1lDPLg — Google Cloud Tech (@GoogleCloudTech

              Google、大規模分散DB「Spanner」にPostgreSQL互換インターフェイスを実装。強い一貫性で秒間10億以上のリクエストを処理可能。Google Cloud Next '21
            • Google、iPaaS「Application Integration」正式リリース。Salesforceやkintone、BigQuery、MySQLなど多数のサービスをGUIで接続

              Google、iPaaS「Application Integration」正式リリース。Salesforceやkintone、BigQuery、MySQLなど多数のサービスをGUIで接続 Google Cloudは新サービス「Applicatoin Integration」の正式リリースを発表しました。 Application Integrationは、さまざまなサービスを統合する、いわゆる「iPaas」(Integration PaaS)と呼ばれるサービスです。 Announcing the general availability of Application Integration—part of our Integration Services portfolio to help you connect your apps visually, with no code Get st

                Google、iPaaS「Application Integration」正式リリース。Salesforceやkintone、BigQuery、MySQLなど多数のサービスをGUIで接続
              • カプコン: Cloud Spanner や GKE を用いて『ストリートファイター6』のためのクロスプレイ プラットフォームを構築 | Google Cloud 公式ブログ

                カプコン: Cloud Spanner や GKE を用いて『ストリートファイター6』のためのクロスプレイ プラットフォームを構築 『ストリートファイター』や『バイオハザード』、『モンスターハンター』など、世界中で愛されるゲームシリーズでその名を知られる株式会社カプコン(以下、カプコン)。その最新 AAA タイトル『ストリートファイター6』では、ユーザーのすそ野を広げる意欲的な取り組みを多数実施して注目を集めています。そこに Google Cloud のテクノロジーがどのように役立てられているのか、開発の中核メンバーにお話を伺いました。 利用しているサービス: Cloud Spanner, Memorystore for Redis, Google Kubernetes Engine, Anthos Service Mesh, Cloud Monitoring, Cloud Logging

                  カプコン: Cloud Spanner や GKE を用いて『ストリートファイター6』のためのクロスプレイ プラットフォームを構築 | Google Cloud 公式ブログ
                • 株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game & Apps

                  株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game & Apps

                    株式会社コロプラ『GKE と Cloud Spanner が躍動するドラゴンクエストウォーク』第 9 回 Google Cloud INSIDE Game & Apps
                  • NewSQLのコンポーネント詳解 - Qiita

                    4.2.1 Shardingの手法 先ほどの表1を理解するにはSharding手法の列にあげられた各用語の理解が必要となる。 YugaByteDBのブログ「Four Data Sharding Strategies We Analyzed in Building a Distributed SQL Database」には、非常に詳しくShardingの手法が紹介されている。この記事では、大きく以下4つの分類があるという。 Algorithmic Sharding (例: Memcached/Redis) Linear Hash Sharding (例: 過去のCassandra) Consistent Hash Sharding (例: DynamoDB、Cassandra) Range Sharding (例: Spanner、HBase) 詳細は割愛するが、1つ目のアルゴリズム・シャー

                      NewSQLのコンポーネント詳解 - Qiita
                    • できるだけインフラ運用したくない Ruby on Rails on Google Cloud

                      TL; DR Google Cloud 上で Rails をできるだけインフラ運用しなくて済むように構築するとしたら、こういう構成にするのはどうだろうか? メインの Web アプリは Cloud Run メインのデータベースには Cloud Spanner 非同期ワーカーには GKE Autopilot 非同期メッセージングキューには Cloud Pub/Sub DB マイグレーションには GKE Autopilot rails console には GKE Autopilot はじめに 先日、Cloud Spanner の ActiveRecord アダプターのバージョン 1.0 がリリースされました。 Scale your Ruby applications with Active Record support for Cloud Spanner | Google Cloud Blog

                        できるだけインフラ運用したくない Ruby on Rails on Google Cloud
                      • #CloudNativeDB NewSQLへの誘い

                        2021/7/16にCloud Native Database Meetup#1の発表資料です。

                          #CloudNativeDB NewSQLへの誘い
                        • メルペイDataPlatformのCDC DataPipeline | メルカリエンジニアリング

                          こんにちは、メルペイ DataPlatformチーム(@rerorero, @darklore, @laughingman7743)です。 この記事は、Merpay Tech Openness Month 2022 の14日目の記事です。 今日はメルペイ DataPlatformで取り組んでいるCDCパイプラインについて紹介します。 CDCパイプラインとは何か CDCとは Change Data Capture の略称で、データベース内のデータの変更(新規作成、削除、変更など)を追跡するシステムです。データソースで発生した変更は、ニアリアルタイムでデータシンクに反映させることができます。 CDCの実現方法にはいくつかあるのですが、メルペイ DataPlatformでは以下の2つの方法を使ったパイプラインを構築しています。 Striim社のブログ がよくまとまっていたので、こちらから引用させ

                            メルペイDataPlatformのCDC DataPipeline | メルカリエンジニアリング
                          • Spannerを解説したら講義になった話 | iret.media

                            はじめに Qiitaにこんな記事が上がりました 2020年現在のNewSQLについて – Qiita NewSQLについてアーキテクチャから詳しくまとまっていて 理解しやすい素晴らしい記事だと思います。 社内のSlackでも共有したのですが、 この辺の話は 古くからあるモノリシックなRDBMSが生まれて スケールアップの限界との戦い データベースをどうスケールアウトするかの時代が訪れて、 分散コンピューティングの問題にぶち当たる という、 『歴史を理解してはじめてCloud Spannerの凄さを理解できる』 と思ったので もっと補足説明がいるんじゃないかと思い、社内でLTしました。 また、自分はDataBase周りの知識が弱いと思っているので、 補強のためにもまとめてLTを…とおもったら、 前後編で2回に分けて30分語るという発表だったので、 もう講義じゃんって言われたし思いました。 W

                              Spannerを解説したら講義になった話 | iret.media
                            • 本番稼働中の Spanner にダウンタイム無しに57時間かけてインデックスを追加して得た知見

                              こんにちは! Mercari Advent Calendar 2020 の6日目は、メルカリ Notification チーム/Software Engineer の tarotaro0 がお送りします。 Notification チームは、メルカリのアプリ内通知やメール、プッシュ通知などを扱うマイクロサービスの開発・運用を担当しているチームです。いわゆるバックエンドアプリケーションの開発と、そのアプリケーション・サーバー及びデータベースなど関連サービスの運用を行っています。 Notification チームでは、データベースに Google Cloud Spanner (以下 Spanner) を採用しています。メルカリにおける通知は社内でも特に大きいトラフィック・データ量を扱う領域で、秒間数千にも及ぶリクエストに対応出来るスケーラビリティや高可用性などが求められます。Spanner は

                                本番稼働中の Spanner にダウンタイム無しに57時間かけてインデックスを追加して得た知見
                              • 大規模分散DBのCloud Spannerが、RailsのActive Recordに対応。スケーラブルで高可用なRubyアプリケーションの開発が容易に

                                Googleは、同社がクラウドサービスとして提供しているCloud SpannerをRailsのActive Recordに対応させるアダプタ「activerecord-spanner-adapter」が正式版となったことを発表しました。 Cloud Spannerは、Googleの多数のデータセンターにまたがる地球規模で大規模分散処理を行うリレーショナルデータベースです。事実上無制限とされる高いスケーラビリティと99.999%の高可用性を備えつつ、強い一貫性とトランザクション処理、SQLによるクエリなどを実装しています。 メルカリの決済サービスであるメルペイがバックエンドデータベースにCloud Spannerを採用し、数百万ユーザーの処理を行っているとされています。 このCloud SpannerをRailsのActive Recordのバックエンドデータベースとして使えるようにするア

                                  大規模分散DBのCloud Spannerが、RailsのActive Recordに対応。スケーラブルで高可用なRubyアプリケーションの開発が容易に
                                • メルペイにおけるGoogle Cloud Spannerの取り組み | メルカリエンジニアリング

                                  この記事は MERPAY TECH OPENNESS MONTH の 2日目の記事です。 こんにちは、メルペイのバックエンドエンジニアの @sinmetal です。 メルペイではメインのデータベースとして、 Google Cloud Spanner を利用しています。 SpannerはGoogleが独自開発した強力なデータベースですが、Google Cloud Spannerがサービスとして公開されてからまだ2年ほどしか経過していません。 そのため、まだ世界に公開されているノウハウが乏しく、メルペイの中でも実際開発していく中で、設計上の苦悩や、運用時の問題にぶつかることがありました。 調査したこと、解決したことなどは記事として公開しているので、Spannerに興味がある方は読んでみてください。 Google Cloud Spanner Deep Dive Spanner Benchmark

                                    メルペイにおけるGoogle Cloud Spannerの取り組み | メルカリエンジニアリング
                                  • 詳解 google-cloud-go/spanner  — セッション管理編

                                    はじめにCloud Spanner では各言語ごとにライブラリが提供されており、アプリケーションはそれを使うことで非常に簡単にデータベースにアクセスすることができます。しかし Cloud Spanner の性能を最大限引き出すためには、クライアント側の設定値をチューニングしたりなど、クライアントライブラリの挙動を知っておくことが不可欠です。そこで本記事では Go 言語のクライアントライブラリ (google-cloud-go) を例に、クライアントライブラリがどのような処理をしているかをじっくりと紐解いてみたいと思います。 全てを一度にカバーすると結構なボリュームになってしまうので、まずは本記事で Spanner の「セッション管理」の部分について説明します。本記事を通して ClientConfig や SessionPoolConfig の各値の意味がわかるようになるのが目標です。 尚こ

                                      詳解 google-cloud-go/spanner  — セッション管理編
                                    • Cloud SpannerとCloud Pub/Subとで実装するTransactional outboxパターン | メルカリエンジニアリング

                                      Credit Designチームでバックエンドエンジニアをしている@iwataです。主にメルペイスマート払い関連の開発をしています。 Merpay Advent Calendar 2021 の21日目の記事をお届けします。 メルペイスマート払いの開発においてもご多分に漏れず、マイクロサービスアーキテクチャを採用しています。マイクロサービス開発において避けては通れない問題として、分散トランザクションによるデータ整合性の担保があります。メルペイスマート払いマイクロサービスでは一部APIにおいて整合性担保のために、Transactional outboxパターンを用いた実装をしています。 本記事ではテーブル設計を含めたその実装の詳細を紹介したいと思います。 tl;dr Transactional outboxパターンを使ったSpanner, Pub/Sub間での整合性担保 Spannerならでは

                                        Cloud SpannerとCloud Pub/Subとで実装するTransactional outboxパターン | メルカリエンジニアリング
                                      • アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & Apps Online

                                        アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & Apps Online

                                          アプリ開発者、DB 管理者視点での Cloud Spanner 活用方法 | 第 10 回 Google Cloud INSIDE Games & Apps Online
                                        • Google の SQL parser/analyzer の ZetaSQL とは何であるか

                                          2019年4月に Google の SQL parser/analyzer の ZetaSQL が公開されました。 現在 BigQuery Standard SQL や Cloud Spanner で実装されている SQL 方言であり、 Cloud Next 2019 で BigQuery UI から Cloud Dataflow で実行されるパイプラインを記述できる機能として発表された Cloud Dataflow SQL にも使われることがツイートからも見て取れます。 ZetaSQL については Google の外の人がまともに言及しているのを見たことがなく、聞いたことがないか様子見という人が多いと思うので分かっていることを書いていきます。 既存の文献から見る素性ZetaSQL は Spanner の SQL 実装について書かれた Spanner: Becoming a SQL Sys

                                          • 34. NewSQLとは w/ tzkb | fukabori.fm

                                            話したネタ 2000年初頭のデータストアは何が主流だったのか? OLTPとDWH データベースから見るとReadのスケールアウトは難しくない Web系で難しいのはWriteのスケールアウト RDBのReadのスケールアウト方法とは? Web + RDB + Cache のアーキテクチャの辛い点は? UniverseとMultiverse Oracle Exadata RDBにおける全文検索 NewSQLとは何か? NoSQLとは何を指すか? トランザクション処理はなぜ難しいのか? マルチマスタの難しさ Google Cloud Spannerについて 金の弾丸 YugabyteDB/CockroachDB/TiDB YugabyteDBの特徴は? PostgreSQL互換とMySQL互換という売り NewSQLの技術要素は? NewSQLのレプリケーションはどうやるか? Raftとは? D

                                              34. NewSQLとは w/ tzkb | fukabori.fm
                                            • Cloud Spannerのローカル開発環境をdocker-composeでサクッと立ち上げる | フューチャー技術ブログ

                                              最小構成のリージョン+1ノード構成でも、なかなかのコストが掛かりますね。 開発環境どうするかコストが高いので、開発環境用に気軽にインスタンスを立ち上げるのは難しそうです。 ということで、本記事ではGCPが公式で提供してくれている Spanner エミュレータ を使って開発環境を立ち上げます!(エミューレータあってよかったありがとう!) gcloud CLIとdockerイメージでの提供がありますが、今回はdocker-composeで利用する例を紹介します。 サンプルコードはこちら: tarosaiba/docker-compose-spanner 以下2点工夫したポイントです。 通常、Spannerエミュレータ起動後にインスタンスの作成手順(gcloud spanner instances create)が必要になりますが、docker-compose立ち上げ時に自動でインスタンス作成さ

                                                Cloud Spannerのローカル開発環境をdocker-composeでサクッと立ち上げる | フューチャー技術ブログ
                                              • Cloud Spanner のロックについて

                                                この記事では Cloud Spanner の並行性制御が何であるのか、結果として何を実現しているのかを見てから具体的なロックの実際の挙動について追っていく。 なお分散システムとしての話はあまりないので期待しないように。 この記事では実際の挙動を確認しながら書いているつもりだが、 2021年3月現在の挙動がサイレントに変わることもあることには注意してほしい。 TL;DR Cloud Spanner はロックフリーな Read-Only Transction と、堅実にロックを行う Read-Write Transaction の2つのアクセスパスを持ち、 ROMV と呼ばれる方式に最も近い。 その他技術との組み合わせの結果として分散システムでありながら Serializability と Linearizability を兼ね揃えた理論上最も強い一貫性を実現しており、 Google はそれを

                                                  Cloud Spanner のロックについて
                                                • go-sqlite3を使ってCloud Spannerエミュレーターを作ってみた / Cloud Spanner emulator with go-sqlite3

                                                  go-sqlite3を使ってCloud Spannerエミュレーターを作ってみた / Cloud Spanner emulator with go-sqlite3

                                                    go-sqlite3を使ってCloud Spannerエミュレーターを作ってみた / Cloud Spanner emulator with go-sqlite3
                                                  • Cloud Spanner の実行計画の活用に関する取り組み

                                                    Merpay Advent Calendar 2020 の11日目は、メルペイ Solutions Team の apstndb がお送りします。 色々な場所で既に書かれている通り、メルペイはサービス開始当初から主要なデータベースとして Google Cloud Platform(GCP) の DBaaS である Cloud Spanner を使っています。 この記事ではメルペイにおける Cloud Spanner の実行計画の活用のために取り組んだことについて紹介します。 Cloud Spanner の特性である外部一貫性による強い一貫性保証、レプリケーションによる高い可用性、水平分散による高いスケーラビリティ、リレーショナルデータモデルによるスキーマ、フルマネージドなことによる低い運用負荷などは多くの業界にとってメリットがあるものですが、金融サービスであるメルペイも例外ではありません。

                                                      Cloud Spanner の実行計画の活用に関する取り組み
                                                    • Building Uber’s Fulfillment Platform for Planet-Scale using Google Cloud Spanner

                                                      You’re seeing information for Japan . To see local features and services for another location, select a different city. Show more Introduction The Fulfillment Platform is a foundational Uber domain that enables the rapid scaling of new verticals. The platform handles billions of database transactions each day, ranging from user actions (e.g., a driver starting a trip) and system actions (e.g., cre

                                                        Building Uber’s Fulfillment Platform for Planet-Scale using Google Cloud Spanner
                                                      • Cloud Spanner as a SQL System

                                                        Cloud Spanner as a SQL System GCPUG Cloud Spanner Day @apstndb

                                                          Cloud Spanner as a SQL System
                                                        • 公開論文から学ぶ Google のテクノロジー : パート 3:データベース技術編 | Google Cloud 公式ブログ

                                                          Google Cloud のサービスは、Google が長年にわたって構築してきたグローバルネットワーク、そして、世界各地のデータセンターによって提供されています。これは、Google 検索をはじめとするさまざまな Google のサービスを支えるインフラでもあり、その上では、Google 独自の技術を活用したさまざまなミドルウェアが稼働しています。 Google のエンジニアは、自分たちが開発した技術の詳細を論文として公開しており、これまでに公開された論文は、Google の研究チーム、Google Research の Web サイトにある Publication Database で検索できます。このブログシリーズでは、次の4つの分野に分けて、Google Cloud の技術に関連の深い論文を紹介していきます。 分散処理基盤(コンテナ技術)とデータセンター ネットワーク技術 データベ

                                                            公開論文から学ぶ Google のテクノロジー : パート 3:データベース技術編 | Google Cloud 公式ブログ
                                                          • 任天堂:新しい汎用ゲームサーバーを Google Kubernetes Engine、Cloud Spanner などを駆使して構築 | Google Cloud 公式ブログ

                                                            任天堂:新しい汎用ゲームサーバーを Google Kubernetes Engine、Cloud Spanner などを駆使して構築 世界中で愛好されている任天堂株式会社(以下、任天堂)の家庭用ゲーム機「Nintendo Switch」。そのオンライン マルチプレイを担う汎用ゲームサーバーの動作基盤に新たに Google Cloud が採用されました。多くのユーザーとの通信を処理しなければならないこの仕組みを、なぜ Google Cloud 上に構築したのか。どのような工夫を施すことで、安定性・可用性と運用負担の軽減を両立させたのか。構築に携わったエンジニアのお二人に話を伺いました。 利用しているサービス: Google Kubernetes Engine、Agones、Anthos Service Mesh、Cloud Spanner、Cloud Load Balancing、Cloud

                                                              任天堂:新しい汎用ゲームサーバーを Google Kubernetes Engine、Cloud Spanner などを駆使して構築 | Google Cloud 公式ブログ
                                                            • Google Cloud Spanner、価格据え置きのままスループットを1.5倍に向上、ノード当たりのストレージも10TBに増強と発表

                                                              Google Cloudは、大規模分散データベース「Cloud Spanner」について価格を変更することなく従来よりも大幅な性能向上を提供すると発表しました。 Google Cloudとしては珍しく、AWSのAmazon DynamoDBを名指しして「DynamoDBよりも高い性能を半額で提供する」と自画自賛しています。 スループットの50%向上とノード当たりのストレージ容量向上 Cloud Spannerは、PostgreSQL互換のデータ型、スキーマ、一般的なクエリにより強い一貫性を備えつつ、1 桁ミリ秒のレイテンシーと高スループット、ファイブナインの可用性 、そしてグローバルな分散機能による事実上無制限のスケールなどを実現しているマネージドデータベースサービスです。 参考:Google、大規模分散DB「Spanner」にPostgreSQL互換インターフェイスを実装。強い一貫性で秒

                                                                Google Cloud Spanner、価格据え置きのままスループットを1.5倍に向上、ノード当たりのストレージも10TBに増強と発表
                                                              • Cloud Spanner でインターリーブテーブルを高速に取得する

                                                                本記事ではインターリーブテーブルを使いこなす、ちょっとしたテクニックを紹介します。 TL;DRCloud Spanner では SELECT AS STRUCT 構文をサブクエリに使うことで、親のテーブルとインターリーブされたテーブルのレコードを一発で高速に取得することができます。更に Cloud Spanner の CPU 使用率も抑えることができるので非常に効率的にクエリできます。 はじめにCloud Spanner ではインターリーブと呼ばれる、あるテーブルのレコードの物理的な配置を別のテーブルのレコードの配下に置ける仕組みがあります。この仕組みを使ってテーブル間に親子関係を作ることで、複数のテーブル間に参照整合性制約を持たせたり、パフォーマンスを向上させることができます。 このインターリーブですが、親のテーブルと子のテーブルを両方一辺に取得したいと思ったことはないでしょうか?ユーザ

                                                                  Cloud Spanner でインターリーブテーブルを高速に取得する
                                                                • 詳解 google-cloud-go/spanner — トランザクション編

                                                                  はじめに前回 は google-cloud-go/spanner のセッション管理について見てみました。セッション管理だけでも Session Pool や Session のライフサイクルの管理など、やっていることは非常に多岐に渡っていましたね。 今回はそのセッションの上でどのように Cloud Spanner のトランザクションが動くのか、クライアントライブラリの実装を元に見ていきたいと思います。 具体的には以下のような点について述べます。 トランザクションとはトランザクションの種類トランザクションを高速化する方法トランザクションのリトライトランザクションの冪等性トランザクションの終了処理前回と同じく google-cloud-go の v0.38.0 時点のものを参照して記述しています。実装に踏み込んだ話もしており、将来に渡って処理内容が変わらない保証はないため、気になる方は最新のバ

                                                                    詳解 google-cloud-go/spanner — トランザクション編
                                                                  • Cloud Spannerの主キーの設計

                                                                    Cloud Spanner は完全に管理されたミッションクリティカルなリレーショナル データベース サービスであり、グローバルなスケールでのトランザクション整合性、スキーマ、SQL(拡張機能を含む ANSI… ただドキュメントを見てもID生成器のことなどを理解していないと、いざ設計するとき苦労するかと思い記載しました。ドキュメントの補足資料として読んでいただけたら幸いです。 Cloud Spannerの特徴特徴を簡単に記載しますと ノード、スプリットで構成されている。レコードデータはスプリットに配置される。どこに配置するかはレコードの主キーに依存する。レコードの増減に応じてCloud Spanner側で自動で(1)どのレコードをどのスプリットに配置するか。(2)スプリットの数 をコントロールするレコードをどのスプリットの配置するかはレコードの主キーの値に依存する分散されたスプリットにアクセ

                                                                      Cloud Spannerの主キーの設計
                                                                    • アンチパターンから学ぶ!Cloud Spanner あるあるクイズ

                                                                      本記事では、Cloud Spanner を初めて使う場合にハマってしまいがちなポイントを、クイズ形式でまとめてみました。Cloud Spanner を適切に使うために、思わぬ落とし穴にはまらないように、参考資料などにも目を通してください。 Cloud Spanner とは??Cloud Spanner は、スケーラビリティと強整合性を兼ね備えた、エンタープライズレディーなデータベースです。急峻なスパイクに対しても瞬時に DB の性能を変更できるため、API サーバに近い感覚で、DB をスケールアウト、スケールインさせることが可能です。 そんな Cloud Spanner ですが、うまく使いこなすためには、Cloud Spanner の特性を考慮した設計が必要になります。Cloud Spanner では、うまくデータを分散させつつデータローカリティもうまく使う必要があり、そのためには、スキー

                                                                        アンチパターンから学ぶ!Cloud Spanner あるあるクイズ
                                                                      • GCPUGまとめ「Cloud Spannerでセカンダリインデックスを使うときの勘所」 | BLOG - DeNA Engineering

                                                                        この記事は先日開催された「 GCPUG Tokyo Spanner Day May 2020 」で発表した内容のまとめです。 概要 Cloud Spannerではセカンダリインデックスもテーブル インデックスを作成するタイミングには注意が必要 インデックス設計の際にはクエリの実行プランを確認 Spannerのセカンダリインデックスの基本 Cloud Spanner(以下、Spanner)で特定のレコードを主キー以外の列で見つけたいときにセカンダリインデックスは役に立ちます。 Spannerのセカンダリインデックス(以下、インデックス)は、非インデックスのテーブルと同様に、テーブルとして格納されています。 そのため、通常のテーブルと同様にスキーマ設計では ホットスポット の発生に注意したり、 読み取りパフォーマンス向上のために インターリーブ したりなど考慮することがあります。 インデックス

                                                                          GCPUGまとめ「Cloud Spannerでセカンダリインデックスを使うときの勘所」 | BLOG - DeNA Engineering
                                                                        • Google Cloud Spannerのセッションリークを静的解析で防ぐ | メルカリエンジニアリング

                                                                          この記事はMERPAY TECH OPENNESS MONTHの16日目の記事です。 メルペイ エキスパートチームの@tenntennです。 @sinmetalの記事でも紹介がされていたように、メルペイではGoogle Cloud Spannerを用いて開発しています。 Google Cloud Spannerはまだまだ世界的にもノウハウが乏しい状況です。そのため、メルペイにおいても各開発者が学んだノウハウをGo Fridayなどを通して社内で共有しながら開発を進めています。 社内でノウハウを共有する中で、うっかりミスをしがちでかつそのミスによってサービスに大きく影響を与えるものがいくつか出てきました。例えば、Google Cloud Spannerのセッションを閉じ忘れることによるセッションリークの問題は、うっかりミスをしがちですがサービスに大きな影響を与えかねません。 このような問題を

                                                                            Google Cloud Spannerのセッションリークを静的解析で防ぐ | メルカリエンジニアリング
                                                                          • Cloud Spanner で初期費用を 90% 削減し、オブザーバビリティの向上とより容易なクエリを実現 | Google Cloud 公式ブログ

                                                                            Cloud Spanner で初期費用を 90% 削減し、オブザーバビリティの向上とより容易なクエリを実現 ※この投稿は米国時間 2021 年 5 月 26 日に、Google Cloud blog に投稿されたものの抄訳です。 ACID トランザクション、SQL サポート、そして非リレーショナル データベースのスケーラビリティと可用性を兼ね備えた強整合性のリレーショナルデータベースとして、Cloud Spanner はすべての主要な市場セグメントで力強い成長を見せています。Spanner を採用していただくお客様が増加するにつれ、「開発、テスト、小規模な本番環境のワークロードをより費用対効果の高い方法でサポートするために、より小さなサイズのインスタンスにも対応させてほしい」というご要望が寄せられるようになっていました。これを受けて、このたび Spanner のインスタンス サイズをより細

                                                                              Cloud Spanner で初期費用を 90% 削減し、オブザーバビリティの向上とより容易なクエリを実現 | Google Cloud 公式ブログ
                                                                            • /cloud-spanner-operation-on-merpay

                                                                              アナハイムに行ってきた!AWS_reInforce_2023参加報告(速報版) / AWS re:Inforce 2023 Participation Bulletin

                                                                                /cloud-spanner-operation-on-merpay
                                                                              • TiDB Cloud で実現するマスターデータの最適運用 - COLOPL Tech Blog

                                                                                こんにちは。サーバー基盤グループでサーバーエンジニアをやっている尾山です。 コロプラ社の最新タイトルでは TiDB Cloud という分散型データベースをマスターデータの運用に使っています。TiDB Cloud とは PingCAP 社が提供する OSS、TiDB をベースとしたマネージドなデータベースサービスです。本記事は、その TiDB Cloud  を選んだ理由を経緯と交えて紹介させていただきます。 経緯 弊社では TiDB Cloud を選択するまでに多くの紆余曲折があり、理由を説明するにはかなり昔まで遡って話をする必要があります。コロプラでは2017年頃までにリリースしたタイトルでは、全てのデータをGCEなどのIaaS上の MySQL で運営していました。元々はベンダーロックインを避けるためと、メンテナンスによるダウンタイムを作らないことを目的としてこの方法で運営していました。し

                                                                                  TiDB Cloud で実現するマスターデータの最適運用 - COLOPL Tech Blog
                                                                                • 社内ゲームサーバー基盤 Takasho とは | BLOG - DeNA Engineering

                                                                                  こちらの記事は先日開催された Google Cloud INSIDE Games & Apps でのセッションの内容をまとめたものになります。 アーカイブが公開されているので是非そちらもご覧ください。 こんにちは。2020 年新卒入社の海老沼といいます。現在はこれから紹介する社内ゲームサーバー基盤 Takasho を利用したゲームサーバーの開発や運用をしています。 先日、『東方ダンマクカグラ』という東方Project初の公認スマホ向けリズムゲームをリリースしました。 今回はそんな『東方ダンマクカグラ』などのゲームを支える DeNA 内製のゲームサーバー基盤 Takasho の紹介と、 Takasho を利用したゲームサーバー開発/運用でどのように Google Cloud を活用しているか紹介します。 Takasho とは Takasho とは、DeNA 内製のゲームサーバー基盤です。 開

                                                                                    社内ゲームサーバー基盤 Takasho とは | BLOG - DeNA Engineering

                                                                                  新着記事