Akankah ratusan atribut menyebabkan masalah kinerja dalam lapisan ArcGIS Server?

8

Ini terkait dengan ArcGIS Server 10.0 SP1, dengan data disajikan dari file geodatabase polygon featureseclass.

1) Untuk alasan kinerja, apakah ide buruk untuk memiliki kelas featureec dengan ratusan atribut?

2) Apakah ini ide yang buruk untuk membuat layanan peta Server ArcGIS (mengandung ratusan atribut) dari fitur ini?

3) Apakah ada implikasi kinerja jika saya membangun featureLayer di API JS, dan hanya menentukan atribut yang saat ini saya butuhkan?

misalnya, layanan peta mungkin berisi 500 atribut, tetapi saya mendefinisikan lapisan fitur saya menggunakan

featureLayer.fields = [x, y, z]

Terima kasih atas saran apa pun, dan beri tahu saya jika Anda membutuhkan detail lebih lanjut.

Stephen Lead
sumber
Apakah maksud Anda ArcGIS Server 10.0 Paket Layanan 1, atau versi 10.1 yang belum dirilis?
Bjorn Svensson
Maaf, maksud saya 10.0 SP1
Stephen Lead

Jawaban:

6

Singkatnya, ini tidak optimal, tetapi mungkin juga tidak terlalu buruk ...

Pada (3) - selama Anda selalu menentukan bidang spesifik yang Anda inginkan, satu-satunya "hit" tambahan harus pada permintaan awal untuk metadata layanan (yang akan sedikit lebih besar karena banyak bidang).

Jika Anda tahu "set" atau "tema" bidang yang dikelompokkan aplikasi Anda akan digunakan (dari 500), Anda mungkin ingin membuat lapisan di layanan peta yang sesuai. Tetapi jika daftar bidang Anda lebih dinamis, maka lanjutkan seperti yang Anda pikirkan.

Namun, untuk kinerja, saya pertama-tama akan memfokuskan waktu Anda untuk mengoptimalkan / menggeneralisasi poligon Anda (karena ukurannya cenderung lebih berdampak pada waktu pengunduhan, waktu menggambar, memuat dll.). :)

Bjorn Svensson
sumber
Bjorn, terima kasih atas informasinya, yang meyakinkan. re: generalisasi, ini terjadi on-the-fly berdasarkan luas peta, dan poligon yang berlaku untuk skala itu akan ditampilkan. Saya akan memposting tautan ketika situs sudah habis.
Stephen Lead
2
FWIW, saya membuat class FeatureClass dengan sekitar 200 atribut numerik. Jika saya mendefinisikan featureLayer menggunakan FIELDS = "*" dan melakukan kueri, hasilnya adalah sekitar 4,7 kb. Jika saya mendefinisikan BIDANG sebagai bidang tunggal, hasilnya adalah sekitar 280b. Ini tampaknya menunjukkan bahwa pengaturan featureLayer.fields melakukan pekerjaan yang baik dengan hanya mengembalikan informasi yang diperlukan.
Stephen Lead