タグ

mariadbに関するk-holyのブックマーク (18)

  • https://mroonga.org/ja/docs/upgrade.html

    k-holy
    k-holy 2019/11/07
    MroongaをアップグレードまたはMroongaを入れたMySQL/MariaDBをアップグレードする前にこちらを確認。
  • 技術めも » Blog Archive » MroongaでMecab

    MariaDBにMroongaはバンドルされていますが、 TokenizerとしてMecabを使う際は、少し注意が必要です。 公式には、以下のように書かれていますが、手順を残しておきます。 https://mariadb.com/kb/en/library/mroonga-overview/ 「Tokenise using MeCab. Required Groonga to be buillt with MeCab support.」 なお、OSはCentOS7、MariaDBのバージョンは、10.3.8です。 まずは、バンドルされているMroongaのインストールを見ていきます。 公式(https://mariadb.com/kb/en/library/about-mroonga/)を参考にしています。 1.プラグインのインストール MariaDB [(none)]> show eng

  • プロダクトに日本語の全文検索機能を加えたい、検索インデックスのリアルタイム更新もほしい というときの手軽な方法 - Qiita

    プロダクトに日語の全文検索機能を加えたい、検索インデックスのリアルタイム更新もほしい というときの手軽な方法MySQL検索InnoDB全文検索mysql5.7 プロダクトオーナー や ユーザからの要望によって 検索機能 の必要性に迫られたとき、 ありふれた方法 でかつ 速攻 で実装する方法です 要件 日語文章 などのデータに対して、全文検索できる 検索リクエストに対して、十分高速にレスポンスを返す 検索インデックスはリアルタイム更新され、実データと相違がでない 検索対象のデータが追加/更新/削除されたら検索結果にも即反映される 希望 できるだけ速く実装/提供したい できるだけ運用コストも小さくしたい おすすめな方法 もしもプロダクトがMySQL互換のデータベースを使っていたら、要件を満たして 明日にも提供できる かもしれません(気持ちです、フロント周りの実装など事情によって当然コストが

    プロダクトに日本語の全文検索機能を加えたい、検索インデックスのリアルタイム更新もほしい というときの手軽な方法 - Qiita
    k-holy
    k-holy 2019/11/05
    既存テーブルに全文検索インデックス追加、または検索用テーブルを追加してトリガーで更新。正規化処理は必須となると検索用テーブルを用意すべきか。
  • MySQL5.7 InnoDB のN-gram全文検索を検証&サービス導入した

    ※ この記事は以前Mediumで公開した記事 の転載です MySQL5.7・InnoDB・N-gram という環境下で全文検索の挙動やパフォーマンスについて検証を行った。FULLTEXT INDEXは以前はMyISAMでしか利用できなかったが、 5.6.4からInnoDBでのサポートが始まっていた。 InnoDBの全文検索は5.7、特に5.7.6以降でいわゆるCJK(中国語・日語・韓国語)がN-gramで標準サポートされ始め、 CREATE TABLE文で簡単にパーサーを指定できる構文のサポート、 設定やクエリの組立で考えないといけない事が減った事で導入障壁がかなり下がっている。 ※4.1と5.0でサービス導入経験がある私の個人的な比較感想です。 FULLTEXT INDEXも他のINDEXと同様にデータ更新・削除の際にINDEXのrebuildが走るので更新時の負荷には注意が必要で、F

    k-holy
    k-holy 2019/11/05
    "「他INDEXが付与されたカラム」による絞込の方が効率的であってもそのINDEXは無視されて、FULLTEXT INDEXによる検索が実行される"
  • Mroongaの全文検索がいい感じだった - Qiita

    tl;dr InnoDBの全文検索自体は遅くない ただしブール全文検索を行い別項目でソートを行うと、とたんに遅くなる LIMITで取得件数を絞ってもあまり変わらない Mroongaには全文検索特化の最適化がありレスポンスが早い! ことのはじまり 地味に溜めていたテキスト情報が1000万レコードを超え、そろそろLIKE検索も限界なので、MySQL5.7から使えるようになったMeCabプラグインを使い全文検索機能を実装してみました。実装当初はそこまでレスポンスが悪くないと思っていたのですが、それなりのレコード数のあるワードを入力し、ソート条件を指定するとソートキーがたとえPKやインデックスが貼られているカラムでも劇重に!(おそらく1テーブルに使えるインデックスは1つまでというMySQLの制約) 別の方法がないか模索していたところ、Mroongaエンジンの全文検索を使ってみたらいい感じだったので

    Mroongaの全文検索がいい感じだった - Qiita
    k-holy
    k-holy 2019/11/05
    MySQL+MroongaでMeCabを使うケース
  • まだ日本語全文検索で消耗してるの? - Qiita

    この記事は InnoDB のフルテキストインデックスで日語 NGRAM の続きです。 以降↑の記事を「前回の記事」と呼称します。 例によって実験しつつ記述しています。整合性や内容の保証はできません。 検証に使ったのは CentOS 7, mysql 5.7.9 です。 前回の記事は何をしているのか 端的に言えば下記です。 文字列を ngram 化するファンクションを定義 全文検索したい複数カラムを結合して ngram 化した文字列を格納するカラムを定義 トリガーで↑のカラムに ngram 化した文字列を放り込む ↑↑のカラムに対して FULLTEXT INDEX を張る 検索時に ↑↑↑のカラムに対して MATCH AGAINST 検索を行うことで全文検索 とまぁ色々めんどいことをしています。 特に筋ではないトリガーとファンクションの定義が嫌。 mysql 5.7.9 には・・・ とこ

    まだ日本語全文検索で消耗してるの? - Qiita
    k-holy
    k-holy 2019/11/05
    InnoDBでFULLEEXTインデックスの全文検索
  • 【MySQL】Spiderストレージエンジンによる水平分散(シャーディング) - 株式会社オーツー|スタッフブログ

    どうも、開発2部サーバー担当の山です。 皆さんDBの水平分散は行ってますか? 最近ではサービス開始時点から水平分散しているタイトルも割と多いのではないでしょうか。ユーザーやデータが増えるのはサービスが好調な証ではありますが、いざ対応しようと思うと大変ですよね。 今回はMySQLのストレージエンジンであるSpiderを使った水平分散(以下シャーディング)について紹介したいと思います。 Spiderとは Spiderは2009年にver1.0がリリースされた国産のMySQLストレージエンジンで、MySQL以外にもMariaDBOracleに対応しています。 MySQLにはInnodbを代表にMyISAM、MEMORYなど様々な特徴を持ったストレージエンジンが用意されていますが、Spiderの特徴はストレージエンジンがシャーディングに対応していることです。 ここ最近は皆さんAWSのAuror

    【MySQL】Spiderストレージエンジンによる水平分散(シャーディング) - 株式会社オーツー|スタッフブログ
  • Spider Storage Engine Overview

    MariaDB starting with 10.3.4If you are using Spider with replication, you can expand the list of transaction errors to be retried by setting slave_transaction_retry_errors to the following to avoid network problems: 1158: Got an error reading communication packets 1159: Got timeout reading communication packets 1160: Got an error writing communication packets 1161: Got timeout writing communicatio

  • Spider Installation

  • MariaDBのストレージエンジンを駆使して目指せRDS ~ 俺達の戦いはここからだ ~ - Qiita

    はじめに この投稿はアイスタイル アイスタイル Advent Calendar 2017の25日目(最後!)の記事です。 どぉ~もみなさん、おはこんばんにちは! I wish you a Merry Christmas♪ みなさん、クリスマスはいかがお過ごしですか? 大切な人と、家族と、友達と…。 様々なクリスマスがあると思います! え?僕ですか? 楽しいひと時を過ごしましたよ! Maria(DB)と…。 寂しくなんか…ないもん…(震え声 さて、今回は前回の続きとなります。 MariaDBのSPIDERストレージエンジンのフェデレーションの紹介とSPIDERノードの冗長化に関する検証を行っていきたいと思います! おさらい(目指している環境) 今、僕が実現させていきたいと目指している環境の縮図はこちらです。 最近特に聞く話で「マイクロサービス化」というテーマがあります。 サービス単位でアプリ

    MariaDBのストレージエンジンを駆使して目指せRDS ~ 俺達の戦いはここからだ ~ - Qiita
  • Spiderストレージエンジンのご紹介

    2. 0. Spiderストレージエンジンとは? 1. Spiderで何をするのか? 2. どういう場合にSpiderを使うのか? 3. Spiderはどういったところで使われているか? 4. Spiderのシャーディングの仕組み 5. Spiderのセットアップ 6. VPストレージエンジンとの組み合わせによる他次元シャーディング 7. Spiderのロードマップ 8. Spiderの入手方法 (VP含む) アジェンダ

    Spiderストレージエンジンのご紹介
  • MariaDB 10.3 で Spider Storage Engine を試す - Qiita

    2018年5月にGAになった MariaDB Server 10.3.7 以降 Spider ストレージエンジンが GA になりました。 https://mariadb.com/kb/en/library/mariadb-1037-release-notes/ https://mariadb.com/kb/en/library/spider-storage-engine-overview/ https://mariadb.com/kb/en/library/spider-installation/ Spider の概要 Spider では非常にデータ数の多いテーブルなどをパーティション分割し、複数のノード(Data Node)にシャーディングすることにより、書き込み(write)でもスケールアウトすることができます。Tencent Games などで大規模に利用されているらしいです。 テス

    MariaDB 10.3 で Spider Storage Engine を試す - Qiita
  • Dynamic Columns

    Created 13 years, 5 months ago Modified 2 years, 6 months ago Type article Status active License CC BY-SA / Gnu FDL History Comments Dynamic columns allow one to store different sets of columns for each row in a table. It works by storing a set of columns in a blob and having a small set of functions to manipulate it. Dynamic columns should be used when it is not possible to use regular columns. A

  • MariaDB/NoSQL Dynamic Columns の活用 - Qiita

    以前、ここに MySQLをKVSっぽく使ってみる を掲載して、自分的には結構満足していたのですが、今更になって、MariaDBにその機能が実装されていたという、なんともお恥ずかしい話しになります MariaDBにDynamic Columnsというものがありまして、これがまさしくRDBMSとNoSQLのハイブリッド構成ができるアレになります いやいや、参った・・ テーブル定義 以下のようなテーブルを作成しました。テーブル定義としては、普通のテーブルです、今回、商品マスタテーブルというものを作成してみました。この定義上にある、spec というblob型のカラムが、今回、Dynamic Columns で中心になる話しになります DROP TABLE IF EXISTS products ; CREATE TABLE `products` ( `id` int(11) unsigned NOT

    MariaDB/NoSQL Dynamic Columns の活用 - Qiita
  • MariaDBとMroongaで作る全言語対応超高速全文検索システム

    MariaDBには超高速な全文検索を実現するMroongaストレージエンジンがバンドルされていることを知っていますか?Mroongaを使うと日語だけでなくアジア圏の言語も含むすべての言語をサポートした超高速な全文検索システムを簡単に作ることができます。どれだけ簡単に作ることができるか紹介します。Read less

    MariaDBとMroongaで作る全言語対応超高速全文検索システム
  • About FederatedX

    k-holy
    k-holy 2017/11/29
    MySQL FEDERATEDの後継ストレージエンジン FederatedX
  • Database JUNKY

    k-holy
    k-holy 2014/10/16
    MySQLのFEDERATEDストレージはセキュリティの問題で非推奨になってるけど、こちらは大丈夫なのかな
  • 長年の議論に終止符 -- MySQLとMariaDBの違い一覧 - 技術メモ置き場

    (2014.12.3追記:このblogの内容は、以下の書籍にも反映させた。) SQLレベルの差異 MariaDB5.5とMySQL5.5ではSQLレベルでの違いはほとんどなかった。autoincrementの最大値の扱いくらい。 ただし、MariaDB10.0でREGEXPがマルチバイト対応になったので、アプリ側は注意。 項目 MySQL MariaDB Autoincrement 最大値に達すると、以降は最大値を繰り返す。Warningのみ。エラーにならない。tinyintなら…,125,126,127,127,127… 最大値-1まで。以降はエラーを返す。tinyintなら…,125,126,ERROR,ERROR,… EXPLAIN文 JSON形式 バージョン5.6から 未対応 Optimizer Trace バージョン5.6から 未対応(ただし、MariaDBのほうがオプティマイザ

    長年の議論に終止符 -- MySQLとMariaDBの違い一覧 - 技術メモ置き場
    k-holy
    k-holy 2013/09/20
    ちょうど分岐点なのね。まだレプリケーションも未経験な自分には特に決め手がないけど…
  • 1