[Maria-discuss] New FRM Format
Hi guys, could we add a new FRM file format? a more human readable, maybe JSON or YAML format, internally we could still using today unireg format check this example using JSON: { 'header':{ 'frm_version' :'JSON 1.0', 'server' : 'mysql/mariadb/drizzle/percona/other...', 'server_version' : '1234.1234.1234', 'engine' :'MyISAM', 'io_size' :0, ??? 'key_length' :0, ??? 'rec_length' :0, ??? 'table_options' :'', ??? (maybe put in engine part?) 'table_default_charset':'latin1', 'partition_default_engine':'MyISAM', }, 'rows':{ 'max_rows' :0, 'min_rows' :0, 'avg_row_length':0, 'type' :'PAGE/FIXED/COMPACT/blablalba', 'table_comments':'', 'intervals' :{ '0':['a','b','c'], '1':['enums','and','sets'] }, }, 'fields':[ { 'name' :'', 'type' :'', 'scale' :'', 'flags' :['zerofill','unsigned','not null'], 'default':0, 'charset':'', 'comment':''}, ... ], 'keys':{ 'primary key':{ 'type' :'unique/index/fulltext', 'fields' :[ 0,1,2,3,4, {'field'=>5,'order'=>'asc','left':5}, ... ], 'algorithm':'hash/btree/rtree' }, 'other key': ... }, 'partitions':{ 'p1' : { 'p1 informations' } }, 'myisam': {'some especific information'}, 'aria': {'some especific information'}, 'innodb': {'some especific information'}, 'ndb': {'some especific information'}, 'view':{ 'SQL':"select xyz from a,b", 'algorithm':'temporary, etc...' ... }, 'other_information that mariadb/mysql don't use but it's nice to document': {'hi i can put some information here!'} }
Roberto Spadim <roberto@spadim.com.br> writes:
Hi guys, could we add a new FRM file format? a more human readable, maybe JSON or YAML format, internally we could still using today unireg format
There's already a protobuf based format in Drizzle that is far more understandable. The trick is to process everything server side as a bunch of the oddities in FRM file are rather baked into the server (e.g. storing the default row image). This would also be a rather large incompatibility with Oracle MySQL which perhaps isn't a wise thing. -- Stewart Smith
Though flush tables for export could produce a version neutral .frm perhaps? --Justin On Jul 9, 2013, at 11:17 PM, Stewart Smith <stewart@flamingspork.com> wrote:
Roberto Spadim <roberto@spadim.com.br> writes:
Hi guys, could we add a new FRM file format? a more human readable, maybe JSON or YAML format, internally we could still using today unireg format
There's already a protobuf based format in Drizzle that is far more understandable. The trick is to process everything server side as a bunch of the oddities in FRM file are rather baked into the server (e.g. storing the default row image).
This would also be a rather large incompatibility with Oracle MySQL which perhaps isn't a wise thing.
-- Stewart Smith _______________________________________________ Mailing list: https://launchpad.net/~maria-discuss Post to : maria-discuss@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-discuss More help : https://help.launchpad.net/ListHelp
participants (3)
-
Justin Swanhart
-
Roberto Spadim
-
Stewart Smith