タグ

dbに関するtyoro1210のブックマーク (53)

  • ゲーム業界のデータベース事情。大量のシャーディングで複雑化する負荷分散、メンテナンスで止めないとスケールアップ・ダウンができないなどの課題。解決方法は?[PR]

    ゲーム業界のデータベース事情。大量のシャーディングで複雑化する負荷分散、メンテナンスで止めないとスケールアップ・ダウンができないなどの課題。解決方法は?[PR] 日常的に多数の同時アクセスが発生し、大量のデータが蓄積されるオンラインゲームのバックエンドは、データベースにとってもっとも過酷な環境の1つだといえます。 このバックエンドデータベースとしてよく使われているのがMySQLデータベースです。しかしその使われ方は一般的なMySQLとは異なり、データベースを細かく分割して多数のサーバに負荷を分散するシャーディングと呼ばれる仕組みを構築するなど、複雑なシステム構築と運用が行われているのが現実です。 そこで急速に注目度を高めているのが、MySQL互換でありつつ分散データベースの機能を備え、シンプルなクラスタ構成で高い負荷に耐える、いわゆる「NewSQL」と呼ばれる分野の代表的なデータベースの1

    ゲーム業界のデータベース事情。大量のシャーディングで複雑化する負荷分散、メンテナンスで止めないとスケールアップ・ダウンができないなどの課題。解決方法は?[PR]
    tyoro1210
    tyoro1210 2023/11/14
    『現行のAuroraを分割するのと、TiDBに全部まとめるのは同程度』『金額的には同程度でも開発や運用面でのコストメリットがある』『移植しても動きますが、性能がそんなに出ないパターンがある』
  • 顧客のコンテンツデータを消失させた話 - Qiita

    簡単な自己紹介 18日にポツンと空いていたので、枯れ木も山のなんとやら..で書かせて頂きます。 エンジニアとしてもうすぐ7年目になります。専門はバックエンド(メイン:Java/C#)です。 しかし、少人数開発かつ安定していない現場が多かったため、足りないロールは巻き取って仕事をすることが多く、AWSの構築を一部やったり、アプリ(iOS/Android/ReactNative)の面倒を見たこともあります。 最近1年で一番やって楽しかった仕事は、bitriseでリリースやstgアプリ環境構築したこと。 一番嫌だった仕事は、超レガシーなReactNativeアプリをAndroid64bit対応でバージョンアップしたこと。(なお私はバックエンド担当...) もう完全にバックエンド関係ないですね やらかした案件概要 エンジニアとして2年目の秋になります。 とある、Webサイト構築屋さんにエンジニア

    顧客のコンテンツデータを消失させた話 - Qiita
    tyoro1210
    tyoro1210 2019/12/18
    『5. 問題が発生したら、DBの向き先を元に戻す』この手順あるなら既存DBあるはずだしデータ消失はしなさそうっと思ったらしてなかった。
  • postgresのデータを盗まれた話 - のんびりやの日記

    はじめに さっぶ。どうも、だーやまんです。 この記事は、番環境でやらかしちゃった人 Advent Calendar 2019 - Qiitaの11日目の記事です。 これは、中途半端な知識でサービスを運用していた結果、タイトル通りの大失敗をしてしまったお話です。個人開発での出来事なので、業務で起きたことかと胃薬を握られていた方はご安心ください。 語るのもすごい恥ずかしいレベルですが、戒めのために晒しておきます。 この記事を読んでほしい人 初めてインターネット上にサービスを公開しようとしている人 喋太郎の利用者様(この場をお借りして、改めてお詫び申し上げます。当に申し訳ございませんでした。) 背景とか Discord読み上げBot 「喋太郎」にてやらかしました www.dayaman.work 利用者が約10万人 さくらのVPSにてAppサーバ2台、DBサーバ1台で運用 各サーバの死活監視

    postgresのデータを盗まれた話 - のんびりやの日記
    tyoro1210
    tyoro1210 2019/12/11
    『Portは5432』『postgresユーザがデフォルトパスワード』『サブネットマスクが0』 味わい深い / なんかいい学習機会になったようで、ほっこりする話しでよかった。(サービス利用者の心中は置いといて
  • 異世界召喚 ~私、能力はバックエンドって言ったよね!~ - Qiita

    背景 間違って入ってしまったSI企業での開発経験談です。 入社前に「バックエンドの経験しかない」と伝えたがフロントもやる羽目に。 入って知ったLAMP環境での開発。あと顧客の窓口もやる羽目に。 私の担当するシステムは二期目で、引継ぎなし・ドキュメントなし・前任者なし、のトリプルコンボ。 PCは13インチのラップトップ、サーバはレンタルサーバ。 Gitなし、CIなし、規約なし、静的チェックなし(エディタはサクラ)。 既存コードがPHPなのにオブジェクト指向じゃない。フレームワーク使えない。 開発規模はだいたい20人月。期限は3か月。 偉い人「OSSハセキュリティガー」 開発の流れ ローカル環境(MAMP)で実装。 実装したファイルをFTPソフトでレンタルサーバのテスト環境にアップロード(上書き)。 テストを行って(テスト仕様書なし)動けば番環境にアップロード なお、開発環境を変える裁量は

    異世界召喚 ~私、能力はバックエンドって言ったよね!~ - Qiita
    tyoro1210
    tyoro1210 2019/12/10
    会社選びを「やらかしちゃった」やつか
  • なぜあなたは SHOW ENGINE INNODB STATUS を読まないのか - そーだいなるらくがき帳

    この記事は、MySQL Casual Advent Calendar 2017の20日目の記事です。 煽り気味のタイトルですがみなさん SHOW ENGINE INNODB STATUS 読んでますか? SHOW ENGINE INNODB STATUS \G 見づらいのなんとかならんのか。— そーだい@初代ALF (@soudai1025) 2016年12月20日 わかる。でもMySQLの振る舞いを知る中でSHOW ENGINE INNODB STATUSを読まざる得ない場面はそこそこあります。 どんな時に必要になるのでしょうか? そこでSHOW ENGINE INNODB STATUSにまつわる話を書きます。 SHOW ENGINE INNODB STATUS をまず読みやすくする まず末尾に \G を付けましょう。 これで3倍読みやすくなります。 次に pager less -S を

    なぜあなたは SHOW ENGINE INNODB STATUS を読まないのか - そーだいなるらくがき帳
  • SQLインジェクションゴルフ - なんと3文字で認証回避が可能に

    昨日のエントリ「SQLインジェクションゴルフ - 認証回避の攻撃文字列はどこまで短くできるか?」にて、認証回避の攻撃文字列が5文字にできる(「'OR'1」)ことを示しましたが、@masa141421356さんと、やまざきさん(お二人とも拙著のレビュアーです)から、idとpwdにまたがった攻撃例を示していただきました。やまざきさんの例は、MySQL限定ながら、なんと3文字です。これはすごい。 @masa141421356さんの攻撃例 @masa141421356さんのツイートを引用します。 @ockeghem 大抵のDBでid=''OR' AND pwd='>' ' が通ると思います(id側に「'OR」, pwd側に「>' 」で6文字)。長さ0の文字列がNULL扱いされないDBなら最後のスペースを消して5文字です。 — masa141421356 (@masa141421356) June

  • MySQL :: MySQL 8.0 リファレンスマニュアル :: 13.3.6 LOCK TABLES および UNLOCK TABLES ステートメント

    SAVEPOINT、ROLLBACK TO SAVEPOINT および RELEASE SAVEPOINT ステートメント

    tyoro1210
    tyoro1210 2013/05/10
    『LOCK TABLES を利用する時、ステートメントの中で利用する予定の全てのテーブルをロックしなければいけません。』
  • Amazon SimpleDB(可用性と柔軟性に優れた非リレーショナルデータベースサービス) | AWS

    Amazon SimpleDB は、可用性の高い、データベース管理の負担を軽減する NoSQL データストアです。デベロッパーが必要なのは、ウェブサービスリクエストを介してデータ項目を保存およびクエリすることだけです。残りの処理は Amazon SimpleDB が行います。 リレーショナルデータベースの厳格な要件の制約を受けない Amazon SimpleDB は、高い可用性と柔軟性を実現するように最適化されており、管理の負担はほとんどありません。Amazon SimpleDB はバックグラウンドで、地理的に分散した複数のデータのレプリカを自動的に作成および管理し、高い可用性とデータ耐久性を実現します。このサービスでは、データの保存とリクエストの処理に実際に使用されたリソースについてのみ課金されます。オンザフライでデータモデルを変更でき、データはユーザーのために自動的にインデックス化され

    Amazon SimpleDB(可用性と柔軟性に優れた非リレーショナルデータベースサービス) | AWS
  • Big Sky :: VimでDBが操作できる vdbi-vim 作った。

    DB操作ツール Emacs DBI を作ってみた - 技術日記@kiwanami このツールの目的は、クロスプラットフォームで便利なDB操作環境を実現することです。 pgAdmin や MySQL Query Browser のようなGUIの良さをCUIで実現してみようとしてみました。すなわち、ぼくのかんがえたさいきょうのDBツールです。ちなみに、このツールにとってEmacsはただの実行環境です。Emacs使わない人でも使うと便利だと思います。 http://d.hatena.ne.jp/kiwanami/20120305/1330939440 VimもーVimもー! って事で作りました。 mattn/vdbi-vim - GitHub Database client for Vim https://github.com/mattn/vdbi-vim Emacs版はepcというRPCプロト

    Big Sky :: VimでDBが操作できる vdbi-vim 作った。
  • GitHub - mattn/vdbi-vim: Database client for Vim

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

    GitHub - mattn/vdbi-vim: Database client for Vim
  • 間違って10万人の顧客DB消しちまったwwwwwwww - MC)まとめこむ

    1:以下、VIPがお送りします:2012/03/05(月) 23:05:21.43 ID:MYKH/EmU0 特定されない範囲で 30分前の話 2:以下、VIPがお送りします:2012/03/05(月) 23:06:04.91 ID:b77m7UZ00 2chやってないでハードディスク復旧業者に頼め 13:以下、VIPがお送りします:2012/03/05(月) 23:08:29.71 ID:MYKH/EmU0 >>2 とりあえず今担当の人呼んでる(俺も担当なんだけどさwww 3:以下、VIPがお送りします:2012/03/05(月) 23:06:05.57 ID:G+trElAB0 顧客DBって何? 13:以下、VIPがお送りします:2012/03/05(月) 23:08:29.71 ID:MYKH/EmU0 >>3 顧客情報が詰まった大切な大切なデータベース 4:

    tyoro1210
    tyoro1210 2012/03/06
    『俺まで胃が痛くなってきた』
  • LINQ to SQL: .NET Language-Integrated Query for Relational Data

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support. Dinesh Kulkarni, Luca Bolognese, Matt Warren, Anders Hejlsberg, Kit George March 2007 Applies to: Visual Studio Code Name "Orcas" .Net Framework 3.5 Summary: LINQ to SQL provides a runtime infrastructure for managing relational data as objects without lo

    LINQ to SQL: .NET Language-Integrated Query for Relational Data
  • リレーションシップを介したクエリの実行 - ADO.NET

    他のオブジェクトまたは他のオブジェクトのコレクションをクラス定義内で参照することは、データベース内の外部キー リレーションシップに直接対応します。 クエリを実行するときにこのリレーションシップを使用するには、ドット表記を使ってリレーションシップ プロパティにアクセスし、オブジェクト間を移動します。 これらのアクセス操作は、SQL で同等の複雑な結合または相関サブクエリとして変換されます。 たとえば、次のクエリでは、ロンドン在住の顧客からの注文のみが結果として得られるように注文から顧客へと移動します。 Northwnd db = new Northwnd(@"northwnd.mdf"); IQueryable<Order> londonOrderQuery = from ord in db.Orders where ord.Customer.City == "London" select

    リレーションシップを介したクエリの実行 - ADO.NET
  • Windows Phoneメモ002:ローカルデータベースの中身を見る – | .dev():クラスメソッド開発ブログ

    こんにちは。くろの(福田)です。 Windows Phone向けアプリケーションを開発する際に、分離ストレージを使うことがあると思います。 Windows Phone 7.1からはSQL Server Compact Edition(SQL Server CE)が使えるようになりました。 このSQL Server CEで作ったテーブルの中身を見る環境を準備したいと思います。その際、分離ストレージエクスプローラを使います。 (1)コマンドラインで分離ストレージエクスプローラのディレクトリに移動する cd c:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\IsolatedStorageExplorerTool ※PATHに上記ディレクトリが追加されていた場合はこの手順はスキップ。 ※上記は64bit開発環境でのデフォル

  • Windows Phone のデータベースの中身を確認する方法 - ggった結果

    Windows Phone OS 7.1 (Mango)から、分離ストレージを利用したローカルデータベースを使用することができます。 この記事では、開発中にデータベースに格納した値を確認する手順を共有します。 Windows Phone では、SQL Server Compact Edition(SQL Server CE)を使用します。 今回使うデータベースは、次のアプリを元におこなっています。 How to: Create a Basic Local Database Application for Windows Phone http://msdn.microsoft.com/en-us/library/hh202876 1.コマンドラインで分離ストレージに保存されているデータベースファイル(.sdf)を取得する(※1) まず、次のコマンドで分離ストレージエクスプローラのディレクトリ

    Windows Phone のデータベースの中身を確認する方法 - ggった結果
  • neue cc - はぢめてのWindows Phone 7でのデータベース(Linq to Sql)

    Windows Phone 7に新しいSDKが来ました!9月頃リリースという話のMangoアップデート(Windows Phone 7.1)対応SDK。まだベータですが色々触れます。そしてついにデータベースが搭載されました。というわけで軽く触ってみました。 Code First フツーだとSQLを書いてデータベースの定義を用意しなければならないところですが、WP7でのデータベースプログラミングにおいて、SQLは不要です。と、いうよりも、そもそも使えません。データベース体(SQLCE)や、データベースにSQLを発行するクラス(ADO.NET)はMicrosoft.Phone.Data.Internalに格納されており、Internalという名のとおり、外から触ることは出来ません。ではどうするか、というと、WP7ではデータベースはLinq to Sqlを介して操作します。 じゃあテーブル定義

  • はてなブログ | 無料ブログを作成しよう

    日記_2024.8.29 鞍馬と貴船 29日は鞍馬と貴船に行ってきました。こんな天気でバイクは無理、でも引きこもるのも嫌なので前々から行きたかった鞍馬と貴船に行くことにしました。ただ、いつ大雨が降っても全くおかしくないので天気がヤバそうなら帰ることにします。普通に日帰りできる距離ですから…

    はてなブログ | 無料ブログを作成しよう
  • 削除フラグのはなし

    6. id name pass is_deleted 1 ryu xxx FALSE 2 ken xxx FALSE 3 honda xxx TRUE 8. id name pass is_deleted 1 ryu xxx FALSE 2 ken xxx FALSE 3 honda xxx TRUE 3 honda xxx FALSE

    削除フラグのはなし
    tyoro1210
    tyoro1210 2011/08/12
    最近、待避テーブルに移行した。
  • Mongo DBを半年運用してみた

    MongoDB is a document-oriented database that stores data in flexible, JSON-like documents. It supports features like replication, auto-sharding, and indexing. The document discusses using MongoDB with Ameba Pico's photo tagging service, including initial implementation with one shard, expanding to multiple shards as user numbers grow over time, and repairing and upgrading shards over time to suppo

    Mongo DBを半年運用してみた
    tyoro1210
    tyoro1210 2011/08/02
  • Using filesort

    去年ソートに関する記事を書いたが、今日はその続きである。 MySQLでEXPLAIN SELECT...を実行するとExtraフィールドでよく見かける「Using filesort」という文字列。Filesortって一体なんだろう?と思ったことはないだろうか。単刀直入に言ってFilesortの正体はクイックソートである。 クエリにORDER BYが含まれる場合、MySQLはある程度の大きさまでは全てメモリ内でクイックソートを処理する。ある程度の大きさとはsort_buffer_sizeであり、これはセッションごとに変更可能である。ソートに必要なメモリがsort_buffer_sizeより大きくなると、テンポラリファイル(テンポラリテーブルではない)が作成され、メモリとファイルを併用してクイックソートが実行される。 Filesortは全てのソート処理において実行されるわけではない。前回の記事

    Using filesort
    tyoro1210
    tyoro1210 2011/01/07
    なんか美しくないし もっと整理できないかと思ったけど、サブクエリ内でlimitするしかねぇか。