8/29/2009

[MySQL][Spider]Spider storage engine 2.1 released

I'm pleased to announce the release of Spider storage engine version 2.1(beta).
http://spiderformysql.com/

The main changes in this version are following.
- Add UDFs "spider_direct_sql" and "spider_bg_direct_sql".
  These UDFs execute hand writing SQLs on remote server by using Spider's table link and store result sets in temporary tables.
  Main usages are following.
  1.Maintenance remote servers.
    (Create table on remote servers for Spider's link tables, etc.)
  2.Use every resources (excluding table) on remote servers.
  3.Mass update of the bulk data. (Update all rows in tables, etc.
    There are next advantages. It is possible to update it in parallel
    with multiple remote servers. The amount of the data transfer of
    a local server and remote servers can be reduced)
  4.Aggregate by 2-steps. (For DWH etc)
    First step: Aggregate on remote servers and collect result
                    to local server.
    Second step: Aggregate on local server.
    (There are next advantages. It is possible to aggregate it in
    parallel with multiple remote servers. The amount of the data
    transfer of a local server and remote servers can be reduced)

Example of 2-steps aggregating
(Count the number of rows in 7 shards tables from local server)
-------------------------------------------------------------------------------
Prepare for aggregating:
mysql> create table target_hosts (host char(17))engine=myisam;
Query OK, 0 rows affected (0.01 sec)

mysql> insert into target_hosts (host) values ('192.168.22.13'),('192.168.22.14'),('192.168.22.15'),('192.168.22.16'),('192.168.22.51'),('192.168.22.52'),('192.168.22.53');
Query OK, 7 rows affected (0.00 sec)
Records: 7  Duplicates: 0  Warnings: 0

mysql> create temporary table a (a int)engine=myisam;
Query OK, 0 rows affected (0.00 sec)

Execute aggregating:
mysql> select sum(a.a) from a, (select sum(spider_direct_sql('select count(*) from data01', 'a', concat('srv "s", host "', host, '"'))) cnt from target_hosts) c;
+-----------+
| sum(a.a)  |
+-----------+
| 117641811 |
+-----------+
1 row in set (40.86 sec)

mysql> truncate table a;
Query OK, 0 rows affected (0.00 sec)

mysql> select sum(a.a) from a, (select spider_bg_direct_sql('select count(*) from data01', 'a', concat('srv "s", host "', host, '"')) cnt from target_hosts) c;
+-----------+
| sum(a.a)  |
+-----------+
| 117641811 |
+-----------+
1 row in set (5.91 sec)
-------------------------------------------------------------------------------

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!

8/22/2009

[MySQL][Spider]Spider storage engine 2.0 released

I'm pleased to announce the release of Spider storage engine version 2.0(beta).
http://spiderformysql.com/
From this time, version 1.x is stable releases, version 2.x is development releases for new features.

The main changes in this version are following.
- Add table parameter "semi_table_lock_connection".
- Add server parameter "spider_semi_table_lock_connection".
  Spider has "spider_semi_trx", "spider_semi_trx_isolation", (for transactional tables like InnoDB) "spider_semi_table_lock" and "semi_table_lock" (for non transactional tables like MyISAM) options for consistent reading at remote servers during executing 1 SQL at local server. But you must use different connections for transactional tables and non transactional tables because "semi_table_lock" causes implicit transaction commit.
  "semi_table_lock_connection" and "spider_semi_table_lock_connection" can use different connection for transactional tables and non transactional tables by checking that "semi_table_lock" is enabled.

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!

8/18/2009

[MySQL][Spider]Spider storage engine 1.0 released

I'm pleased to announce the release of Spider storage engine version 1.0.
Development status is GA from this version.
http://spiderformysql.com/

From this version, you can download shared library for Linux x86_64.
Thanks to Kazuho for information.

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!

8/15/2009

[MySQL][Spider]Spider storage engine 0.18 released

I'm pleased to announce the release of Spider storage engine version 0.18.(RC)
http://spiderformysql.com/

The main changes in this version are following.
- Add table parameter "use_pushdown_udf".
- Add server parameter "spider_use_pushdown_udf".
  "use_pushdown_udf" and "spider_use_pushdown_udf" are used for sending UDF string to remote server if engine_condition_pushdown is used.

From this version, you can use '\r' and '\n' like a space between table parameter name and table parameter value.
Thanks to Akihiro for report.

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!

8/09/2009

[MySQL][Spider]Spider storage engine 0.17 released

I'm pleased to announce the release of Spider storage engine version 0.17.(RC)
Development status is RC from this version.
http://spiderformysql.com/

The main changes in this version are following.
- Add table parameter "use_table_charset".
- Add server parameter "spider_use_table_charset" and "spider_local_lock_table".
  "use_table_charset" and "spider_use_table_charset" are used for choosing the communication charset (UTF8 or table charset) at connections from Spider to remote server. Basically, you don't need changing this option but you can change this option for performance improvement if the SQL has very longer table and column name string than column data string.
  "spider_local_lock_table" is used for suppressing sending "lock table" statement to remote server for locking table at local server only. This option is used with non-blocking resharding.

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!

8/01/2009

[MySQL][Spider]Spider storage engine 0.16 released

I'm pleased to announce the release of Spider storage engine version 0.16.(beta)
http://spiderformysql.com/

The main changes in this version are following.
- Add server parameter "spider_same_server_link" and "spider_table_init_error_interval".
  "spider_same_server_link" is used for creating table link to same MySQL server's table.
  "spider_table_init_error_interval" is used for protection from connection consumption of eternal loop of table link. Please increase this parameter using "set global" command if eternal loop of table link causes connection consumption.

Please see "99_change_logs.txt" in the download documents for checking other changes.

Enjoy!