Giriş
Büyük veri alanı oldukça geniştir ve büyük veriyi ve ilgili teknolojileri öğrenmeye başlayan herkes için çok zor bir görevdir. Sayısız büyük veri teknolojisi vardır ve nereden başlayacağınıza karar vermek kafa karıştırıcı olabilir.
Bu yüzden bu makaleyi yazmak istiyorum. Bu makale size büyük veriyi öğrenme yolculuğunda rehberlik edecek bir yol sağlar ve büyük veri sektöründe iş bulmanıza yardımcı olur. Karşılaştığımız en büyük zorluk, ilgi alanlarımıza ve becerilerimize göre doğru rolü belirlemektir.
Bu sorunu çözmek için, her bir büyük veri rolünün ayrıntılı bir açıklamasını yaptım ve mühendislerin ve bilgisayar bilimi mezunlarının farklı iş rollerini değerlendirdim.
Büyük veriyi öğrenirken aklınıza gelen veya karşılaşacağınız tüm soruları cevaplamaya çalıştım. İlgi alanlarınıza göre yolu seçmenize yardımcı olmak için, doğru yolu belirlemenize yardımcı olacak bir dizin ekledim.
içindekiler
6. Büyük veri öğrenme yolu
7. Kaynaklar
1. Nasıl başlanır
İnsanlar büyük veriyi araştırmaya başlamak istediklerinde sorduğum ilk soru şu: Hadoop, dağıtılmış bilgi işlem, Kafka, NoSQL veya Spark öğreniyor muyum?
Her zaman bir cevabım var: gerçekten ne yapmak istediğinize bağlı.
Öyleyse, bu sorunu çözmek için sistematik bir yaklaşım kullanalım. Bu süreci adım adım öğreneceğiz.
2. Büyük veri sektöründe hangi roller elde edilebilir?
Büyük veri endüstrisinde birçok rol vardır. Ancak kabaca iki kategoriye ayrılabilir
Bu alanlar birbirine bağlıdır ancak farklıdır.
Büyük veri mühendisliği, büyük miktarda verinin tasarımı, dağıtımı, edinimi ve bakımı (depolanması) etrafında döner. Büyük veri mühendislerinin, ilgili verilerin çeşitli tüketici odaklı ve dahili uygulamalarda kullanılabilmesi için sistemleri tasarlaması ve dağıtması gerekir.
Büyük veri analizinin temel kavramı, büyük veri mühendisleri tarafından tasarlanan sistemde büyük miktarda veri kullanmaktır. Büyük veri analizi, eğilimleri, kalıpları analiz etmeyi ve çeşitli sınıflandırma, tahmin ve tahmin sistemleri geliştirmeyi içerir.
Kısacası, büyük veri analizi gelişmiş veri hesaplamalarını içerir. Büyük veri projesi, sistemlerin ve ayarların tasarımını ve dağıtımını içerir ve hesaplamalar bu temelde yapılmalıdır.
3. Profiliniz nedir? Hangi pozisyon için uygunsunuz?
Artık sektördeki mevcut rol türlerini bildiğimize göre, hangisinin sizin için doğru olduğunu belirlemeye çalışalım. Bu şekilde, bu sektördeki konumunuzu analiz edebilirsiniz.
Genel olarak eğitim geçmişinize ve sektör tecrübenize göre herkesi aşağıdaki gibi sınıflandırabiliriz
1. Bilgisayar Bilimleri
2. Operasyon
1. Acemi
2. Veri Bilimcisi
3. Bilgisayar mühendisi (verilerle ilgili projeler üzerinde çalışın)
Bu nedenle yukarıdaki kategorileri kullanarak kişisel verilerinizi aşağıdaki gibi tanımlayabilirsiniz:
Örnek 1: "Deneyimsiz bir bilgisayar bilimi mezunuyum, ancak matematik becerilerim oldukça sağlam."
Bilgisayar bilimi veya matematikle ilgileniyorsunuz, ancak daha önce deneyiminiz yoksa, çaylak olarak kabul edileceksiniz.
Örnek 2: "Veritabanı geliştirme alanında bilgisayar bilimi mezunuyum."
Bilgisayar bilimiyle ilgileniyorsunuz ve bilgisayar mühendisi olarak uygunsunuz (verilerle ilgili projeler).
Örnek 3: "Ben bir veri bilimciyim."
Matematiğe ilgi duyuyorsunuz ve veri bilimcisi olmaya uygunsunuz.
Bu yüzden profilinizi tanımlamaya devam edin.
(Burada tanımladığımız profil, büyük veri endüstrisindeki öğrenme yolunuzu bulmak için çok önemlidir).
4. Rolleri büyük veri profilleriyle eşleme
Artık profilinizi tanımladığınıza göre, hedeflemeniz gereken profilin haritasını çıkarmaya devam edelim.
4.1 Büyük veri mühendisliğinin rolü
İyi programlama becerileriniz varsa ve bilgisayarların İnternette nasıl etkileşim kurduğunu anlıyorsanız (temel), ancak matematik ve istatistikle ilgilenmiyorsunuz. Bu durumda, büyük bir veri mühendisliği rolü seçmelisiniz.
4.2 Büyük veri analizinin rolü
Programlamada iyiyseniz ve eğitim geçmişiniz ve ilgi alanlarınız matematik ve istatistikle ilgiliyse, büyük bir veri analizi pozisyonu seçmelisiniz.
5. Nasıl büyük veri mühendisi olunur
Öncelikle, bir büyük veri mühendisinin neleri bilmesi gerektiğini ve sektörde nasıl bir pozisyon alacağını tanımlayalım. İlk ve en önemli adım, öncelikle ihtiyaçlarınızı belirlemektir. Açık bir ihtiyaç olmadan büyük veriyi araştırmaya başlayamazsınız. Aksi takdirde, sadece karanlıkta okşayabilirsiniz.
İhtiyaçlarınızı tanımlamak için, yaygın büyük veri terimlerini anlamalısınız. Büyük verinin gerçekte ne anlama geldiğine bir göz atalım.
5.1 Büyük veri terminolojisi
Büyük veri projelerinin temel olarak iki yönü vardır: veri gereksinimleri ve işleme gereksinimleri.
5.1.1 Veri gereksinimleri terminolojisi
Yapı: Bildiğiniz gibi veriler bir tabloda veya bir dosyada saklanabilir. Veriler önceden tanımlanmış bir veri modelinde depolanıyorsa (yani bir şema varsa), buna yapılandırılmış veri denir. Bir dosyada depolanmışsa ve önceden tanımlanmış bir model yoksa, buna yapılandırılmamış veri denir. (Tip: yapılandırılmış / yapılandırılmamış).
Boyut: Boyutla birlikte, değerlendirdiğimiz veri miktarı. (Tür: S / M / L / XL / XXL / Akış)
Verim alın: Verilerin sistem tarafından kabul edileceği hızı tanımlayın. (Tür: H / M / L)
Kaynak işleme hızı: Verilerin güncellenme ve sisteme dönüştürülme hızını tanımlar. (Tür: H / M / L)
5.1.2 Talep koşullarının işlenmesi
Sorgu zamanı: Sistemin sorguyu yürütmesi için gereken süredir. (Tip: uzun / orta / kısa)
İşlem süresi: verileri işlemek için gereken süre (tür: uzun / orta / kısa)
Kesinlik: veri işlemenin kesinliği (tür: tam / yaklaşık)
5.2 Bilmeniz gereken sistem ve mimari
Senaryo 1: Müşteri verileri, öncü veriler, çağrı merkezi verileri, satış verileri, ürün verileri, web günlüğü vb. Gibi birden çok veri kaynağından bir veri gölü oluşturarak, şirketin satış performansını analiz etmek için bir sistem tasarlayın.
5.3 Çözümler ve teknolojiler tasarlamayı öğrenin
Senaryo 1 için çözüm: satış verileri için bir veri gölü
(Bu benim kişisel çözümüm)
Peki, veri mühendisleri bu sorunu çözmek için nasıl yola çıkıyor?
Unutulmaması gereken bir nokta, bir büyük veri sisteminin yalnızca farklı veri kaynaklarından gelen verileri sorunsuz bir şekilde entegre etmek ve kullanılabilir hale getirmek için tasarlanması değil, aynı zamanda uygulama geliştirmek için veri analizini ve verilerin kullanımını basit ve hızlı hale getiren bir yöntem tasarlaması gerektiğidir. Her zaman müsait.
Nihai hedefi tanımlayın:
Artık nihai hedefimizin ne olduğunu bildiğimize göre, ihtiyaçlarımızı daha resmi terimlerle ifade etmeye çalışalım.
5.3.1 Veriyle ilgili gereksinimler
Yapı: Çoğu veri yapılandırılmıştır ve iyi tanımlanmış bir veri modeline sahiptir. Ancak web günlükleri, müşteri etkileşimi / çağrı merkezi verileri, satış kataloglarındaki görüntü verileri ve ürün reklam verileri gibi veri kaynakları. Görüntülerin ve multimedya reklam verilerinin mevcudiyeti ve gereksinimleri şirketten şirkete değişebilir.
Sonuç: yapılandırılmış veriler ve yapılandırılmamış veriler dahil
Boyut: L veya XL (Hadoop'u seçin)
Verim alın: yüksek
Kalite: Orta (Hadoop ve Kafka)
Tamlık: eksik
5.3.2 İlgili gereksinimleri işleme
Sorgu süresi: orta ila uzun
İşlem süresi: ortadan kısaya
Doğruluk: hassas
Birden fazla veri kaynağı entegre olduğu için, sisteme farklı oranlarda farklı verilerin gireceği unutulmamalıdır. Örneğin, web günlüğü yüksek ayrıntı düzeyine sahip sürekli bir akış olarak sağlanacaktır.
Sistem gereksinimlerimizin yukarıdaki analizine dayanarak, aşağıdaki büyük veri ayarlarını önerebiliriz.
6. Büyük veri öğrenme yolu
Şimdi, büyük veri endüstrisini ve büyük veri uygulayıcılarının farklı rollerini ve ihtiyaçlarını anladınız. Büyük veri mühendisi olmak için hangi yolu izlemeniz gerektiğine bir göz atalım.
Hepimizin bildiği gibi, büyük veri alanı çeşitli teknolojilerle doludur. Bu nedenle, büyük veri iş rolünüzle ilgili ve tutarlı olan teknikleri öğrenmek çok önemlidir. Bu, herhangi bir geleneksel alandan (veri bilimi ve makine öğrenimi gibi) farklıdır, burada bir şeyle başlarsınız ve sonra o alandaki tüm çalışmaları tamamlamak için çok çalışırsınız.
Aşağıda bir ağaç bulacaksınız, kendi yolunuzu bulmak için onu geçmelisiniz. Ağaçtaki bazı teknikler veri bilimcilerinin güçlü yönleri olarak gösterilse de, bir yola başlarsanız, yaprak düğümlerine kadar tüm teknikleri anlamak en iyisidir. Ağaç, lambda mimari paradigmasından türetilmiştir.
Bu ağaç diyagramı ile ilgi alanlarınıza ve hedeflerinize göre yolu seçebilirsiniz. Ardından büyük veriyi öğrenme yolculuğuna başlayabilirsiniz.
Bir uygulamayı dağıtmak isteyen herhangi bir mühendisin bilmesi gereken temel bir kavram, Bash komut dosyalarıdır. Linux ve bash betiklerine çok aşina olmalısınız. Bu, büyük veriyi işlemek için temel gereksinimdir.
Çekirdekte, çoğu büyük veri teknolojisi Java veya Scala'da yazılır. Ancak endişelenmeyin, bu dillerde kodlamak istemiyorsanız, Python veya R'yi seçebilirsiniz çünkü çoğu büyük veri teknolojisi artık yaygın olarak Python ve R'yi desteklemektedir.
Bu nedenle, yukarıda belirtilen dillerden herhangi birinde başlayabilirsiniz. Python veya Java'yı seçmenizi öneririm.
Ardından, bulut bilişime aşina olmanız gerekir. Bunun nedeni, bulutta büyük verilerle ilgilenmediyseniz, arkadaki yolun zor olacağıdır. AWS, softlayer veya başka herhangi bir bulut sağlayıcısında küçük veri kümeleriyle pratik yapmaya çalışın. Çoğunun, öğrencilerin pratik yapabilmesi için ücretsiz bir aşaması vardır. İsterseniz şimdilik bu adımı atlayabilirsiniz, ancak herhangi bir görüşmeye katılmadan önce bulutta çalışmalısınız.
Ardından, dağıtılmış dosya sistemini anlamanız gerekir. En popüler DFS, Hadoop Dağıtılmış Dosya Sistemidir. Bu aşamada, alan adınızla ilgili bazı NoSQL veritabanlarını da araştırabilirsiniz.
Şimdiye kadar bu yol, her büyük veri mühendisinin bilmesi gereken zorunlu bir temeldir.
Veri akışlarını mı yoksa hareketsiz büyük miktarda veriyi mi kullanacağınıza karar vermenin zamanı geldi. Bu, büyük veriyi tanımlamak için kullanılan dört V'den ikisinin seçimidir (hacim, hız, çeşitlilik ve doğruluk).
Gerçek zamanlı veya gerçek zamanlıya yakın bir analiz sistemi geliştirmek için veri akışını kullanmaya karar verdiğinizi varsayalım. O halde Kafka yoluna gitmelisiniz. Aksi takdirde, Mapreduce yolunu seçin. Sonra yarattığınız yolu takip edersiniz. Mapreduce yolunda domuz ve kovan öğrenmeye gerek olmadığını lütfen unutmayın. Sadece bir tanesini öğrenmek yeterli.
Özet: Ağaçta gezinme yöntemi.
Son adım (# 7) sizi meraklandırdı mı? Dürüst olmak gerekirse, hiçbir uygulamada yalnızca akış işleme veya düşük hızlı gecikmeli veri işleme yoktur. Bu nedenle, teknik olarak, tam bir lambda mimarisini uygulama konusunda uzman olmanız gerekir.
Ayrıca, büyük veri teknolojisini öğrenmenin tek yolunun bu olmadığını lütfen unutmayın. Elbette kendi yolunuzu yaratabilirsiniz. Ancak bu, çoğu insana uygulanabilecek bir yoldur.
Büyük veri analizi alanına girmek istiyorsanız aynı yolu takip edebilirsiniz ama her şeyi mükemmelleştirmeye çalışmayın.
Büyük verileri idare edebilen bir veri bilimcisi için, aşağıdaki ağaca birkaç makine öğrenimi ardışık düzeni eklemeniz ve aşağıda verilen ağaç yerine makine öğrenimi ardışık düzenine odaklanmanız gerekir. Ancak ML boru hattını daha sonra tartışabiliriz.
Yukarıdaki ağaçta kullandığınız veri türüne göre seçtiğiniz bir NoSQL veritabanı ekleyin.
Gördüğünüz gibi, aralarından seçim yapabileceğiniz birçok NoSQL veritabanı var. Bu nedenle, her zaman kullanacağınız veri türüne bağlıdır.
Göz önünde bulundurmanız gereken NoSQL veritabanı türü için gecikme, kullanılabilirlik, esneklik, doğruluk ve elbette uğraştığınız veri türü gibi net yanıtlar sağlayın.
SON
Umarım bu makale hoşuna gider. Bu öğrenme yolunun yardımıyla, büyük veri endüstrisine doğru bir yolculuğa çıkabileceksiniz. İş bulmanız için gereken bilgilerin çoğunu ele aldım.