Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
³õʶInfluxDB
 
×÷Õߣº ·¶ÐÀÐÀ
  2475  次浏览      36
2020-2-21
 
±à¼­ÍƼö:
±¾ÎÄÖ÷ÒªÕë¶ÔInfluxDBµÄ»ù±¾¸ÅÄî¡¢ÄÚºËʵÏֵȽøÐÐÉîÈëµÄ·ÖÎöµÈµÈ£¬Ï£Íû¶ÔÄúÓÐËù°ïÖú¡£
±¾ÎÄÀ´×Ô Ê±ÐòÊý¾Ý¿â£¬ÓÉ»ðÁú¹ûÈí¼þAlice±à¼­¡¢ÍƼö¡£

InfluxDB Êý¾ÝÄ£ÐÍ

InfluxDBµÄÊý¾ÝÄ£ÐÍºÍÆäËûʱÐòÊý¾Ý¿âÓÐЩÐí²»Í¬£¬ÏÂͼÊÇInfluxDBÖеÄÒ»ÕÅʾÒâ±í£º

1. Measurement£º´ÓÔ­ÀíÉϽ²¸üÏñSQLÖбíµÄ¸ÅÄî¡£ÕâºÍÆäËûºÜ¶àʱÐòÊý¾Ý¿âÓÐЩ²»Í¬£¬ÆäËûʱÐòÊý¾Ý¿âÖÐMeasurement¿ÉÄÜÓëMetricµÈͬ£¬ÀàËÆÓÚÏÂÎĽ²µ½µÄField£¬ÕâµãÐèҪעÒâ¡£

2. Tags£ºÎ¬¶ÈÁÐ

£¨1£©ÉÏͼÖÐlocationºÍscientist·Ö±ðÊDZíÖеÄÁ½¸öTag Key£¬ÆäÖÐlocation¶ÔÓ¦µÄά¶ÈÖµTag ValuesΪ£û1, 2£ý£¬scientist¶ÔÓ¦µÄά¶ÈÖµTag ValuesΪ{langstroth, perpetual}£¬Á½ÕßµÄ×éºÏTagSetÓÐËÄÖÖ£º

location = 1 , scientist = langstroth
location = 1 , scientist = perpetual
location = 2 , scientist = langstroth
location = 2 , scientist = perpetual

£¨2£©ÔÚInfluxDBÖУ¬±íÖÐTags×éºÏ»á±»×÷Ϊ¼Ç¼µÄÖ÷¼ü£¬Òò´ËÖ÷¼ü²¢²»Î¨Ò»£¬±ÈÈçÉϱíÖеÚÒ»Ðк͵ÚÈýÐмǼµÄÖ÷¼ü¶¼Îª¡¯location=1,scientist=langstroth¡¯¡£ËùÓÐʱÐò²éѯ×îÖÕ¶¼»á»ùÓÚÖ÷¼ü²éѯ֮ºóÔÙ¾­¹ýʱ¼ä´Á¹ýÂËÍê³É¡£

3. Fields£ºÊýÖµÁС£ÊýÖµÁдæ·ÅÓû§µÄʱÐòÊý¾Ý¡£

4. Point£ºÀàËÆSQLÖÐÒ»ÐмǼ£¬¶ø²¢²»ÊÇÒ»¸öµã¡£

InfluxDB ºËÐĸÅÄî ¨C Series

ÎÄÕ¡¶Ê±ÐòÊý¾Ý¿âÌåϵ¼¼Êõ ¨C ʱÐòÊý¾Ý´æ´¢Ä£ÐÍÉè¼Æ¡·ÖÐÌᵽʱ¼äÏߵĸÅÄʱÐòÊý¾ÝµÄʱ¼äÏß¾ÍÊÇÒ»¸öÊý¾ÝÔ´²É¼¯µÄÒ»¸öÖ¸±êËæ×Åʱ¼äµÄÁ÷ÊŶøÔ´Ô´²»¶ÏµØÍ³öÊý¾Ý£¬ÕâÑùÐγɵÄÒ»ÌõÊý¾ÝÏß³ÆÖ®ÎªÊ±¼äÏß¡£ÈçÏÂͼËùʾ£º

