복붙노트

[HADOOP] Flume - MySQL에서 Hadoop으로 데이터 마이그레이션

HADOOP

Flume - MySQL에서 Hadoop으로 데이터 마이그레이션

생각을 공유하십시오.

요구 사항은 MySQL 데이터베이스의 데이터를 분석 목적으로 Hadoop / HBase로 마이그레이션하는 것입니다.

데이터는 실시간 또는 거의 실시간으로 마이그레이션해야합니다. 이것을 지원할 수 있습니다.

더 나은 접근 방법이 될 수 있습니다.

해결법

  1. ==============================

    1.귀하의 질문에 대한 직접적인 대답은 '예'입니다. Flume은 이벤트 / 로그 구조화 된 데이터를위한 분산 데이터 전송 및 집계 시스템으로 설계되었습니다. "올바르게"설정하면 Humeop에서 지속적으로 데이터를 처리 할 수 ​​있습니다. 이것은 Flume이 여러 소스 (이 경우에는 MySql)에서 데이터를 수집하도록 올바르게 설정되어 있고 데이터가 소스에서 사용 가능할 경우 Flume의 싱크가 밀리 초 수준의 HDFS와 동기화된다는 것을 확신합니다. HDFS / HBASE에서 데이터를 사용할 수있게되면 쿼리를 실행할 수 있으며 인프라에 따라 처리 할 수 ​​있습니다.

    귀하의 질문에 대한 직접적인 대답은 '예'입니다. Flume은 이벤트 / 로그 구조화 된 데이터를위한 분산 데이터 전송 및 집계 시스템으로 설계되었습니다. "올바르게"설정하면 Humeop에서 지속적으로 데이터를 처리 할 수 ​​있습니다. 이것은 Flume이 여러 소스 (이 경우에는 MySql)에서 데이터를 수집하도록 올바르게 설정되어 있고 데이터가 소스에서 사용 가능할 경우 Flume의 싱크가 밀리 초 수준의 HDFS와 동기화된다는 것을 확신합니다. HDFS / HBASE에서 데이터를 사용할 수있게되면 쿼리를 실행할 수 있으며 인프라에 따라 처리 할 수 ​​있습니다.

    따라서 Flume 구성은 거의 실시간으로 HDFS로 데이터를 푸시하는 것이 중요하며 나머지는 Map / Reduce 클러스터 성능 및 처리되는 데이터와 관련하여 쿼리가 작성되는 방식에 따라 달라집니다.

    또한 Flume과 HDFS를 사용하여 이해할 수있는 다음 리소스를 발견했습니다. http://assets.en.ore.ly.com/1/event/61/Real-time%20Streaming%20Analysis%20for%20Hadoop%20and%20Flume%20Presentation.pdf

  2. ==============================

    2.내 이해를 위해 Flume은 그런 의미가 아닙니다. Flume은 기본적으로 데이터 원본 (플랫 파일)과 같은 로그를 읽고 구조화 된 방식으로 싱크대로 밀어 넣기위한 것입니다. Sqoop이 유용 할 수도 있습니다. http://archive.cloudera.com/cdh/3/sqoop/SqoopUserGuide.html

    내 이해를 위해 Flume은 그런 의미가 아닙니다. Flume은 기본적으로 데이터 원본 (플랫 파일)과 같은 로그를 읽고 구조화 된 방식으로 싱크대로 밀어 넣기위한 것입니다. Sqoop이 유용 할 수도 있습니다. http://archive.cloudera.com/cdh/3/sqoop/SqoopUserGuide.html

  3. ==============================

    3.실제로, flume은 로그 또는 다른 시계열 데이터를 수집하는 데 더 많이 사용됩니다. DB에서 hadoop으로 데이터를 가져 오기 위해 flume을 사용하는 사람들은 거의 들지 않았습니다.

    실제로, flume은 로그 또는 다른 시계열 데이터를 수집하는 데 더 많이 사용됩니다. DB에서 hadoop으로 데이터를 가져 오기 위해 flume을 사용하는 사람들은 거의 들지 않았습니다.

    Sqoop은 RDBMS에서 HDFS / Hive / HBase로 대량 가져 오기에 적합합니다. 수입이 한 번만 있다면 매우 좋습니다. 종이에 약속 한 바를 이행합니다. 그러나 실시간 증분 업데이 트를 원할 때 문제가 발생합니다. 두 종류의 증분 업데이트 사이에서 Sqoop은 다음을 지원합니다 :

    AFAIK, 완벽한 해결책이 없습니다. 실시간에 대해 더 신경을 쓰거나, 트리거를 추가하거나, 편집 로그를 스캔하기 위해 flume을 사용하고, RT 형식으로 HBase를 계속 업데이트한다면, 나는 더러운 소리를 느낍니다. 또는 Sqoop + Oozie를 사용하여 주기적으로 소스 테이블을 HBase로 가져 오면 RT 또는 거의 RT 응답이 없게됩니다. 지금까지는 주위에는 아무것도 없으므로 flume custom source에 투표 할 것입니다.

  4. ==============================

    4.Hadoop Applier를 MySQL 제품으로 사용할 수 있습니다. http://labs.mysql.com/에서 찾을 수 있습니다.

    Hadoop Applier를 MySQL 제품으로 사용할 수 있습니다. http://labs.mysql.com/에서 찾을 수 있습니다.

    실시간으로 MySQL의 데이터를 HDFS로 전송합니다.

  5. ==============================

    5.flume을 사용하여 HDSF와 MySQL 모두에 데이터를 저장합니다. 후자의 경우 JDBC com.stratio.ingestion.sink.jdbc.JDBCsink를 사용합니다. 그러나 나는 그것의 성능에 매우 만족하지 않는다. MySQL에서 데이터를 마이그레이션해야하므로 Sqoop을 사용하는 것이 좋습니다. 또 다른 옵션은 Flume을 사용하여 MySQL과 HBase / Hadoop 모두에 데이터를 보내므로 MySQL에서 Hadoop /

    flume을 사용하여 HDSF와 MySQL 모두에 데이터를 저장합니다. 후자의 경우 JDBC com.stratio.ingestion.sink.jdbc.JDBCsink를 사용합니다. 그러나 나는 그것의 성능에 매우 만족하지 않는다. MySQL에서 데이터를 마이그레이션해야하므로 Sqoop을 사용하는 것이 좋습니다. 또 다른 옵션은 Flume을 사용하여 MySQL과 HBase / Hadoop 모두에 데이터를 보내므로 MySQL에서 Hadoop /

  6. from https://stackoverflow.com/questions/10548538/flume-to-migrate-data-from-mysql-to-hadoop by cc-by-sa and MIT license