Tüm Ürünler
Search
Belge Merkezi

DataWorks:Python düğümü

Son Güncelleme:Oct 05, 2026

Python düğümleri Python 3 sözdizimini destekler (Python 2 desteklenmez) ve DataWorks üzerinde Python kodunu periyodik olarak çalıştırmanıza olanak tanır.

Önkoşullar

  • Kullanmak istediğiniz RAM kullanıcısı çalışma alanınıza eklenmiştir.

    Görevleri geliştirmek için bir RAM kullanıcısı kullanmak istiyorsanız bu kullanıcıyı çalışma alanınıza üye olarak eklemeli ve Develop veya Workspace Administrator rolünü atamalısınız. Workspace Administrator rolü gerekli olandan daha fazla izin içerir. Bu rolü atarken dikkatli olun. Üye ekleme ve rol atama hakkında daha fazla bilgi için bkz. Çalışma alanına üye ekleme.

  • Sunucusuz kaynak grubu çalışma alanınızla ilişkilendirilmiştir. Daha fazla bilgi için Sunucusuz kaynak gruplarını kullanma dizinindeki konulara bakın.

  • Geliştirmeye başlamadan önce bir Python düğümü oluşturun. Daha fazla bilgi için bkz. Zamanlama iş akışı için düğüm oluşturma.

Notlar

  • Sunucusuz kaynak grubu kullanarak bir görev çalıştırdığınızda tek bir görev en fazla 64 CU tüketebilir. Ancak görev başlatmayı etkileyebilecek kaynak yetersizliklerini önlemek amacıyla 16 CU değerini aşmamanız önerilir.

  • Python düğümü yalnızca temel bir Python çalışma zamanı ortamı sağlar. Python kodunuz üçüncü taraf paketlere ihtiyaç duyuyorsa özel görüntü oluşturun, bağımlılıkları bu görüntüye yükleyin ve ardından Python düğümünü bu görüntüyü kullanarak çalıştırın.

Adım 1: Python düğümünü geliştirin

  1. Python düğümünü geliştirin.

    • Python kodunu düzenleyin.

      Aşağıdaki örnek bir kabarcık sıralama algoritması uygular.

      def bubble_sort(arr):
          n = len(arr)
          # Outer loop controls each traversal
          for i in range(n):
              # Inner loop compares and swaps adjacent elements
              for j in range(0, n-i-1):
                  # If the current element is greater than the next, swap them
                  if arr[j] > arr[j+1]:
                      arr[j], arr[j+1] = arr[j+1], arr[j]
          return arr
      
      # Test code
      if __name__ == "__main__":
          example_list = [64, 34, 25, 12, 22, 11, 90]
          sorted_list = bubble_sort(example_list)
          print("Sorted list:", sorted_list)
  2. Kodu geliştirdikten sonra sağ paneldeki Run Configuration seçeneğine tıklayın. Test çalıştırması için kaynak grubu gibi ayarları yapılandırın ve kodunuzu test etmek için imageRun düğmesine tıklayın.

    Not

    Python düğümleri yalnızca sunucusuz kaynak grubu kullanılarak hata ayıklanabilir ve zamanlanabilir. Mevcut çalışma alanında bir sunucusuz kaynak grubunun ilişkilendirildiğinden emin olun. Daha fazla bilgi için bkz. Sunucusuz kaynak gruplarını kullanma.

  3. Python düğümü betiğini geliştirip test ettikten sonra düğümü periyodik olarak çalıştırmak için zamanlama özelliklerini yapılandırın .

  4. (İsteğe bağlı) Zamanlama parametrelerini yapılandırın.

    Python düğümü zamanlama parametrelerini komut satırı bağımsız değişkenleri olarak alır. Zamanlama parametresi yapılandırma bölümüne parametre değerlerini boşluklarla ayrılmış şekilde sırayla girin. Kodunuzda her bir değere dizinle erişmek için sys.argv[1], sys.argv[2] vb. ifadelerini kullanın.

    Not
    • PyODPS düğümünün aksine Python düğümü $var1 gibi parametrelerin doğrudan adına göre referans verilmesini desteklemez. Parametreleri açıkça sys.argv kullanarak okumanız gerekir.

    • Zamanlama parametreleri yalnızca düğüm gönderilip dağıtıldıktan ve planlanmış bir örnek olarak (periyodik zamanlama veya geçmiş verileri doldurma gibi) çalıştırıldıktan sonra komut satırı bağımsız değişkenleri olarak iletilir. Bunları sys.argv kullanarak okuyabilirsiniz. Düğümü Data Studio'da doğrudan çalıştırdığınızda (hata ayıklama çalıştırması) zamanlama parametreleri enjekte edilmez. Bu durumda sys.argv yalnızca betik yolunu içerir ve parametre değerlerini alamazsınız.

    • Parametre tanımlama örneği

      $[yyyymmdd] abc
    • Parametre kullanma örneği

      import sys
      
      # Print all received arguments
      print("All received arguments:", sys.argv)
      
      # Get the first and second arguments
      param1 = sys.argv[1]
      param2 = sys.argv[2]
      print("Parameter 1:", param1)
      print("Parameter 2:", param2)

    Zamanlama parametresi yapılandırması hakkında daha fazla bilgi için bkz. Zamanlama parametrelerini yapılandırma.

  5. Zamanlama ayarlarını yapılandırdıktan sonra sonraki adıma geçmeden önce düğümü kaydedin.

Adım 2: Düğümü dağıtın ve yönetin

  1. Zamanlama ayarlarını yapılandırdıktan sonra Python düğümünü üretim ortamına gönderebilir ve dağıtabilirsiniz .

  2. Dağıtımdan sonra görev yapılandırdığınız zamanlama ayarlarına göre periyodik olarak çalışır. Dağıtılan zamanlanmış görevleri görüntülemek ve bunlarda işlem yapmak için şuraya gidin: Operation and Maintenance Center > Node O&M > Auto Triggered Task O&M > Auto Triggered Task. Daha fazla bilgi için bkz. Zamanlanmış görevleri yönetme.

Kişisel geliştirme ortamında görev geliştirme

Python düğümlerini kişisel geliştirme ortamında da geliştirebilirsiniz. Ayrıntılar için bkz. Kişisel geliştirme ortamını kullanma.

İlişkili rol kullanarak düğüm çalıştırma

Düğümü çalıştırmak için RAM rolü ilişkilendirebilirsiniz. Bu sayede düğüm görevlerini belirli bir RAM rolüyle çalıştırarak ince taneli izin kontrolü ve güvenlik yönetimi sağlayabilirsiniz.