Ã¥¼Ò°³
À¯¿¬Çϰí È®Àå °¡´ÉÇÏ¸ç ½Å·ÚÇÒ ¼ö ÀÖ´Â ½Ç½Ã°£ µ¥ÀÌÅÍ ÆÄÀÌÇÁ¶óÀÎ ±¸Ãà, Çö´ëÀûÀÎ µ¥ÀÌÅÍ ÀÎÇÁ¶ó¸¦ À§ÇÑ Çʼö¿ä¼Ò, Ä«ÇÁÄ« Ä¿³ØÆ®(Kafka Connect)!¾ÆÆÄÄ¡ Ä«ÇÁÄ« ½ºÆ®¸®¹Ö Ç÷§ÆûÀÇ ÇÙ½É µµ±¸, Ä«ÇÁÄ« Ä¿³ØÆ®¸¦ Ȱ¿ëÇØ °·ÂÇÑ µ¥ÀÌÅÍ ÆÄÀÌÇÁ¶óÀÎÀ» ±¸ÃàÇÑ´Ù! µ¥ÀÌÅÍ ¿£Áö´Ï¾î, °³¹ßÀÚ, SRE¸¦ À§ÇÑ ½Ç¿ëÀûÀÎ °¡À̵å·Î, ´Ù¾çÇÑ µ¥ÀÌÅÍ ¼Ò½º¿Í ½ÌÅ© ¿¬°á, ±âÁ¸ µ¥ÀÌÅÍÀÇ ¼Õ½¬¿î Ȱ¿ë, Ŭ·¯½ºÅÍ °£ µ¥ÀÌÅÍ ¹Ì·¯¸µ ±¸Çö, À̺¥Æ® ½ºÆ®¸®¹Ö ÃÖÀûÈ µîÀ» ÅëÇØ Ä«ÇÁÄ«ÀÇ °·ÂÇÑ ±â´ÉÀ» ºü¸£°Ô µµÀÔÇØº¸ÀÚ!
ÀúÀÚ¼Ò°³
¾ÆÆÄÄ¡ Ä«ÇÁÄ« ÇÁ·ÎÁ§Æ® °ü¸® À§¿øÈ¸(PMC)ÀÇ Ä¿¹ÌÅÍÀÌÀÚ ÀÇÀåÀÌ´Ù. 2015³âºÎÅÍ ¾ÆÆÄÄ¡ Ä«ÇÁÄ«¿Í Ä«ÇÁÄ«ÀÇ »ýŰè Àü¹Ý¿¡ ±â¿©ÇØ ¿Ô´Ù. ÇöÀç´Â ·¹µåÇÞÀÇ Ä«ÇÁÄ« ÆÀ¿¡¼ ¼ö¼® ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î·Î ±Ù¹«Çϸç, 10³â ÀÌ»óÀÇ ¼ÒÇÁÆ®¿þ¾î °³¹ß °æ·ÂÀ» º¸À¯Çϰí ÀÖ´Ù. ÀÌÀü¿¡´Â °í°´À» À§ÇØ ¼ö¹é °³ÀÇ Ä«ÇÁÄ« Ŭ·¯½ºÅ͸¦ ¿î¿µÇÏ´Â IBMÀÇ À̺¥Æ® ½ºÆ®¸²Áî ÆÀ¿¡¼ ±Ù¹«Çß´Ù.
¸ñÂ÷
1ºÎ l Ä«ÇÁÄ« Ä¿³ØÆ®¶õ1Àå Ä«ÇÁÄ« Ä¿³ØÆ® ÀÔ¹® Ä«ÇÁÄ« Ä¿³ØÆ® ±â´É__Ç÷¯±×Çü ¾ÆÅ°ÅØÃ³__È®À强°ú ½Å·Ú¼º__¼±¾ðÀû ÆÄÀÌÇÁ¶óÀÎ Á¤ÀÇ__Ä«ÇÁÄ« Ä¿³ØÆ®µµ ¾ÆÆÄÄ¡ Ä«ÇÁÄ«ÀÇ ÀϺλç¿ë »ç·Ê__µ¥ÀÌÅͺ£À̽º º¯°æ»çÇ× Ä¸Ã³__Ä«ÇÁÄ« Ŭ·¯½ºÅÍ ¹Ì·¯¸µ__µ¥ÀÌÅÍ ·¹ÀÌÅ© ±¸Ãà__·Î±× Áý°è__·¹°Å½Ã ½Ã½ºÅÛ Çö´ëÈÄ«ÇÁÄ« Ä¿³ØÆ®ÀÇ ´ë¾ÈÁ¤¸®2Àå ¾ÆÆÄÄ¡ Ä«ÇÁÄ«¶õºÐ»ê À̺¥Æ® ½ºÆ®¸®¹Ö Ç÷§Æû__¿ÀǼҽº__ºÐ»ê ½Ã½ºÅÛ__À̺¥Æ® ½ºÆ®¸®¹Ö__Ç÷§ÆûÄ«ÇÁÄ« ÁÖ¿ä °³³ä__¹ßÇà-±¸µ¶__ºê·ÎÄ¿¿Í ·¹ÄÚµå__ÅäÇȰú ÆÄƼ¼Ç__¸®Çø®ÄÉÀ̼Ç__º¸°ü ÁÖ±â¿Í ÄÄÆÑ¼Ç__Å©·¡ÇÁÆ®¿Í ÁÖŰÆÛÄ«ÇÁÄ«¿Í »óÈ£ÀÛ¿ëÇϱâ__ÇÁ·Îµà¼__ÄÁ½´¸Ó__Ä«ÇÁÄ« ½ºÆ®¸²ÁîÄ«ÇÁÄ« ½ÃÀÛÇϱâ__Ä«ÇÁÄ« ½ÇÇà__·¹ÄÚµå ÁÖ°í¹Þ±â__Ä«ÇÁÄ« ½ºÆ®¸²Áî ¾ÖÇø®ÄÉÀÌ¼Ç ½ÇÇàÁ¤¸®2ºÎ l Ä«ÇÁÄ« Ä¿³ØÆ®·Î µ¥ÀÌÅÍ ÆÄÀÌÇÁ¶óÀÎ ±¸ÃàÇϱâ3Àå Ä«ÇÁÄ« Ä¿³ØÆ® µ¥ÀÌÅÍ ÆÄÀÌÇÁ¶óÀÎÀÇ ±¸¼º¿ä¼ÒÄ«ÇÁÄ« Ä¿³ØÆ® ·±Å¸ÀÓ__Ä«ÇÁÄ« Ä¿³ØÆ® ½ÇÇàÇϱâ__Ä«ÇÁÄ« Ä¿³ØÆ® REST API__Ç÷¯±×ÀÎ ¼³Ä¡Çϱâ__¹èÆ÷ ¸ðµå¼Ò½º Ä¿³ØÅÍ¿Í ½ÌÅ© Ä¿³ØÅÍ__Ä¿³ØÅÍ¿Í Å½ºÅ©__Ä¿³ØÅÍ ±¸¼ºÇϱâ__Ä¿³ØÅÍ ½ÇÇàÇϱâÄÁ¹öÅÍ__µ¥ÀÌÅÍ Çü½Ä°ú ½ºÅ°¸¶__ÄÁ¹öÅÍ ±¸¼ºÇϱâ__ÄÁ¹öÅÍ »ç¿ëÇÏ±âÆ®·£½ºÆ÷¸ÞÀ̼ǰú ÇÁ·¹µðÄÉÀÌÆ®__Æ®·£½ºÆ÷¸ÞÀÌ¼Ç »ç¿ë »ç·Ê__ÇÁ·¹µðÄÉÀÌÆ®__Æ®·£½ºÆ÷¸ÞÀ̼ǰú ÇÁ·¹µðÄÉÀÌÆ® ±¸¼ºÇϱâ__Æ®·£½ºÆ÷¸ÞÀ̼ǰú ÇÁ·¹µðÄÉÀÌÆ® »ç¿ëÇϱâÁ¤¸®4Àå È¿°úÀûÀÎ µ¥ÀÌÅÍ ÆÄÀÌÇÁ¶óÀÎ ¼³°èÇϱâ Ä¿³ØÅÍ ¼±ÅÃÇϱâ__ÆÄÀÌÇÁ¶óÀÎ ¹æÇâ__¶óÀ̼±½Ì°ú Áö¿ø__Ä¿³ØÅÍÀÇ ±â´Éµ¥ÀÌÅÍ ¸ðµ¨ Á¤ÀÇÇϱâ__µ¥ÀÌÅÍ º¯È¯__½Ã½ºÅÛ °£ µ¥ÀÌÅÍ ¸ÅÇÎÇϱⵥÀÌÅÍ Æ÷¸ÅÆÃ__µ¥ÀÌÅÍ Æ÷¸Ë__½ºÅ°¸¶Ä«ÇÁÄ« Ä¿³ØÆ® ³»ºÎ »ìÆìº¸±â__³»ºÎ ÅäÇÈ__±×·ì ¸â¹ö½Ê__¸®¹ë·±½º ÇÁ·ÎÅäÄÝÄ«ÇÁÄ« Ä¿³ØÆ®¿¡¼ Àå¾Ö »óȲ ´Ù·ç±â__¿öÄ¿ Àå¾Ö__Ä¿³ØÅÍ/ŽºÅ© Àå¾Ö__Ä«ÇÁÄ«/¿ÜºÎ ½Ã½ºÅÛ Àå¾Ö__µ¥µå ·¹ÅÍ Å¥Ã³¸® ½Ã¸Çƽ ÀÌÇØÇϱâ__½ÌÅ© Ä¿³ØÅÍ__¼Ò½º Ä¿³ØÅÍÁ¤¸®5Àå Ä¿³ØÅÍ ÀÎ ¾×¼ÇÄÁÇ÷ç¾ðÆ® S3 ½ÌÅ© Ä¿³ØÅÍ__Ä¿³ØÅÍ ±¸¼ºÇϱâ__Á¤È®È÷ ÇÑ ¹ø ½Ã¸Çƽ__Ä¿³ØÅÍ ½ÇÇàÇϱâÄÁÇ÷ç¾ðÆ® JDBC ¼Ò½º Ä¿³ØÅÍ__Ä¿³ØÅÍ ±¸¼ºÇϱâ__Ä¿³ØÅÍ ½ÇÇàÇϱⵥºñÁö¿ò MySQL ¼Ò½º Ä¿³ØÅÍ__Ä¿³ØÅÍ ±¸¼ºÇϱâ__À̺¥Æ® Çü½Ä__Ä¿³ØÅÍ ½ÇÇàÇϱâÁ¤¸®6Àå ¹Ì·¯¸ÞÀÌÄ¿·Î Ŭ·¯½ºÅÍ ¹Ì·¯¸µÇϱâ¹Ì·¯¸µÀ̶õ__¹Ì·¯¸µ »ç¿ë »ç·Ê »ìÆìº¸±â__¹Ì·¯¸µ ½ÇÀü Ȱ¿ë¹Ì·¯¸ÞÀÌÄ¿ ¼Ò°³__°øÅë °³³ä__¹èÆ÷ ¸ðµå¹Ì·¯¸ÞÀÌÄ¿ Ä¿³ØÅÍ__MirrorSourceConnector__MirrorCheckpointConnector__MirrorHeartbeatConnector¹Ì·¯¸ÞÀÌÄ¿ ½ÇÇàÇϱâ__ÀçÇØ º¹±¸ ¿¹Á¦__Áö¿ª °£ º¹Á¦ ¿¹Á¦Á¤¸®3ºÎ l »ó¿ë ȯ°æ¿¡¼ Ä«ÇÁÄ« Ä¿³ØÆ® ½ÇÇàÇϱâ7Àå Ä«ÇÁÄ« Ä¿³ØÆ® Ŭ·¯½ºÅÍ ¹èÆ÷ ¹× ¿î¿µ Ä«ÇÁÄ« Ä¿³ØÆ® ȯ°æ Áغñ__Ä«ÇÁÄ« Ä¿³ØÆ® ȯ°æ ±¸Ãà__Ç÷¯±×ÀÎ ¼³Ä¡__³×Æ®¿öÅ· ¹× ±ÇÇÑ¿öÄ¿ Ç÷¯±×ÀÎ__±¸¼º °ø±ÞÀÚ__REST È®Àå ±â´É__Ä¿³ØÅÍ Å¬¶óÀÌ¾ðÆ® ±¸¼º ¿À¹ö¶óÀ̵å Á¤Ã¥±Ô¸ð »êÁ¤ ¹× ó¸® ´É·Â °èȹÇϱâ__Ä«ÇÁÄ« Ä¿³ØÆ® ¸®¼Ò½º Ȱ¿ë ÀÌÇØÇϱâ__ÀûÀýÇÑ ¿öÄ¿¿Í ŽºÅ© ¼ö ¼±Á¤ÇϱâÄ«ÇÁÄ« Ä¿³ØÆ® Ŭ·¯½ºÅÍ ¿î¿µÇϱâ__¿öÄ¿ Ãß°¡Çϱâ__¿öÄ¿ Á¦°ÅÇϱâ__¿öÄ¿ ¾÷±×·¹ÀÌµå ¹× À¯Áöº¸¼öÇϱâ__Àå¾Ö »óÅÂÀΠŽºÅ©¿Í Ä¿³ØÅÍ Àç½ÃÀÛÇϱâ__Ä¿³ØÅÍ ¿ÀÇÁ¼Â Àç¼³Á¤ÇϱâREST API¸¦ »ç¿ëÇØ Ä«ÇÁÄ« Ä¿³ØÆ® °ü¸®Çϱâ__Ä¿³ØÅÍ »ý¼º ¹× »èÁ¦Çϱâ__Ä¿³ØÅÍ¿Í Å½ºÅ© ±¸¼º__Ä¿³ØÅÍ ¼ö¸íÁÖ±â Á¦¾îÇϱâ__Ä¿³ØÅÍ ¿ÀÇÁ¼Â ³ª¿Çϱâ__À̽´ µð¹ö±ëÁ¤¸®8Àå Ä«ÇÁÄ« Ä¿³ØÆ® ±¸¼ºÇϱ⠷±Å¸ÀÓ ±¸¼ºÇϱâ__»ó¿ë ȯ°æÀ» À§ÇÑ ±¸¼º__ÆÄÀÎ Æ©´× ±¸¼ºÄ¿³ØÅÍ ±¸¼ºÇϱâ__ÅäÇÈ ±¸¼º__Ŭ¶óÀÌ¾ðÆ® ¿À¹ö¶óÀ̵å__Á¤È®È÷ ÇÑ ¹øÀ» À§ÇÑ ±¸¼º__¿À·ù 󸮸¦ À§ÇÑ ±¸¼ºº¸¾ÈÀ» À§ÇÑ Ä«ÇÁÄ« Ä¿³ØÆ® Ŭ·¯½ºÅÍ ±¸¼ºÇϱâ__Ä«ÇÁÄ«¿¡ ´ëÇÑ ¿¬°á¿¡ º¸¾È ¼³Á¤Çϱâ__±ÇÇÑ ±¸¼ºÇϱâ__REST API º¸¾È ±¸¼ºÇϱâÁ¤¸®9Àå Ä«ÇÁÄ« Ä¿³ØÆ® ¸ð´ÏÅ͸µÇÏ±â ·Î±× ¸ð´ÏÅ͸µ__·Î±ë ±¸¼º__½ÃÀÛ ·Î±× ÀÌÇØÇϱâ__·Î±× ºÐ¼®ÇϱâÁöÇ¥ ¸ð´ÏÅ͸µÇϱâ__ÁöÇ¥ ¸®Æ÷ÅÍ__ÁöÇ¥ ºÐ¼®Çϱâ__ÁöÇ¥ Ž»öÁÖ¿ä ÁöÇ¥__Ä«ÇÁÄ« Ä¿³ØÆ® ·±Å¸ÀÓ ÁöÇ¥µé__±× ¹ÛÀÇ ½Ã½ºÅÛ ÁöÇ¥Á¤¸®10Àå Äí¹ö³×Ƽ½º¿¡¼ Ä«ÇÁÄ« Ä¿³ØÆ® °ü¸®Çϱâ Äí¹ö³×Ƽ½º ¼Ò°³__°¡»óÈ ±â¼ú__Äí¹ö³×Ƽ½º ±âº»Äí¹ö³×Ƽ½º¿¡¼ Ä«ÇÁÄ« Ä¿³ØÆ® ½ÇÇàÇϱâ__ÄÁÅ×ÀÌ³Ê À̹ÌÁö__¿öÄ¿ ¹èÆ÷__³×Æ®¿öÅ·°ú ¸ð´ÏÅ͸µ__±¸¼ºÄí¹ö³×Ƽ½º ¿ÀÆÛ·¹ÀÌÅ͸¦ »ç¿ëÇØ Ä«ÇÁÄ« Ä¿³ØÆ® ¹èÆ÷Çϱâ__Äí¹ö³×Ƽ½º ¿ÀÆÛ·¹ÀÌÅÍ ¼Ò°³__Ä«ÇÁÄ« Ä¿³ØÆ®¿ë Äí¹ö³×Ƽ½º ¿ÀÆÛ·¹ÀÌÅͽºÆ®¸²Áö__Äí¹ö³×Ƽ½º ȯ°æ ±¸¼ºÇϱâ__¿ÀÆÛ·¹ÀÌÅÍ ½ÃÀÛÇϱâ__Ä«ÇÁÄ« Ä¿³ØÆ® CRD ¾Ë¾Æº¸±â__Ä«ÇÁÄ« Ä¿³ØÆ® Ŭ·¯½ºÅÍ¿Í Ä¿³ØÅÍ ¹èÆ÷Çϱâ__¹Ì·¯¸ÞÀÌÄ¿ CRDÁ¤¸®4ºÎ l Ä¿½ºÅÒ Ä¿³ØÅÍ¿Í Ç÷¯±×ÀÎ ±¸ÃàÇϱâ11Àå ¼Ò½º Ä¿³ØÅÍ¿Í ½ÌÅ© Ä¿³ØÅÍ ±¸ÃàÇÏ±â°øÅë °³³ä°ú API__Ä¿½ºÅÒ Ä¿³ØÅÍ ±¸ÃàÇϱâ__Connector API__±¸¼º__Task API__Ä«ÇÁÄ« Ä¿³ØÆ® ·¹ÄÚµå__ConnectorContext API¼Ò½º Ä¿³ØÅÍ ±¸ÇöÇϱâ__SourceTask API__¼Ò½º ·¹ÄÚµå__SourceConnectorContext¿Í SourceTaskContext API__Á¤È®È÷ ÇÑ ¹ø ½Ã¸Çƽ Áö¿ø½ÌÅ© Ä¿³ØÅÍ ±¸ÇöÇϱâ__SinkTask API__½ÌÅ© ·¹ÄÚµå__SinkConnectorContext¿Í SinkTaskContext APIÁ¤¸®12Àå Ä¿³ØÅÍ¿Í ¿öÄ¿ Ç÷¯±×ÀÎÀ¸·Î Ä«ÇÁÄ« Ä¿³ØÆ® È®ÀåÇϱâ Ä¿³ØÅÍ Ç÷¯±×ÀÎ ±¸ÇöÇϱâ__Transformation API__Predicate API__Converter API¿Í HeaderConverter API¿öÄ¿ Ç÷¯±×ÀÎ ±¸ÇöÇϱâ__ConfigProvider API__ConnectorClientConfigOverridePolicy API__ConnectRestExtension APIÁ¤¸®