タグ

atsuizoのブックマーク (3,721)

  • [Oracle Cloud] OCI Database(DBCS/DBaaS)関連情報まとめ(リンク集) - Qiita

    記事の目的 Oracle Cloud Infrastructure(OCI)のうち、OCI Database(DBCS/DBaaS)に関連する情報を集めてみました。 ※OCIで提供されている他のDatabaseサービスであるExaCSやAutonomous、OCI-ClassicのDatabaseサービスであるDBCSは対象外としています。 ※ブログ名や執筆された方の名前/IDは省略させていただいています。ご容赦を。 そして、記事を書いて頂き、ありがとうございます。 「他にもこんないい記事あるよ!」という情報などあればコメントください!追加します。 公式サイト Oracle Cloudデータベース・サービスのページ おすすめは末尾にあるFAQを読むこと。細かいことまで色々書いてあります。 OCI マニュアルのDBaaSのページ(日/英) https://docs.cloud.oracle

    [Oracle Cloud] OCI Database(DBCS/DBaaS)関連情報まとめ(リンク集) - Qiita
  • デブサミ2020、講演関連資料まとめ

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    デブサミ2020、講演関連資料まとめ
  • MySQL8でCHAR関数がドキュメントどおりになってない - 41から始めました

    MySQL8でCHAR関数がドキュメントどおりになってない https://dev.mysql.com/doc/refman/5.6/ja/string-functions.html#function_char を読むと、こう書いてある。 CHAR(N,... [USING charset_name]) CHAR() は各 N 引数を整数として解釈し、それらの整数のコード値で指定された文字を構成している文字列を返します。NULL 値はスキップされます。 mysql> SELECT CHAR(77,121,83,81,'76'); -> 'MySQL' mysql> SELECT CHAR(77,77.3,'77.3'); -> 'MMM' MySQL5.7.29の場合 ドキュメントはこちら mysql [localhost:5729] {msandbox} ((none)) > SELEC

    MySQL8でCHAR関数がドキュメントどおりになってない - 41から始めました
    atsuizo
    atsuizo 2020/02/29
    8.0.14で実行したら正しく表示された!mysqlsh 8.0.19新たに入れて8.0.14サーバーにつないでも正しかったので、サーバー側の問題かどこかしらの設定か。
  • 2020年現在のNewSQLについて - Qiita

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

    2020年現在のNewSQLについて - Qiita
  • MySQLのslow_logは何を計測して出力されるのか - tom__bo’s Blog

    slow logの時間は何を計測しているのか? きっかけ とあるMySQLインスタンスで1Gbのネットワーク帯域を使い切ってレスポンスタイムが悪化していたという話を聞いた。 確かに遅いがlong_query_timeを小さくしてもslow_logは特に出ていなかったため、どのクエリが問題なのかを特定しづらかったらしい。 これを聞いたときはRedisとかインメモリのDBならまだしもMySQLがストレージより先に1GbのNICを使い切ることがあるのかーと驚いた。まあ、100GB以上のメモリも珍しくないので、ほとんどメモリから結果を返していれば1Gb/s以上返すことは難しくなさそうではある。 だが、long_query_timeを小さくしてもslow_logにクエリが出力されなかったという部分は気になった。 具体的にlong_query_timeがどれくらいなのか、同時接続数はどれくらいでQPS

    MySQLのslow_logは何を計測して出力されるのか - tom__bo’s Blog
  • MySQL (MariaDB) でハマった仕様 - kamocyc’s blog

    以前,MySQL (正確にはMariaDB) を使った際,いろいろはまったので記載します. 使ったバージョンが古い(MariaDB 10.1.37, MySQL 5.7くらいに相当)なので,最新版では治っているところもいくつかあります. sql_modeをデフォルトの設定で使わない これはよく言われていることですが,sql_modeがデフォルトでは変な値が入ったりエラーになって欲しいところがスルーされたりしてまずいので,適切なsql_modeを設定します. 第18回 MySQL5.7のデフォルトのSQLモードを確認してみる:MySQL道普請便り|gihyo.jp … 技術評論社 MySQLSQLモードをstrictモードで設定する。 - Qiita ただ,MySQL 5.7以降はデフォルト設定が改善されたようです.(でも確認すべきですが) MySQL :: MySQL 8.0 Refer

    MySQL (MariaDB) でハマった仕様 - kamocyc’s blog
    atsuizo
    atsuizo 2020/02/18
    ハマリどころコレクション。よくぞここまでまとめてくれました。
  • Linux,UNIXでmkdirとdateコマンドを使って当日の作業用フォルダ(20XXMMDD)を一発で作成、指定する方法 | 俺的備忘録 〜なんかいろいろ〜

    Blog 201412 Linux,UNIXでmkdirとdateコマンドを使って当日の作業用フォルダ(20XXMMDD)を一発で作成、指定する方法 サーバ上で作業する際、良くやるのが作業当日の日付でフォルダ(例:20141201など)を作成し、そこにバックアップした設定ファイルや作業に使うファイルを設置すること。 ただ、"作業当日の日付"となると事前に用意してある手順書では直接記述出来ないため、毎回その部分はコマンドのコピー&ペーストでは無く、手動で入力となってしまう。 これはちょっと面倒なので、コマンドをコピー&ペーストで一発で当日の作業用フォルダを作成するコマンドについて記述する。 といっても、dateコマンドを「`(バッククォーテーション)」で囲んで、整形して出力させるだけなんだけどね。。。 1.作業用フォルダの作成 作業用フォルダを作成する場合は、以下のようにコマンドを実行すれば

  • PostgreSQLでTRUNCATEをROLLBACKした際の内部の挙動を追いかけてみた | DevelopersIO

    PostgreSQL 11.5文書 68.6. データベースページのレイアウト このヘッダ情報のt_xminやt_xmaxを参照することで、どのトランザクションに対してどのバージョンの行データを見せるべきなのか?ということが判断できる訳です。※XID = トランザクションID また、PostgreSQLは基的に1リレーションにつき1ファイルを利用してデータを管理します(TOASTテーブルなどの例外もあります)。例えばOracleの場合は1つ以上のデータファイルから構成された表領域に複数のテーブルやインデックスが格納されますが、PostgreSQLの場合はテーブルやインデックスといったDB上のオブジェクト1つにつきOS上の1ファイルが対応付きます。PostgreSQLでTRUNCATEを実行すると、対象テーブル用の物理ファイルを新しく作成し、以後は新しい物理ファイルを参照するようになります

    PostgreSQLでTRUNCATEをROLLBACKした際の内部の挙動を追いかけてみた | DevelopersIO
  • Amazon Redshiftの仕様を調べてみた | フューチャー技術ブログ

    クラウド環境におけるDWHの選択肢として、Redshiftはもはや珍しいものではなくなりましたが、弊社内の採用実績はそれほど多くはありませんでした。 記事は元々そのような社内向けに、Redshiftの基的な仕様をなるべく網羅的に理解できるようまとめたものです。 筆者について新卒でフューチャーに入社し、今年で8年目になります。 入社後は一貫して技術畑、オンプレミスのインフラに始まり、直近ではアプリケーションまで含めたプロジェクト技術統括を担当しています。 私もかつては社内有数のAWSエンジニアを自負していましたが、最近は別の仕事のため少し遠ざかっており、クラウドの世界は日進月歩なこともあり知識をアップデートする必要を感じています。 ※この記事の準備中にもElastic Resizeがリリースされました。 記事は私のリハビリも兼ね、ドキュメントのまとめだけでなく、実際に手を動かして振る

    Amazon Redshiftの仕様を調べてみた | フューチャー技術ブログ
  • ロギングベストプラクティス - kawasima

    printfをつかったり、ログエントリを自分でファイルに書き出したり、ログローテションを自分でやったりしてはいけない。運用担当者にお願いして、標準ライブラリやシステムAPIコールを使うようにしよう。そうすれば、実行中のアプリケーションが他のシステムコンポーネントと適切に連携して、特別なシステム設定なしに適切な場所またはネットワークサービスにログを記録できるようになる。 ロギングライブラリを使いたければ、特にJavaの世界にはLog4j, JCL, slf4j, logbackなど多くのものが存在する。私はslf4jとlogbackを組み合わせて使うのが好きだ。とてもパワフルで、設定も比較的簡単だ。(JMXで設定できたり、設定ファイルのリロードもできる)。 slf4jの最高なところは、状況にあわせてロギングのバックエンドを変えれるところにある。特にあなたがライブラリ書くときには、ライブラリの

    ロギングベストプラクティス - kawasima
    atsuizo
    atsuizo 2020/01/18
    概ね同意。ただしオリジナルのエラーメッセージ(JavaのExceptionなど)を握りつぶして別のメッセージに置き換えると逆に何が起きているか分からないこともあるので悩ましい。
  • クラウド基盤入門難易度を独自比較!|佐々木康介|note

    AWS、Azure、GCPOracle Cloud、IBM Cloud。僕が個人的に触ったことがあるクラウド基盤を当にちょっと触っただけで入門難易度を比較するといういい加減な文章です。 「オンプレしか知らないけど一番苦労せずにクラウドエンジニアの雰囲気を味わいたい!」という人には何かの参考になるかもしれません。ならないかもしれません。 あと偏見しかありません。さらに調べもせずに感覚で書いてるから誤りがあれば優しくご指摘をお願いします。 比較軸まずは主にどんな観点で書くのかここで決意表明します。 ・アカウント登録の簡単さ ・仮想マシンを作る簡単さ ・UIのとっつきやすさ ・ほかのクラウド基盤との違い よし、いってみよう。 AWSまずはみなさんが一番触る機会が多いであろうAWSからいきます。これを基準にしましょう。AWSはクラウド基盤の先駆者ですが、追随する巨人らを振りきるがごとく正しい進

    クラウド基盤入門難易度を独自比較!|佐々木康介|note
  • けんつの1人 DBMS アドベントカレンダー Advent Calendar 2019 - Adventar

    DBMS に関する CMU の講義である Database Systems(2018 Fall) を追っていく。途中理解が進んだ部分はかなり雑に書くかも知れない。メモ程度の内容を残していく。ストレージエンジン周りは実装してみる

    けんつの1人 DBMS アドベントカレンダー Advent Calendar 2019 - Adventar
  • MySQL 8.0.18 の実装を読み解きながら簡単なストレージエンジンを自作する - それが僕には楽しかったんです。

    はじめに MySQL をビルドする ストレージエンジンを自作する Example エンジンをベースにする handlerton の作成とインスタンス化 テーブルを作成する 余談・気になったところ テーブルを開く INSERT の実装 ha_tina の存在 テーブルスキャン store_lock の実装 external_lock の実装 rnd_init の実装 info の実装 extra の実装 rnd_next の実装 おわりに はじめに 卒論書くのに飽きてきて何かやりたくなったので急にストレージエンジンを書くことにしてみた。 MySQL のストレージエンジンを実装していく中で、色々できるかなと思っていたけど、やってみると MySQL の内部実装について色々知らないといけないことが多くインデックスとかトランザクションとかそういうところは実装できなかった。 github.com My

    MySQL 8.0.18 の実装を読み解きながら簡単なストレージエンジンを自作する - それが僕には楽しかったんです。
    atsuizo
    atsuizo 2020/01/17
    "卒論書くのに飽きてきて何かやりたくなったので急にストレージエンジンを書くことにしてみた。"すごい動機。こういう人には敵わないと思った。そしてこの学びのプロセスの公開、すごく参考になる。
  • Amazon Redshiftのシステムテーブルを見る時によく使うSQL 9選 | DevelopersIO

    はじめに Redshiftには多くのシステムビューがあり、それらを使ってRedshiftの状態を確認することができます。同じSQLをよく実行することがあるので、自分用のメモとして書き溜めていたものをブログにまとめたいと思います。 ログ記録のための STL テーブル - Amazon Redshift システムビューの一覧 - Amazon Redshift システムカタログテーブル - Amazon Redshift SQL一覧 統計情報の鮮度とソートされていない行の割合を確認したい どの程度テーブルに削除マーク付きのレコードが含まれているかを確認したい VACUUMコマンドの進捗を確認したい SQLの開始時間と終了時間を確認したい SQLの開始時間と終了時間を確認したい。(全部入り) 実行中のクエリの進捗を確認したい どの程度ストレージサイズを使っているかを確認したい 分散キー、ソートキ

    Amazon Redshiftのシステムテーブルを見る時によく使うSQL 9選 | DevelopersIO
  • Oracle Databaseでdefault指定の列を追加するときの挙動 - ぱと隊長日誌

    疑問 Oracle Databaseでdefault指定の列を追加すると、長時間のLibrary chache lockが発生すると聞く。これは当か? 結論 11gR1より前のバージョンでは起こりえた。行追加により既存行が全て更新されるため。 11gR1-11gR2ではdefault指定かつNOT NULL制約の列追加であれば発生しない。ただし、追加した列のNOT NULL制約を外すと既存行がデフォルト値で更新される。 12cは列追加時のNOT NULL制約が必要なくなり、NOT NULL制約を外したとしても既存行更新は発生しない。 説明 10gR2以前のバージョン default指定の列を追加すると、既存の行はDEFAULT句で指定した値で更新される。これは10gR2のマニュアルの中でも触れられている。 列を追加した場合、DEFAULT句を指定しないかぎり、新しい列の各行には初期値とし

    Oracle Databaseでdefault指定の列を追加するときの挙動 - ぱと隊長日誌
  • MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita

    TL;DR この記事に書いた事 二分探索木のお話(前提知識) MySQLのInnoDBで利用されているB+木インデックスの構造と特性 (前提知識) MySQLのClusteredIndex,SecondaryIndexについて(前提知識) カーディナリティについて(前提知識) 実際の負荷対策 検出編 スロークエリ 検出編 その他のクエリ割り出しいろいろ クエリ・インデックスの最適化 explainの使い方と詳細 ケース別実践 単純にインデックスがあたっていないケース カーディナリティが低いインデックスが使われているケース 部分的にしかインデックス/複合インデックスがあたっていないケース 複合インデックスの順序誤りでインデックスが適用できていないケース 複合インデックスの最初がrange検索のケース ソートにインデックスが適用できていないケース ソートにインデックスが適用できていないケース(

    MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita
    atsuizo
    atsuizo 2020/01/11
    よくここまでまとめたなあ。とても丁寧な解説。
  • 書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想とその検討停止について - Qiita

    この記事はZOZOテクノロジーズ #1 Advent Calendar 2019 23日目の記事です。 昨日の記事は弊チームの inductor による「GKEの内部負荷分散機能を使ってInternal Load Balancerを構築する」でした。面倒で困っているのでGCP様にはなんとかして欲しいものです さて記事では、残念ながら番運用には至らなかったのですが、私がここ暫くMLOps業の裏でやっていた「書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想」の検討結果について供養のつもりで記そうと思います。 なお、今年は弊社では全部で5つのAdvent Calendarが公開されています。 ZOZOテクノロジーズ #1 Advent Calendar 2019 ZOZOテクノロジーズ #2 Advent Calendar 2019 ZOZOテクノロジーズ #3 Ad

    書き込みがあるワークロードにおける ZOZOTOWN マルチクラウド構想とその検討停止について - Qiita
    atsuizo
    atsuizo 2019/12/23
    マルチクラウドについては近々整理しなきゃいけないと思っていたので非常に参考になる話。まあ、現状マネージドでやろうとするのはかなりキツイよね、っていう。
  • COMMITについて少し考えてみた(1)

    この記事は、JPOUG Advent Calendar 2019 の22日目の記事です。 21日目はryota_hnkさんの11gしか知らないオッサンが19cを触るでした。そして、なんと5年ぶりにJPOUG Advent Calendarで書くのですが(そもそも、このブログで何か書くのも5年ぶり...)、最近ちょっと考えてみた誰もが知っていて日常的に使っている「COMMIT」について書いてみたいと思います。 COMMITにおけるREDOログへの同期I/Oがパフォーマンス上問題になっている際によく観測される待機イベントは皆さんがご存知の"log file sync"になるのですが、ここでは深く触れません。"log file sync"について知りたい方は、以下、かなり昔にCOMMITにまつわるLog Writerの仕組みを書いたので参考にしてもらえると良いと思います。(ブラウザで見ると文字化

    COMMITについて少し考えてみた(1)
  • PostgreSQL ソースコードリーディング | Youki Shiraishi

    PostgreSQL Server PostgreSQL のアーキテクチャを頭に叩き込んでおこう. 上の図は PostgreSQL サーバーの主要なコンポーネントとそれらの関係を表している. PostgreSQL は,クライアントサーバーモデルに基づく共有メモリ型のアーキテクチャを採用している. サーバープロセス postgres は,クライアントからコネクション要求を受け取るとフォークしてバックエンドプロセス postgres を生成する. 生成されたバックエンドプロセスは,以降,そのクライアントとのやりとりを担う. クライアントは,バックエンドプロセスと通信してクエリを送信したり,結果を受け取ったりする. PostgreSQL のすべてのプロセス間で共有されるメモリ領域は,共有メモリと呼ばれる. 共有メモリは,主に低速なストレージへのアクセスを減らすバッファとして機能する. ストレージ

  • 保育園にChaos Engineeringを提案した話 - Qiita

    この記事は NTTコミュニケーションズ Advent Calendar 2019の14日目の記事です。 昨日は @yuki_uchida さん の記事、BERTを理解しながら自分のツイートを可視化してみるハンズオン でした。 はじめに 当初は Kubeinvaders の解説記事を書こうかなと思っていたのですが、先日うちの子供が通う保育園から、うちの子供に対するインシデントの報告を受け、今後の対策として保育園にChaos Engineeringを提案するという我ながら変なことをしてきたのでそのことを書きます。(※完全に会社に関係のない私事です) 保育園からインシデントレポートを受けたので、今後の対策案としてChaos Engineeringを提案してきた — まひと / Mahito (@Mahito) November 29, 2019 保育園で起きたインシデントについて からの電話

    保育園にChaos Engineeringを提案した話 - Qiita