Data Studio'da kişisel bir geliştirme ortamından görüntü oluşturabilir ve bu görüntüyü veri geliştirmede veya diğer kişisel geliştirme ortamlarında kullanabilirsiniz. Bu konuda, kişisel bir geliştirme ortamından görüntü oluşturma işlemi açıklanmaktadır.
Arka Plan
Kişisel bir geliştirme ortamında geliştirme ve test yaparken farklı üçüncü taraf bağımlılıklarına ihtiyaç duyabilirsiniz. Gerekli bağımlılıkları ortamınıza yükleyip özel bir görüntü oluşturarak bunu diğer kişisel geliştirme ortamları ve çalışma alanlarıyla paylaşabilirsiniz.
Kişisel bir geliştirme ortamından oluşturulan görüntüler Notebook, Python ve Shell görev türlerini destekler. Görüntü oluşturulduktan sonra görev türünü veya diğer yapılandırmaları değiştiremezsiniz.
Ön Koşullar
VPC: VPC oluşturma.
DataWorks: Kişisel geliştirme ortamı örneği oluşturma ve bunu bir VPC'ye bağlama.
-
Alibaba Cloud Container Registry (ACR):
Bir Enterprise Edition örneği, bir ad alanı ve bir görüntü deposu oluşturarak ACR'yi kurun ve VPC erişim kontrolünü yapılandırın.
Cloud DNS PrivateZone hizmetini etkinleştirin. Faturalama bilgileri için bkz. Ürün Faturalandırması.
Kişisel geliştirme ortamı örneğine bağlı VPC, Alibaba Cloud Container Registry (ACR) ile ilişkilendirilen VPC ve görüntü yayınlama için kullanılan test kaynak grubuna bağlı VPC aynı VPC olmalıdır.
Kişisel geliştirme ortamınızın üçüncü taraf bağımlılıklarını internetten alması gerekiyorsa VPC için internet erişimini yapılandırmanız gerekir. Daha fazla bilgi için bkz. İnternet NAT ağ geçidinin SNAT özelliğini kullanarak internete erişme.
Adım 1: Kişisel geliştirme ortamına erişme
DataWorks konsolundaki Çalışma Alanları sayfasına gidin. Üst gezinme çubuğundan istediğiniz bölgeyi seçin. İlgili çalışma alanını bulun ve Actions sütununda seçeneğini belirleyin.
Sayfanın üst kısmında Personal development environment · Select öğesine tıklayın ve mevcut bir kişisel geliştirme ortamı örneği seçin.
Adım 2: Örnekten görüntü oluşturma
-
Örnekten görüntü oluşturmadan önce kişisel geliştirme ortamını zenginleştirin.
ÖnemliKişisel geliştirme ortamını zenginleştirirken açık kaynaklı bağımlılıkları veya üçüncü taraf bağımlılıkları yükleyebilirsiniz.
Kişisel geliştirme ortamını yapılandırdıktan sonra sayfanın üst kısmındaki Personal development environment · Select açılır listesine tıklayın ve örnek listesi panelini açmak için Instance Management seçeneğini belirleyin.
-
Özel bir görüntü oluşturun.
Örnek listesinde hedef örneği bulun ve Actions sütunundaki Operation öğesine tıklayın. Ön Koşullar bölümündeki kaynakları kullanarak ACR Instance, Namespace, Image Repository, Image Version ve Task Type parametrelerini yapılandırın.
Parametre
Açıklama
Image Name
DataWorks görüntüsü için özel bir ad girin.
ACR Instance
Bir ACR örneği seçin. ACR örneği oluşturma hakkında bilgi için bkz. Enterprise Edition örneği oluşturma.
Namespace
ACR örneğinin bir ad alanını seçin. Daha fazla bilgi için bkz. Ad alanı oluşturma.
Image Repository
ACR örneğinin bir görüntü deposunu seçin. Daha fazla bilgi için bkz. Görüntü deposu oluşturma.
Image Version
Özel bir görüntü sürümü girin.
Synchronize to MaxCompute
Varsayılan değer No'dur.
NotBu seçenek yalnızca seçilen ACR Instance Standard Edition veya daha yüksek bir sürüm olduğunda kullanılabilir.
Yes seçerseniz bir DataWorks özel görüntüsü oluşturulur. Görüntü DataWorks'te yayınlandığında MaxCompute görüntüsü olarak da derlenir. Daha fazla bilgi için bkz. Kişisel geliştirme ortamından MaxCompute görüntüsü oluşturma.
No seçerseniz yalnızca bir DataWorks özel görüntüsü oluşturulur. Görüntü MaxCompute görüntüsü olarak derlenmez.
Task Type
Görüntüyü kullanabilecek görev türlerini seçin.
Notebook
Python
Shell
-
Yapılandırmayı tamamladıktan sonra görüntü oluşturmayı başlatmak için Confirm öğesine tıklayın.
ÖnemliGörüntü oluştururken kişisel geliştirme ortamı örneğine bağlı VPC ile Alibaba Cloud Container Registry (ACR) ile ilişkilendirilen VPC nun aynı olduğundan emin olun.
Görüntü boyutuna ve ağ koşullarına bağlı olarak görüntü oluşturma işlemi 1 ila 5 dakika sürebilir.
Oluşturulan bu görüntüleri Görüntü Yönetimi'nde değiştiremezsiniz.
Görüntü oluşturma işleminin tamamlanmasını bekleyin.
Adım 3: Özel görüntüyü yayınlama
Özel görüntü oluşturulduktan sonra DataWorks konsoluna gidin ve sekmesine şuraya gidin. Hedef görüntüyü bulun, ardından Test ve Publish işlemlerini gerçekleştirin. Test ve yayınlama sırasında aşağıdaki hususlara dikkat edin:
Özel görüntüyü test ederken bir Serverless kaynak grubu seçin.
Test ve yayınlama için kullandığınız Serverless kaynak grubuna bağlı VPC, Alibaba Cloud Container Registry (ACR) içinde yapılandırılan VPC ile aynı olmalıdır.
Yalnızca testten geçen görüntüler yayınlanabilir.
Özel görüntünüzün üçüncü taraf paketleri internetten alması gerekiyorsa ve test zaman aşımına uğrar veya başarısız olursa Test Resource Group a bağlı VPC'nin internet erişiminin olup olmadığını kontrol edin. VPC için internet erişimini yapılandırmak amacıyla bkz. İnternet NAT ağ geçidinin SNAT özelliğini kullanarak internete erişme.
Adım 4: Görüntüyü çalışma alanına atama
Görüntünün ait olduğu çalışma alanını değiştirmek için aşağıdaki işlemleri gerçekleştirebilirsiniz.
DataWorks konsolunun sekmesinde Published durumundaki özel görüntüyü bulun.
Hedef görüntünün Operation sütununda seçeneğine tıklayarak özel görüntüyü bir çalışma alanına bağlayın.
Adım 5: Özel görüntüyü kullanma
Görüntüyü bir çalışma alanına atadıktan sonra Notebook, Python veya Shell düğümlerini geliştirmek için kullanabilirsiniz. Aşağıdaki adımlarda Python düğümü örnek olarak kullanılmıştır:
Veri geliştirme sayfasının sol tarafındaki Project Directory bölmesinde
simgesine tıklayın ve seçeneğini belirleyerek bir Python düğümü oluşturun.-
Düğüm geliştirmeyi tamamladıktan sonra sağ taraftaki Run Configuration seçeneğine tıklayın. Resource Group parametresini yapılandırın ve Python kodunuzun gerektirdiği Image değerini seçin.
Ayrıca Compute CU değerini ayarlayın (örneğin,
0.5). Kullanılabilir bir görüntü yoksa New Image seçeneğine tıklayarak yeni bir görüntü oluşturabilirsiniz. Python kodunu hata ayıklamak için
simgesine tıklayın.-
Hata ayıklama çalıştırması başarılı olduktan sonra Scheduling Settings seçeneğine tıklayın. Zamanlama Stratejisi sekmesinde düğümün periyodik zamanlaması için Image parametresini yapılandırın.
NotScheduling Settings içinde yapılandırılan görüntü ile Run Configuration içinde yapılandırılan görüntü aynı olmalıdır.
Notebook düğümleri için görüntü yalnızca Scheduling Settings içinde yapılandırılabilir.
Zamanlama ayarlarını yapılandırdıktan sonra Python düğümünü Save ve Publish edebilirsiniz.
Sonraki adımlar
Kalıcı görüntü: Özel bir görüntüyü kalıcı görüntüye dönüştürerek her çalıştırmada görüntü ortamını yeniden dağıtma ihtiyacını ortadan kaldırabilirsiniz. Aynı ortamın yeniden kullanılması tutarlılığı sağlar ve çalışma süresi, hesaplama ile trafik maliyetlerini azaltır. Daha fazla bilgi için bkz. Kalıcı görüntü oluşturma.
Ek: Kişisel geliştirme ortamını zenginleştirme
DataWorks kişisel geliştirme ortamındaki varsayılan bağımlılıklar tüm geliştirme ihtiyaçlarınızı karşılamayabilir. Ek bağımlılıklar yükleyerek ortamı zenginleştirebilirsiniz.
Açık kaynaklı bağımlılıkları yükleme
Kişisel geliştirme ortamı örneğinize açık kaynaklı bağımlılıklar yükleyebilirsiniz. Aşağıdaki örnekte jieba kitaplığı yüklenmektedir.
Veri geliştirme sayfasının sol alt köşesindeki
simgesine tıklayarak terminali açın.-
Terminalde jieba kitaplığını yüklemek için aşağıdaki komutu çalıştırın.
pip install jieba● /mnt/workspace> pip install jieba Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Collecting jieba Downloading https://mirrors.cloud.aliyuncs.com/pypi/packages/c6/cb/18eeb235f833b726522d7ebed54f2278ce28ba9438e3135ab0278d9792a2/jieba-0.42.1.tar.gz (19.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.2/19.2 MB 101.0 MB/s eta 0:00:00 Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: jieba Building wheel for jieba (pyproject.toml) ... done Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314508 sha256=5d2a212c7aaa36057e04dde6c183c1d23da40d2452831dd8b2d00482d1a963cd Stored in directory: /root/.cache/pip/wheels/70/b3/5f/b9d1821b0e0b90640bf536c9f79f039cafbec7de737a9b8c49 Successfully built jieba Installing collected packages: jieba Successfully installed jieba-0.42.1 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv -
Jieba kitaplığı yüklendikten sonra dizininde bir
.pydosyası oluşturun. Aşağıdaki kodu Python dosyasında düzenleyip kaydedin.import sys import jieba '''Get the system input parameter arg''' for arg in sys.argv: print(f"argv: {arg}") '''Call the jieba class to tokenize the input data and print the output''' seg_list = jieba.cut(sys.argv[1], cut_all=False) print("Default Mode: " + "/ ".join(seg_list)) print('finish')Düzenlemeyi tamamladıktan sonra Python kodunu kaydetmek için
simgesine tıklayın. -
Terminalde Python dosyasını yürütmek için aşağıdaki komutu çalıştırın.
python file_name.py "This is a big data governance platform document"/mnt/workspace> python xxx.py "This is a big data governance platform document" argv: xxx.py argv: This is a big data governance platform document Building prefix dict from the default dictionary ... Loading model from cache /tmp/jieba.cache Loading model cost 0.914 seconds. Prefix dict has been built successfully. Default Mode: This/ is/ a/ big/ data/ governance/ platform/ document finish
Çalıştırmanın başarılı olması jieba kitaplığının doğru yüklendiğini gösterir.
Üçüncü taraf bağımlılıkları yükleme
Git ile klonlama
Bir Python projesini git clone kullanarak klonlamak için VPC'nin genel ağ erişimini yapılandırmanız gerekir. Daha fazla bilgi için bkz. İnternet NAT ağ geçidi yapılandırma.
Veri geliştirme sayfasının sol alt köşesindeki
simgesine tıklayarak terminali açın.-
Terminalde workspace klasörüne gitmek için aşağıdaki komutu çalıştırın:
cd /mnt/workspace -
Python projesini Git'ten workspace klasörüne klonlayın.
# Replace the URL with your own repository URL. git clone https://github.com/example/Example-Python.git -
Klonlanan Python projesini yükleyin.
-
Klonlanan Python projesi dizinine gidin.
cd Example-Python -
Python projesini yükleyin.
pip install ./mnt/workspace/xxx>> pip install . Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Processing /mnt/workspace/xxx Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: requests>=2.24.0 in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (2.32.3) Requirement already satisfied: numpy in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (1.26.4) Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.4.0) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.10) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2.2.3) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2024.8.30)
-
Proje yükleme
-
Yerel Python projesini dizinine yükleyin ve proje klasörüne gitmek için terminali kullanın.
cd /mnt/workspace/"python_project_folder" -
Python projesini yüklemek için aşağıdaki komutu çalıştırın.
pip install ./mnt/workspace/xxx>> pip install . Looking in indexes: https://mirrors.cloud.aliyuncs.com/pypi/simple Processing /mnt/workspace/xxx Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: requests>=2.24.0 in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (2.32.3) Requirement already satisfied: numpy in /usr/local/lib/python3.11/site-packages (from my-python-lib==0.1) (1.26.4) Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.4.0) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (3.10) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2.2.3) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/site-packages (from requests>=2.24.0->my-python-lib==0.1) (2024.8.30)
Program yükleme
Kişisel geliştirme ortamına bir Python programı yüklemeniz gerekiyorsa aşağıdaki işlemleri gerçekleştirin.
-
Yerel Python programının sıkıştırılmış paketini dizinine yükleyin. Ardından paketi açmak ve Python derleme yolunu görüntülemek için terminali kullanın.
cat 'decompressed_python_project_name'/bin/pip -
Python derleme yolunu oluşturun.
# Create the Python compile path that you found. mkdir -p 'python_compile_path_found' -
Açılan klasörü Python'un derleme sırasında kullandığı derleme yoluna taşıyın.
mv 'decompressed_python_project_name' /'python_compile_path_found' -
Varsayılan Python paketlerini kendi Python programınızla değiştirin.
for src in idle3 pydoc3 python3 python3-config pip3; do \ dst="$(echo "$src" | tr -d 3)"; \ [ -s "/usr/local/bin/$src" ]; \ [ ! -e "/usr/local/bin/$dst" ]; \ mv /usr/local/bin/$dst /usr/local/bin/${dst}_bak ln -svT "python_compile_path_found/bin/$src" "/usr/local/bin/$dst"; \ done
Yükleme tamamlandıktan sonra kişisel geliştirme ortamında kodunuzu çalıştırıp hata ayıklayarak üçüncü taraf bağımlılıklarının beklendiği gibi çalıştığını doğrulayın.
> Change Workspace
simgesine tıklayarak terminali açın.