Sqoop - Giriş

Geleneksel uygulama yönetim sistemi, yani uygulamaların RDBMS kullanarak ilişkisel veritabanı ile etkileşimi, Büyük Veri üreten kaynaklardan biridir. RDBMS tarafından üretilen bu tür Büyük Veriler, İlişkiselDatabase Servers ilişkisel veritabanı yapısında.

Hadoop ekosisteminin MapReduce, Hive, HBase, Cassandra, Pig vb. Büyük Veri depoları ve analizörleri ortaya çıktığında, içlerinde bulunan Büyük Verileri içe ve dışa aktarmak için ilişkisel veritabanı sunucularıyla etkileşime girecek bir araca ihtiyaç duydular. Burada Sqoop, ilişkisel veritabanı sunucusu ile Hadoop'un HDFS'si arasında uygun etkileşim sağlamak için Hadoop ekosisteminde bir yere sahiptir.

Sqoop - "SQL'den Hadoop'a ve Hadoop'tan SQL'e"

Sqoop, verileri Hadoop ve ilişkisel veritabanı sunucuları arasında aktarmak için tasarlanmış bir araçtır. MySQL, Oracle gibi ilişkisel veritabanlarından Hadoop HDFS'ye veri almak ve Hadoop dosya sisteminden ilişkisel veritabanlarına dışa aktarmak için kullanılır. Apache Software Foundation tarafından sağlanır.

Sqoop Nasıl Çalışır?

Aşağıdaki görüntü Sqoop'un iş akışını açıklamaktadır.

Sqoop İçe Aktarma

İçe aktarma aracı, tek tek tabloları RDBMS'den HDFS'ye aktarır. Tablodaki her satır, HDFS'de kayıt olarak kabul edilir. Tüm kayıtlar, metin dosyalarında metin verileri olarak veya Avro ve Sıra dosyalarında ikili veriler olarak saklanır.

Sqoop İhracat

Dışa aktarma aracı, bir dizi dosyayı HDFS'den bir RDBMS'ye geri aktarır. Sqoop'a girdi olarak verilen dosyalar, tabloda satırlar olarak adlandırılan kayıtları içerir. Bunlar okunur ve bir kayıt kümesine ayrıştırılır ve kullanıcı tanımlı sınırlayıcı ile sınırlandırılır.