You can subscribe to this list here.
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
(6) |
Sep
|
Oct
(19) |
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2011 |
Jan
(12) |
Feb
(1) |
Mar
(4) |
Apr
(4) |
May
(32) |
Jun
(12) |
Jul
(11) |
Aug
(1) |
Sep
(6) |
Oct
(3) |
Nov
|
Dec
(10) |
2012 |
Jan
(11) |
Feb
(1) |
Mar
(3) |
Apr
(25) |
May
(53) |
Jun
(38) |
Jul
(103) |
Aug
(54) |
Sep
(31) |
Oct
(66) |
Nov
(77) |
Dec
(20) |
2013 |
Jan
(91) |
Feb
(86) |
Mar
(103) |
Apr
(107) |
May
(25) |
Jun
(37) |
Jul
(17) |
Aug
(59) |
Sep
(38) |
Oct
(78) |
Nov
(29) |
Dec
(15) |
2014 |
Jan
(23) |
Feb
(82) |
Mar
(118) |
Apr
(101) |
May
(103) |
Jun
(45) |
Jul
(6) |
Aug
(10) |
Sep
|
Oct
(32) |
Nov
|
Dec
(9) |
2015 |
Jan
(3) |
Feb
(5) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(9) |
Aug
(4) |
Sep
(3) |
Oct
|
Nov
|
Dec
|
2016 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
|
1
|
2
|
3
|
4
|
5
(1) |
6
(2) |
7
(1) |
8
(2) |
9
|
10
|
11
(4) |
12
|
13
|
14
(3) |
15
(5) |
16
(2) |
17
|
18
(2) |
19
(1) |
20
(2) |
21
|
22
|
23
|
24
|
25
(1) |
26
|
27
(2) |
28
|
29
(1) |
30
|
From: 鈴木 幸市 <ko...@in...> - 2013-11-20 10:41:47
|
I’m waiting for a opinion from the guy familiar with this. Sorry for inconvenience. --- Koichi Suzuki 2013/11/20 17:31、Matej Jellus <je...@ts...<mailto:je...@ts...>> のメール: Hello, is it a problem of configuration? Or is it all bad? Should we wait for some answers? Thank you, best regards Matej On 11. 11. 2013 15:28, Matej Jellus wrote: Hello, here is the process. When we created table with DISTRIBUTE BY REPLICATION TO NODE ( datanode1 ), it has been inserting maybe 100 000 rows per minute. When we created table with DISTRIBUTE BY REPLICATION TO NODE ( datanode1, datanode2 ), it has been inserting maybe 50 000 rows per minute. When we created table witch DISTRIBUTE BY MODULO ( cluster_id ) TO NODE ( datanode1, datanode2 ) and has been writing to only one node, it was inserting 170 000 rows per minute. But when we created it with partitioning, it has been 5000 rows per minute. When we insert row into nonpartitioning table, no row was generated into the gtm log file. When we insert row into partitioning table, extra row is inserted into gtm log file : Saving transaction restoration info, backed-up gxid: 409215 LOCATION: GTM_WriteRestorePointXid, gtm_txn.c:2649. When deleting or updating from nonpartitioning table, everything is going quickly. But when we do the same thing with partitioning table, it is 3 - 4 times slower. Below is example with partitioning. We are importing data to database, so first we insert unit_id into table units. This will generate schema for the year we are inserting, based on the column gps_timestamp. After that it create table for the unit in the schema, which inherits from primary talbe - units_data. Then we are inserting only to table units_data. CREATE TABLE data.units ( unit_id uuid NOT NULL, cluster_id INT NOT NULL ); CREATE SEQUENCE ai_value; CREATE TABLE data.units_data ( row_id INTEGER NOT NULL DEFAULT nextval('ai_value'), unit_id uuid NOT NULL, cluster_id INT NOT NULL, gps_timestamp TIMESTAMP WITHOUT TIME ZONE NOT NULL, gps_lat DOUBLE PRECISION NOT NULL, gps_lng DOUBLE PRECISION NOT NULL, others hstore, PRIMARY KEY ( unit_id,cluster_id ) ); CREATE OR REPLACE FUNCTION generate_all(IN cluster_id INTEGER, IN unit_id UUID) RETURNS VOID AS $$ DECLARE ROK VARCHAR(4); DATANODE_ID VARCHAR(1); NAZOV_SCHEMY VARCHAR(13); NAZOV_TABULKY VARCHAR; NAZOV_END_TABULKY VARCHAR; NAZOV_ROK_TABULKY VARCHAR; BEGIN -- SELECT 2013 INTO ROK; ROK := 2013; SELECT cluster_id INTO DATANODE_ID; NAZOV_SCHEMY := 'node_'||DATANODE_ID||'_y_'||ROK; NAZOV_ROK_TABULKY := 'units_data_2013'; NAZOV_TABULKY := 'u_'||replace(unit_id::text,'-',''); NAZOV_END_TABULKY := NAZOV_TABULKY||'_m'; -- Ide sa vytvarat schema a tabulky IF NOT EXISTS(SELECT * FROM information_schema.schemata WHERE schema_name=NAZOV_SCHEMY) THEN EXECUTE 'CREATE SCHEMA '||NAZOV_SCHEMY||';'; END IF; IF NOT EXISTS(SELECT * FROM information_schema.tables where table_name=NAZOV_ROK_TABULKY AND table_schema=NAZOV_SCHEMY) THEN EXECUTE 'CREATE TABLE '||NAZOV_SCHEMY||'.'||NAZOV_ROK_TABULKY||'( CHECK ( date_part(''year''::text, gps_timestamp)=2013 ) ) INHERITS ( data.units_data );'; END IF; EXECUTE 'CREATE OR REPLACE RULE "year2013_node'||DATANODE_ID||'_choice" AS ON INSERT TO data.units_data WHERE date_part(''year''::text, NEW.gps_timestamp)=2013 AND NEW.cluster_id='||DATANODE_ID||' DO INSTEAD INSERT INTO '||NAZOV_SCHEMY||'.units_data_2013 VALUES(NEW.*);'; EXECUTE 'CREATE TABLE '||NAZOV_SCHEMY||'.'||NAZOV_TABULKY||'( CHECK ( unit_id='''||unit_id||'''::uuid ) ) INHERITS ('||NAZOV_SCHEMY||'.'||NAZOV_ROK_TABULKY||' );'; EXECUTE 'CREATE RULE "'||NAZOV_TABULKY||'_choice" AS ON INSERT TO '||NAZOV_SCHEMY||'.units_data_2013 WHERE unit_id='''||unit_id||''' DO INSTEAD INSERT INTO '||NAZOV_SCHEMY||'.'||NAZOV_TABULKY||' VALUES(NEW.*);'; RETURN; END $$ LANGUAGE plpgsql; CREATE RULE "generate_all_rule" AS ON INSERT TO data.units DO ALSO SELECT generate_all(NEW.cluster_id, NEW.unit_id); Thank you, best regards Matej On 11. 11. 2013 10:11, 鈴木 幸市 wrote: This does not show anything special. As I wrote, the messages in question don’t appear so often. Could you test how many of these messages are written using another case, for example, without using partitioning. I think partitioning table has nothing to do with the issue but I’d like to know if the case happens in other DMLs and DDLs. Thank you. --- Koichi Suzuki 2013/11/11 17:49、Matej Jellus <je...@ts...><mailto:je...@ts...> のメール: Our situation : two machines first - primary GTM, coordinator, datanode second - standby GTM, coordinator, datanode GTM configuration below. We are inserting 5 thousand rows per minute, which is too low for us. We need to insert 100 thousand rows per minute. Starting primary GTM : /gtm_ctl -Z gtm start -D /var/pgxc/data_gtm Starting standby GTM : /gtm_ctl -Z gtm start -D /var/pgxc/data_gtm Starting coord : pg_ctl start -D /var/pgxc/ubuntu2_coord -Z coordinator -l /tmp/logfile_ubuntu2_coord Tables in database are using partitioning. So we have one primary table and we are creating child tables from it. For example : primary table : chema - data table - units_data child tables : schema : y_2013_node1 - tables, which will be saved in node 1 table : u_<unit_id> - child table from data.units_data schema : y_2013_node2 - tables, which will be saved in node 2 table : u_<unit_id> - child table from data.units_data Thank you, best regards Matej On 11. 11. 2013 7:49, 鈴木 幸市 wrote: Message 1. will be written once every 2000 transactions. The number looks too large. Message 1 is written in the three cases: 1) When GTM starts, 2) Once every 2000 transactions, 3) When GTM standby is promoted to a master. Could you let me know how you start your cluster? We’ve tested XC with DBT-1 and DBT-2 but didn’t have such frequent write at gtm. You are inserting 5000 raws in a second so 2) should happen twice or three times a second. Message 2. is written when GTM standby connects to GTM. Are you using GTM standby? If so, how you are starting it? We’re testing XC in different environment but didn’t have such GTM overload. I’m interested in the situation. Best; --- Koichi Suzuki 2013/11/09 0:06、Matej Jellus <je...@ts...><mailto:je...@ts...> のメール: Hello, We have problem that postgres xc is very slow, gtm is writing to log a lot of data. Is it able to be disabled? The most repeated lines are : 1:140130870839040:2013-11-08 15:42:49.357 CET -LOG: Saving transaction restoration info, backed-up gxid: 373106 LOCATION: GTM_WriteRestorePointXid, gtm_txn.c:2649 ( this is maybe 130 times per second ) 1:140130879186688:2013-11-08 15:45:37.572 CET -LOG: Connection established with GTM standby. - 0x1f91398 LOCATION: gtm_standby_connect_to_standby_int, gtm_standby.c:400 It is overloading the disk, i/o is 70%. Now it is inserting 5 thousand inserts per minute. We need more inserts per minute. Thank you, best regards Matej ------------------------------------------------------------------------------ November Webinars for C, C++, Fortran Developers Accelerate application performance with scalable programming models. Explore techniques for threading, error checking, porting, and tuning. Get the most from the latest Intel processors and coprocessors. See abstracts and register http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk _______________________________________________ Postgres-xc-general mailing list Pos...@li...<mailto:Pos...@li...> https://lists.sourceforge.net/lists/listinfo/postgres-xc-general -- S pozdravom, best regards Matej Jellus <mail_podpis.png> Technický pracovník - GPS monitoring TSS Group a.s. K Zábraniu 1653 911 01 Trenčín tel: +421 32 744 5921 fax: +421 32 744 5922 e-mail:je...@ts...<mailto:je...@ts...> url: www.tssgroup.sk<http://www.tssgroup.sk/> url: www.gpsmonitoring.sk<http://www.gpsmonitoring.sk/> |
From: Matej J. <je...@ts...> - 2013-11-20 08:32:18
|
Hello, is it a problem of configuration? Or is it all bad? Should we wait for some answers? Thank you, best regards Matej On 11. 11. 2013 15:28, Matej Jellus wrote: > Hello, here is the process. > > When we created table with DISTRIBUTE BY REPLICATION TO NODE ( > datanode1 ), it has been inserting maybe 100 000 rows per minute. > When we created table with DISTRIBUTE BY REPLICATION TO NODE ( > datanode1, datanode2 ), it has been inserting maybe 50 000 rows per > minute. > When we created table witch DISTRIBUTE BY MODULO ( cluster_id ) TO > NODE ( datanode1, datanode2 ) and has been writing to only one node, > it was inserting 170 000 rows per minute. > > But when we created it with partitioning, it has been 5000 rows per > minute. > > When we insert row into nonpartitioning table, no row was generated > into the gtm log file. When we insert row into partitioning table, > extra row is inserted into gtm log file : Saving transaction > restoration info, backed-up gxid: 409215 > LOCATION: GTM_WriteRestorePointXid, gtm_txn.c:2649. > > When deleting or updating from nonpartitioning table, everything is > going quickly. But when we do the same thing with partitioning table, > it is 3 - 4 times slower. > > Below is example with partitioning. We are importing data to database, > so first we insert unit_id into table units. This will generate schema > for the year we are inserting, based on the column gps_timestamp. > After that it create table for the unit in the schema, which inherits > from primary talbe - units_data. Then we are inserting only to table > units_data. > > CREATE TABLE data.units ( unit_id uuid NOT NULL, cluster_id INT NOT > NULL ); > > CREATE SEQUENCE ai_value; > > CREATE TABLE data.units_data ( > row_id INTEGER NOT NULL DEFAULT nextval('ai_value'), > unit_id uuid NOT NULL, > cluster_id INT NOT NULL, > gps_timestamp TIMESTAMP WITHOUT TIME ZONE NOT NULL, > gps_lat DOUBLE PRECISION NOT NULL, > gps_lng DOUBLE PRECISION NOT NULL, > others hstore, > PRIMARY KEY ( unit_id,cluster_id ) > ); > > CREATE OR REPLACE FUNCTION generate_all(IN cluster_id INTEGER, IN > unit_id UUID) RETURNS VOID AS $$ > DECLARE > ROK VARCHAR(4); > DATANODE_ID VARCHAR(1); > NAZOV_SCHEMY VARCHAR(13); > NAZOV_TABULKY VARCHAR; > NAZOV_END_TABULKY VARCHAR; > NAZOV_ROK_TABULKY VARCHAR; > BEGIN > -- SELECT 2013 INTO ROK; > ROK := 2013; > SELECT cluster_id INTO DATANODE_ID; > NAZOV_SCHEMY := 'node_'||DATANODE_ID||'_y_'||ROK; > NAZOV_ROK_TABULKY := 'units_data_2013'; > NAZOV_TABULKY := 'u_'||replace(unit_id::text,'-',''); > NAZOV_END_TABULKY := NAZOV_TABULKY||'_m'; > -- Ide sa vytvarat schema a tabulky > IF NOT EXISTS(SELECT * FROM information_schema.schemata WHERE > schema_name=NAZOV_SCHEMY) THEN > EXECUTE 'CREATE SCHEMA '||NAZOV_SCHEMY||';'; > END IF; > IF NOT EXISTS(SELECT * FROM information_schema.tables where > table_name=NAZOV_ROK_TABULKY AND table_schema=NAZOV_SCHEMY) THEN > EXECUTE 'CREATE TABLE > '||NAZOV_SCHEMY||'.'||NAZOV_ROK_TABULKY||'( CHECK ( > date_part(''year''::text, gps_timestamp)=2013 ) ) INHERITS ( > data.units_data );'; > END IF; > EXECUTE 'CREATE OR REPLACE RULE > "year2013_node'||DATANODE_ID||'_choice" AS ON INSERT TO > data.units_data WHERE date_part(''year''::text, > NEW.gps_timestamp)=2013 AND NEW.cluster_id='||DATANODE_ID||' DO > INSTEAD INSERT INTO '||NAZOV_SCHEMY||'.units_data_2013 VALUES(NEW.*);'; > > EXECUTE 'CREATE TABLE '||NAZOV_SCHEMY||'.'||NAZOV_TABULKY||'( > CHECK ( unit_id='''||unit_id||'''::uuid ) ) INHERITS > ('||NAZOV_SCHEMY||'.'||NAZOV_ROK_TABULKY||' );'; > > EXECUTE 'CREATE RULE "'||NAZOV_TABULKY||'_choice" AS ON INSERT > TO '||NAZOV_SCHEMY||'.units_data_2013 WHERE unit_id='''||unit_id||''' > DO INSTEAD INSERT INTO '||NAZOV_SCHEMY||'.'||NAZOV_TABULKY||' > VALUES(NEW.*);'; > RETURN; > END > $$ LANGUAGE plpgsql; > > CREATE RULE "generate_all_rule" AS ON INSERT TO data.units DO ALSO > SELECT generate_all(NEW.cluster_id, NEW.unit_id); > > Thank you, best regards > Matej > > > On 11. 11. 2013 10:11, 鈴木 幸市 wrote: >> This does not show anything special. As I wrote, the messages in >> question don’t appear so often. Could you test how many of these >> messages are written using another case, for example, without using >> partitioning. I think partitioning table has nothing to do with the >> issue but I’d like to know if the case happens in other DMLs and DDLs. >> >> Thank you. >> --- >> Koichi Suzuki >> >> 2013/11/11 17:49、Matej Jellus <je...@ts...> のメール: >> >>> Our situation : >>> two machines >>> first - primary GTM, coordinator, datanode >>> second - standby GTM, coordinator, datanode >>> >>> GTM configuration below. We are inserting 5 thousand rows per >>> minute, which is too low for us. We need to insert 100 thousand rows >>> per minute. >>> Starting primary GTM : /gtm_ctl -Z gtm start -D /var/pgxc/data_gtm >>> Starting standby GTM : /gtm_ctl -Z gtm start -D /var/pgxc/data_gtm >>> Starting coord : pg_ctl start -D /var/pgxc/ubuntu2_coord -Z >>> coordinator -l /tmp/logfile_ubuntu2_coord >>> >>> Tables in database are using partitioning. So we have one primary >>> table and we are creating child tables from it. For example : >>> primary table : >>> chema - data >>> table - units_data >>> >>> child tables : >>> schema : y_2013_node1 - tables, which will be saved in node 1 >>> table : u_<unit_id> - child table from data.units_data >>> schema : y_2013_node2 - tables, which will be saved in node 2 >>> table : u_<unit_id> - child table from data.units_data >>> >>> Thank you, best regards >>> Matej >>> >>> >>> On 11. 11. 2013 7:49, 鈴木 幸市 wrote: >>>> Message 1. will be written once every 2000 transactions. The >>>> number looks too large. Message 1 is written in the three cases: >>>> >>>> 1) When GTM starts, >>>> 2) Once every 2000 transactions, >>>> 3) When GTM standby is promoted to a master. >>>> >>>> Could you let me know how you start your cluster? We’ve tested >>>> XC with DBT-1 and DBT-2 but didn’t have such frequent write at >>>> gtm. You are inserting 5000 raws in a second so 2) should happen >>>> twice or three times a second. >>>> >>>> Message 2. is written when GTM standby connects to GTM. Are you >>>> using GTM standby? If so, how you are starting it? >>>> >>>> We’re testing XC in different environment but didn’t have such GTM >>>> overload. I’m interested in the situation. >>>> >>>> Best; >>>> --- >>>> Koichi Suzuki >>>> >>>> 2013/11/09 0:06、Matej Jellus <je...@ts...> のメール: >>>> >>>>> Hello, >>>>> >>>>> We have problem that postgres xc is very slow, gtm is writing to >>>>> log a >>>>> lot of data. Is it able to be disabled? >>>>> The most repeated lines are : >>>>> >>>>> 1:140130870839040:2013-11-08 15:42:49.357 CET -LOG: Saving >>>>> transaction >>>>> restoration info, backed-up gxid: 373106 >>>>> LOCATION: GTM_WriteRestorePointXid, gtm_txn.c:2649 >>>>> ( this is maybe 130 times per second ) >>>>> >>>>> 1:140130879186688:2013-11-08 15:45:37.572 CET -LOG: Connection >>>>> established with GTM standby. - 0x1f91398 >>>>> LOCATION: gtm_standby_connect_to_standby_int, gtm_standby.c:400 >>>>> >>>>> It is overloading the disk, i/o is 70%. >>>>> >>>>> Now it is inserting 5 thousand inserts per minute. We need more >>>>> inserts >>>>> per minute. >>>>> >>>>> Thank you, best regards >>>>> Matej >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> >>>>> November Webinars for C, C++, Fortran Developers >>>>> Accelerate application performance with scalable programming >>>>> models. Explore >>>>> techniques for threading, error checking, porting, and tuning. Get >>>>> the most >>>>> from the latest Intel processors and coprocessors. See abstracts >>>>> and register >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >>>>> >>>>> _______________________________________________ >>>>> Postgres-xc-general mailing list >>>>> Pos...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/postgres-xc-general >>>>> >>> > -- S pozdravom, best regards *Matej Jellus* TSS Group a.s. *Technický pracovník - GPS monitoring* TSS Group a.s. K Zábraniu 1653 911 01 Trenčín tel: +421 32 744 5921 fax: +421 32 744 5922 e-mail:je...@ts... <mailto:je...@ts...> url: www.tssgroup.sk <http://www.tssgroup.sk> url: www.gpsmonitoring.sk <http://www.gpsmonitoring.sk> |