ÉÏͼÖÐÓÐÁ½¸öÊý¾ÝÔ´£¬Ã¿¸öÊý¾ÝÔ´»á²É¼¯Á½ÖÖÖ¸±ê£ºbutterflierºÍhoneybees¡£InfluxDBÖÐʹÓÃSeries±íʾÊý¾ÝÔ´£¬SeriesÓÉMeasurementºÍTags×éºÏ¶ø³É£¬Tags×éºÏÓÃÀ´Î¨Ò»±êʶMeasurement¡£SeriesÊÇInfluxDBÖÐ×îÖØÒªµÄ¸ÅÄÔÚ½ÓÏÂÀ´µÄÄں˷ÖÎöÖлᾭ³£Óõ½¡£

InfluxDB ϵͳ¼Ü¹¹

InfluxDB¶ÔÊý¾ÝµÄ×éÖ¯ºÍÆäËûÊý¾Ý¿âÏà±ÈÓкܴóµÄ²»Í¬£¬ÎªÁ˸ü¼ÓÇåÎúµÄ˵Ã÷£¬±ÊÕß°´ÕÕ×Ô¼ºµÄÀí½â»­ÁËÒ»ÕÅInfluxDBÂß¼­¼Ü¹¹Í¼£º

DataBase

InfluxDBÖÐÓÐDatabaseµÄ¸ÅÄÓû§¿ÉÒÔͨ¹ýcreate database xxxÀ´´´½¨Ò»¸öÊý¾Ý¿â¡£

Retention Policy£¨RP£©

Êý¾Ý±£Áô²ßÂÔ¡£ºÜ³¤Ò»¶Îʱ¼ä±ÊÕß¶ÔRPµÄÀí½â¶¼²»×ã¹»³ä·Ö£¬ÒÔΪRPÖ»¹æ¶¨ÁËÊý¾ÝµÄ¹ýÆÚʱ¼ä¡£Æäʵ²»È»£¬RPÔÚInfluxDBÖÐÊÇÒ»¸ö·Ç³£ÖØÒªµÄ¸ÅÄºËÐÄ×÷ÓÃÓÐ3¸ö£ºÖ¸¶¨Êý¾ÝµÄ¹ýÆÚʱ¼ä£¬Ö¸¶¨Êý¾Ý¸±±¾ÊýÁ¿ÒÔ¼°Ö¸¶¨ShardGroup Duration¡£RP´´½¨Óï¾äÈçÏ£º

CREATE RETENTION POLICY ON <retention_policy_name> ON <database_name> DURATION <duration> REPLICATION <n> [SHARD DURATION <duration> ] [DEFAULT]

ÆäÖÐretention_policy_name±íʾRPµÄÃû³Æ£¬database_name±íʾÊý¾Ý¿âÃû³Æ£¬duration±íʾTTL£¬n±íʾÊý¾Ý¸±±¾Êý¡£SHARD DURATIONÏÂÎÄÔÙ½²¡£¾Ù¸ö¼òµ¥µÄÀõ×Ó£º

CREATE RETENTION POLICY "one_day_only" ON "water_database" DURATION 1d REPLICATION 1 SHARD DURATION 1h DEFAULT

InfluxDBÖÐRetention PolicyÓÐÕâô¼¸¸öÐÔÖʺÍÓ÷¨£º

1. RPÊÇÊý¾Ý¿â¼¶±ð¶ø²»ÊÇ±í¼¶±ðµÄÊôÐÔ¡£ÕâºÍºÜ¶àÊý¾Ý¿â¶¼²»Í¬¡£

2. ÿ¸öÊý¾Ý¿â¿ÉÒÔÓжà¸öÊý¾Ý±£Áô²ßÂÔ£¬µ«Ö»ÄÜÓÐÒ»¸öĬÈϲßÂÔ¡£

3. ²»Í¬±í¿ÉÒÔ¸ù¾Ý±£Áô²ßÂԹ滮ÔÚдÈëÊý¾ÝµÄʱºòÖ¸¶¨RP½øÐÐдÈ룬ÏÂÃæÓï¾ä¾ÍÖ¸¶¨six_mouth_rollupµÄrp½øÐÐдÈ룺

curl -X POST 'http://localhost:8086/write?db=mydb&rp=six_month_rollup' --data-binary 'disk_free,hostname=server01 value=442221834240i 1435362189575692182'

Èç¹ûûÓÐÖ¸¶¨ÈκÎRP£¬ÔòʹÓÃĬÈϵÄRP¡£

Shard Group

