Mroongaを社内クラウド的なMySQLプラットフォームに標準搭載している話...

28
2015/04/03 Mroongaを社内クラウド的な MySQLプラットフォームに標準搭 載している話 ヤフー株式会社 吉野彰真

Transcript of Mroongaを社内クラウド的なMySQLプラットフォームに標準搭載している話...

  • 2015/04/03

    MroongaMySQL

  • P2 $ whoami

    @y055ie

    2011 Oracle / MySQL

    RDB

    DVORAK

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • MySQL?

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P4

    MASTER

    mysqld

    mysqldmysqld

    MASTER

    mysqldmysqldmysqld

    MASTER

    mysqldmysqld

    Shared-Storage

    SLAVE

    mysqldmysqld

    SLAVE

    mysqldmysqld

    SLAVE

    mysqldmysqld

    SLAVE

    mysqldmysqld

    ClusterWare

    ()8

    /

    MySQL

    Web

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • !

    = 100

    = 400

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Mroonga

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P7 Mroonga

    2012/ 2013/

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P9

    Xeon L5520 2.27GHz2(16C)/ 24GB Mem /SAS 146GBx2 /Raid 1

    OS Oracle Enterprise Linux 5.5

    MySQL Percona Server 5.1.51

    uS8_general_ci

    Groonga 2.0.6

    Mroonga 2.0.6

    mecab mecab-0.994 (mecab-ipadic-2.7.0-20070801)

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P10

    Wikipedia(abstract)http://dumps.wikimedia.org/

    xmlSQL(INSERT)128MB80mysql> desc wikidb.article; +----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+----------------+| id | int(11) | NO | PRI | NULL | auto_increment | | title* | varchar(255) | YES | MUL | NULL | | | abstract*| text | YES | | NULL | | +----------+--------------+------+-----+---------+----------------+

    *()Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P11

    ApacheJMeter20/40Threadsselect match(title,abstract) against ('+${searchword}' in boolean mode) as score ,id ,title ,abstractfrom articlewhere match(title,abstract) against ('+${searchword}' in boolean mode) order by score desc

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P12 SELECT

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P13

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P14 UPDATE SELECT

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P16

    PackageWeb

    Package

    !

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P18 (1)

    RSS

    UGC

    DB(ASCII)

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P19 (2)

    20likeCPU

    Mroonga10ms

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P20

    Bigram (

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P22

    DDL/SQL()

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • ()

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P24 (1)

    Percona Server 5.1/5.5 Oracle Enterprise Linux 5/6 (SPEC)

    Mroonga 3.0.0/4.0.3

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P25 (2)

    () ()

    /usr/sbin/mysqld(my_print_stacktrace 0x35)[0x7ac7e5] /usr/sbin/mysqld(handle_fatal_signal 0x4a4)[0x688084] /lib64/libpthread.so.0[0x340420f500] /usr/lib64/libgroonga.so.0(grn_column_truncate 0xed)[0x36bbe3b06d] /usr/lib64/libgroonga.so.0(grn_table_truncate 0x2a3)[0x36bbe57713] /usr/lib64/mysql/plugin/ha_mroonga.so(_ZN10ha_mroonga16storage_truncateEv 0x33)[0x7f2a269d16e3] /usr/sbin/mysqld(_Z12mysql_deleteP3THDP10TABLE_LISTP4ItemP10SQL_I_ListI8st_orderEyy 0x305)[0x76a525] /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD 0x2f65)[0x58c7e5] /usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state 0x333)[0x58e483] /usr/sbin/mysqld(_ZN15Query_log_event14do_apply_eventEPK14Relay_log_infoPKcj 0xe48)[0x72ed48] /usr/sbin/mysqld(_Z26apply_event_and_update_posP9Log_eventP3THDP14Relay_log_info 0x125)[0x52b445] /usr/sbin/mysqld[0x52f787] /usr/sbin/mysqld(handle_slave_sql 0x949)[0x530bb9] /lib64/libpthread.so.0[0x3404207851] /lib64/libc.so.6(clone 0x6d)[0x3403ee894d] Trying to get some variables. Some pointers may be invalid and cause the dump to abort. Query (7f2900008210): DELETE FROM `ar5cles_for_search` Connec5on ID (thread ID): 2 Status: NOT_KILLED

    binlog_formatMIXEDSTATEMENT

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • P27

    roongaySQL

    ()

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.

  • !

    Copyright (C) 2015 Yahoo Japan Corpora5on. All Rights Reserved.