Hangi seçenek daha iyi ve daha hızlıdır? Boş tabloya dizin oluşturulduktan sonra veya veri ekledikten sonra benzersiz dizin oluşturduktan sonra veri ekleme. Eklemek için yaklaşık 10M satırım var. En az kesinti yapabilmem için hangi seçenek daha iyi olurdu.Boş tabloya indeks oluşturduktan sonra veya Oracle'da veri ekledikten sonra benzersiz indeks oluşturduktan sonra veri ekleme?
cevap
Verilerinizi önce ekleyin, ardından dizininizi oluşturun.
Her UPDATE, INSERT veya DELETE işlemi yaptığınızda, tablodaki herhangi bir dizinin de güncellenmesi gerekir. Dolayısıyla, önce dizini oluşturursanız ve sonra 10M satırları eklerseniz, dizinin de (toplu işlemler yapmadığınız sürece) 10M kez güncellenmesi gerekir.
Kayıtları eklemek daha hızlı ve daha iyidir ve sonra satırlar içe aktarıldıktan sonra dizin oluşturulur. Daha hızlıdır, çünkü satırlar eklendikçe dizin bakımının üst kısmına sahip olmazsınız ve dizinlerinizin parçalanma açısından daha iyidir.
Açıkçası benzersiz bir dizin için, içe aktardığınız verilerin benzersiz olduğundan emin olun, böylece dizini oluşturmaya çalışırken hatalarınız olmaz.
Diğerlerinin de dediği gibi, önce şunu ekleyin ve dizini daha sonra ekleyin. Tablo zaten mevcutsa ve buna benzer bir veri yığını eklemeniz gerekiyorsa, tüm dizinleri ve kısıtlamaları bırakın, verileri ekleyin, ardından önce dizinlerinizi ve ardından sınırlamalarınızı yeniden uygulayın. Geri alım segmenti alanı veya benzeri bir şeyden kaçma olasılığını engellemenize yardımcı olmak için kesinlikle ara taahhütler yapmak isteyeceksiniz. Bu fazla veriyi ekliyorsanız, zamanınızı ve ağırlığınızı korumak için SQL * Loader'ı kullanmanın yararı olabilir.
Umarım bu yardımcı olur.
- 1. Android 2.3 oluşturduktan sonra emülatör boş ekran
- 2. IntentService, onu oluşturduktan sonra kaydetmiyor
- 3. SignalR, IIS'yi yeniden oluşturduktan sonra
- 4. MsBuild kopya dosyasını oluşturduktan sonra
- 5. jenkins hatası oluşturduktan sonra başarılı
- 6. 'NULL kısıtlaması başarısız' Scaffold oluşturduktan sonra
- 7. Neden oluşturduktan sonra bir klasör olmaz?
- 8. bir Matrix'i OpenCV'de oluşturduktan sonra yeniden boyutlandırın
- 9. Jhipster kullanarak oluşturduktan sonra varlık nasıl silinir?
- 10. Corona: Bunu oluşturduktan sonra Görüntüyü ölçeklemek nasıl
- 11. sqlite: moveToFirst standart SQLite imleci oluşturduktan sonra
- 12. WCF hizmetini oluşturduktan ve sonra öldürdüğünüz Boş Konular Sunucu
- 13. Tablo oluştur oluşturduktan sonra kullanıcı ekleme iznini verin
- 14. Tablo satırlarını dinamik olarak oluşturduktan sonra Bootstrap "tablo-çizgili" uygulama
- 15. Neden Magento bir kimlik oluşturduktan sonra bir müşteriyi kurtaramıyor?
- 16. Eşleşmeyen arama satırlarını tabloya ekledikten sonra işleme nasıl devam edebilirim?
- 17. Android Gradle görevi oluşturduktan sonra dosyaları kopyalamak için
- 18. Denetleyici oluşturduktan sonra bir sql dosyası kaydediliyor mu?
- 19. Dizin içinde bu yöntemi oluşturduktan sonra IndexOutOfRangeException C#
- 20. Doc görevini kullanarak scaladoc oluşturduktan sonra bash betiği nasıl çalıştırılır?
- 21. raw_input, py2exe ile exe oluşturduktan sonra EOFError'a neden oluyor
- 22. Arka uç eylem i harekete oluşturduktan sonra, buna tıkladığında
- 23. pandalar veri çerçevesindeki indeks nasıl sıfırlanır?
- 24. Pandalar veri grubu grubundaki indeks veya Boş değerlerin sayısı nasıl sayılır?
- 25. Veri iletimini tamamladıktan sonra bileşene veri iletme
- 26. veri ajax çağrısından sonra veri nasıl eklenirTek
- 27. İndeks taraması geri indeks taraması vs
- 28. ekstre sütunu veri kümesi sonra
- 29. GÜNCELLEME boş sonra boş
- 30. Laravel - middleware'den sonra boş $ istek
"Sıkça sen kaynakların korunması veya şeyleri yapıyoruz yanlış düşünceyle gitmek işlemekle daha hızlı sadece bu sizin için yapar: o aşağı yavaşlatır, evet, bu doğru, aşağı yavaşlatır - Eğer SLOOOWWWWEEERRR çalıştırmak yapar o hiçbir kaynakları korumaz, aslında, daha fazla tüketir (daha fazla yeniden üretirsiniz) o verilerinizin bütünlüğünü ciddi bir şekilde sorgular. – Angelina