Shard GroupÊÇInfluxDBÖÐÒ»¸öÖØÒªµÄÂß¼­¸ÅÄ´Ó×ÖÃæÒâ˼À´¿´Shard Group»á°üº¬¶à¸öShard£¬Ã¿¸öShard GroupÖ»´æ´¢Ö¸¶¨Ê±¼ä¶ÎµÄÊý¾Ý£¬²»Í¬Shard Group¶ÔÓ¦µÄʱ¼ä¶Î²»»áÖØºÏ¡£±ÈÈç2017Äê9Ô·ݵÄÊý¾ÝÂäÔÚShard Group0ÉÏ£¬2017Äê10Ô·ݵÄÊý¾ÝÂäÔÚShard Group1ÉÏ¡£

ÿ¸öShard Group¶ÔÓ¦¶à³¤Ê±¼äÊÇͨ¹ýRetention PolicyÖÐ×ֶΡ±SHARD DURATION¡±Ö¸¶¨µÄ£¬Èç¹ûûÓÐÖ¸¶¨£¬Ò²¿ÉÒÔͨ¹ýRetention Duration£¨Êý¾Ý¹ýÆÚʱ¼ä£©¼ÆËã³öÀ´£¬Á½ÕߵĶÔÓ¦¹ØÏµÎª£º

ÎÊÌâÀ´ÁË£¬ÎªÊ²Ã´ÐèÒª½«Êý¾Ý°´ÕÕʱ¼ä·Ö³ÉÒ»¸öÒ»¸öShard Group£¿¸öÈËÈÏΪÓÐÁ½¸öÔ­Òò£º

1. ½«Êý¾Ý°´ÕÕʱ¼ä·Ö¸î³ÉСµÄÁ£¶È»áʹµÃÊý¾Ý¹ýÆÚʵÏַdz£¼òµ¥£¬InfluxDBÖÐÊý¾Ý¹ýÆÚɾ³ýµÄÖ´ÐÐÁ£¶È¾ÍÊÇShard Group£¬ÏµÍ³»á¶Ôÿһ¸öShard GroupÅжÏÊÇ·ñ¹ýÆÚ£¬¶ø²»ÊÇÒ»ÌõÒ»Ìõ¼Ç¼Åжϡ£

2. ʵÏÖÁ˽«Êý¾Ý°´ÕÕʱ¼ä·ÖÇøµÄÌØÐÔ¡£½«Ê±ÐòÊý¾Ý°´ÕÕʱ¼ä·ÖÇøÊÇʱÐòÊý¾Ý¿âÒ»¸ö·Ç³£ÖØÒªµÄÌØÐÔ£¬»ù±¾ÉÏËùÓÐʱÐòÊý¾Ý²éѯ²Ù×÷¶¼»á´øÓÐʱ¼äµÄ¹ýÂËÌõ¼þ£¬±ÈÈç²éѯ×î½üһСʱ»ò×î½üÒ»Ì죬Êý¾Ý·ÖÇø¿ÉÒÔÓÐЧ¸ù¾Ýʱ¼äά¶ÈÑ¡Ôñ²¿·ÖÄ¿±ê·ÖÇø£¬ÌÔÌ­²¿·Ö·ÖÇø¡£

Shard

Shard GroupʵÏÖÁËÊý¾Ý·ÖÇø£¬µ«ÊÇShard GroupÖ»ÊÇÒ»¸öÂß¼­¸ÅÄÔÚËüÀïÃæ°üº¬ÁË´óÁ¿Shard£¬Shard²ÅÊÇInfluxDBÖÐÕæÕý´æ´¢Êý¾ÝÒÔ¼°Ìṩ¶Áд·þÎñµÄ¸ÅÄÀàËÆÓÚHBaseÖÐRegion£¬KuduÖÐTabletµÄ¸ÅÄî¡£¹ØÓÚShard£¬ÐèҪŪÇå³þÁ½¸ö·½Ã棺

1. ShardÊÇInfluxDBµÄ´æ´¢ÒýÇæÊµÏÖ£¬¾ßÌå³ÆÖ®ÎªTSM(Time Sort Merge Tree) Engine£¬¸ºÔðÊý¾ÝµÄ±àÂë´æ´¢¡¢¶Áд·þÎñµÈ¡£TSMÀàËÆÓÚLSM£¬Òò´ËShardºÍHBase RegionÒ»Ñù°üº¬Cache¡¢WALÒÔ¼°Data FileµÈ¸÷¸ö×é¼þ£¬Ò²»áÓÐflush¡¢compactionµÈÕâÀàÊý¾Ý²Ù×÷¡£

2. Shard Group¶ÔÊý¾Ý°´Ê±¼ä½øÐÐÁË·ÖÇø£¬ÄÇÂäÔÚÒ»¸öShard GroupÖеÄÊý¾ÝÓÖÊÇÈçºÎÓ³Éäµ½ÄĸöShardÉÏÄØ£¿

InfluxDB²ÉÓÃÁËHash·ÖÇøµÄ·½·¨½«Â䵽ͬһ¸öShard GroupÖеÄÊý¾ÝÔٴνøÐÐÁËÒ»´Î·ÖÇø¡£ÕâÀïÌØ±ðÐèҪעÒâµÄÊÇ£¬InfluxDBÊǸù¾Ýhash(Series)½«Ê±ÐòÊý¾ÝÓ³Éäµ½²»Í¬µÄShard£¬¶ø²»ÊǸù¾ÝMeasurement½øÐÐhashÓ³É䣬ÕâÑù»áʹµÃÏàͬSeriesµÄÊý¾Ý¿Ï¶¨»á´æÔÚͬһ¸öShardÖУ¬µ«ÕâÑùµÄÓ³Éä²ßÂÔ»áʹµÃÒ»¸öShardÖаüº¬¶à¸öMeasurementµÄÊý¾Ý£¬²»ÏñHBaseÖÐÒ»¸öRegionµÄÊý¾Ý¿Ï¶¨¶¼ÊôÓÚͬһÕÅ±í¡£

InfluxDB Sharding²ßÂÔ

ÉÏÎÄÒѾ­¶ÔInfluxDBµÄSharding²ßÂÔ½øÐÐÁ˽éÉÜ£¬ÕâÀï¼òµ¥µØ×öÏÂ×ܽᡣÎÒÃÇÖªµÀͨ³£·Ö²¼Ê½Êý¾Ý¿âÒ»°ãÓÐÁ½ÖÖSharding²ßÂÔ£ºRange ShardingºÍHash Sharding£¬Ç°Õß¶ÔÓÚ»ùÓÚÖ÷¼üµÄ·¶Î§É¨Ãè±È½Ï¸ßЧ£¬HBaseÒÔ¼°TiDB¶¼²ÉÓõÄÕâÖÖSharding²ßÂÔ£»ºóÕß¶ÔÓÚÀëÉ¢´ó¹æÄ£Ð´ÈëÒÔ¼°Ëæ¼´¶ÁÈ¡Ïà¶Ô±È½ÏÓѺã¬Í¨³£×î¼òµ¥µÄHash²ßÂÔÊDzÉÓÃȡģ·¨£¬µ«È¡Ä£·¨ÓиöºÜ´óµÄ±×²¡¾ÍÊÇȡģ»ù´¡ÐèÒª¹Ì¶¨£¬Ò»µ©±ä»¯¾ÍÐèÒªÊý¾ÝÖØ·Ö²¼£¬µ±È»¿ÉÒÔ²ÉÓøü¼Ó¸´ÔÓµÄÒ»ÖÂÐÔHash²ßÂÔÀ´»º½âÊý¾ÝÖØ·Ö²¼Ó°Ïì¡£

InfluxDBµÄSharding²ßÂÔÊǵäÐ͵ÄÁ½²ãSharding£¬ÉϲãʹÓÃRange Sharding£¬Ï²ãʹÓÃHash Sharding¡£¶ÔÓÚʱÐòÊý¾Ý¿âÀ´Ëµ£¬»ùÓÚʱ¼äµÄRange ShardingÊÇ×îºÏÀíµÄ¿¼ÂÇ£¬µ«Èç¹û½ö½öʹÓÃTime Range Sharding£¬»á´æÔÚÒ»¸öºÜÑÏÖØµÄÎÊÌ⣬¼´Ð´Èë»á´æÔÚÈȵ㣬»ùÓÚTime Range ShardingµÄʱÐòÊý¾Ý¿âдÈë±ØÈ»»áÂäµ½×îеÄShardÉÏ£¬ÆäËûÀÏShard²»»á½ÓÊÕдÈëÇëÇó¡£¶ÔдÈëÐÔÄÜÒªÇóºÜ¸ßµÄʱÐòÊý¾Ý¿âÀ´Ëµ£¬ÈȵãдÈë¿Ï¶¨²»ÊÇ×îÓŵķ½°¸¡£½â¾öÕâ¸öÎÊÌâ×î×ÔÈ»µÄ˼·¾ÍÊÇÔÙʹÓÃHash½øÐÐÒ»´Î·ÖÇø£¬ÎÒÃÇÖªµÀ»ùÓÚKeyµÄHash·ÖÇø·½°¸¿ÉÒÔͨ¹ýÉ¢Áкܺõؽâ¾öÈȵãдÈëµÄÎÊÌ⣬µ«Í¬Ê±»áÒýÈëÁ½¸öÐÂÎÊÌ⣺

1. µ¼ÖÂKey Range ScanÐÔÄܱȽϲInfluxDBºÜÓÅÑŵĽâ¾öÁËÕâ¸öÎÊÌ⣬ÉÏÎıÊÕßÌᵽʱÐòÊý¾Ý¿â»ù±¾ÉÏËùÓвéѯ¶¼ÊÇ»ùÓÚSeries£¨Êý¾ÝÔ´£©À´Íê³ÉµÄ£¬Òò´ËÖ»ÒªHash·ÖÇøÊǰ´ÕÕSeries½øÐÐHash¾Í¿ÉÒÔ½«ÏàͬSeriesµÄʱÐòÊý¾Ý·ÅÔÚÒ»Æð£¬ÕâÑùRange ScanÐÔÄܾͿÉÒԵõ½±£Ö¤¡£ÊÂʵÉÏInfluxDBÕýÊÇÕâÑùʵÏֵġ£

2. Hash·ÖÇøµÄ¸öÊý±ØÐë¹Ì¶¨£¬Èç¹ûÒª¸Ä±äHash·ÖÇøÊý»áµ¼Ö´óÁ¿Êý¾ÝÖØ·Ö²¼¡£³ý·ÇʹÓÃÒ»ÖÂÐÔHashËã·¨¡£±ÊÕß¿´µ½InfluxDBÔ´ÂëÖÐHash·ÖÇøµÄ¸öÊý¹Ì¶¨ÊÇ1£¬¶Ô´Ë»¹²»ÊǺÜÀí½â£¬Èç¹ûÄÄλ¿´¹Ù¶Ô´Ë±È½ÏÊìϤ¿ÉÒÔÖ¸µ¼Ò»¶þ¡£

×ܽá

±¾ÆªÎÄÕÂÖØµã½éÉÜInfluxDBÖÐһЩ»ù±¾¸ÅÄΪºóÃæ·ÖÎöInfluxDBÄÚºËʵÏֵ춨һ¸ö»ù´¡¡£ÎÄÕÂÖ÷Òª½éÉÜÁËÈý¸öÖØÒªÄ£¿é£º

1. Ê×ÏȽéÉÜÁËInfluxDBÖÐһЩ»ù±¾¸ÅÄ°üÀ¨Measurement¡¢Tags¡¢FieldsÒÔ¼°Point¡£

2. ½Ó׎éÉÜÁËSeriesÕâ¸ö·Ç³£·Ç³£ÖØÒªµÄ¸ÅÄî¡£

3. ×îºóÖØµã½éÉÜÁËInfluxDBÖÐÊý¾ÝµÄ×éÖ¯ÐÎʽ£¬×ܽáÆðÀ´¾ÍÊÇ£ºÏȰ´ÕÕRP»®·Ö£¬²»Í¬¹ýÆÚʱ¼äµÄÊý¾Ý»®·Öµ½²»Í¬µÄRP£¬Í¬Ò»¸öRPϵÄÊý¾ÝÔÙ°´ÕÕʱ¼äRange·ÖÇøÐγÉShardGroup£¬Í¬Ò»¸öShardGroupÖеÄÊý¾ÝÔÙ°´ÕÕSeries½øÐÐHash·ÖÇø£¬½«Êý¾Ý»®·Ö³É¸üСÁ£¶ÈµÄ¹ÜÀíµ¥Ôª¡£ShardÊÇInfluxDBÖÐʵ¼Ê¹¤×÷Õߣ¬ÊÇInfluxDBµÄ´æ´¢ÒýÇæ¡£

 

   
2475 ´Îä¯ÀÀ       36
Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