Ok saya bukan seorang programmer tetapi pengguna SIG yang produktif. Saya tahu bahwa QGIS ditulis dalam C ++ dan ArcGIS dalam ??? tetapi untuk sebagian besar tugas saya akhir-akhir ini saya selalu mencoba menggunakan QGIS bukan hanya karena gratis tetapi karena pengalaman penggunanya sangat bagus.
Semua GIS Gurus di luar sana dapatkah Anda memberi tahu saya beberapa alasan untuk perbedaan kecepatan antara kedua sistem ini? Jujur itu menyakitkan saya untuk menggunakan ArcGIS 10 karena kecepatannya dan saya punya PC dengan 8 GB RAM.
qgis
arcgis-desktop
arcgis-10.0
performance
ux
GeoH2O
sumber
sumber
ogr2ogr
36 kali lebih cepat dari Arcgis ketika mengkonversi shapefile ( ref ). Saya berharap QGIS akan sedikit lebih lambat dari barebone ogr2ogr pada tugas yang sama, tetapi tidak banyak karena menggunakan ogr (bukti baik cara diterima).Jawaban:
ArcGIS tampaknya sangat kembung. Saya ingat kinerja yang luar biasa ketika bermigrasi dari Arcview 3.2 ke ArcGIS 8.0, dan di banyak tempat masih ada. Pada waktu itu saya pikir itu ada hubungannya dengan ESRI memigrasi kode Arc / Info sebelumnya ke Windows dan harus memotong beberapa sudut dalam kinerja, tetapi saya tidak yakin apakah itu benar. Saya ingat melihat beberapa contoh di situs ini tentang fungsi-fungsi yang secara dramatis masih lebih cepat di Arcview 3.3 daripada ArcGIS 10. Ini tidak ada hubungannya dengan waktu startup, dll. Dan saya tidak setuju dengan jawaban sebelumnya daripada yang berkaitan dengan 'keterampilan pengguna' ' Mengklik dan menunggu tidak ada hubungannya dengan keterampilan.
Saya pikir kenyataannya adalah bahwa ArcGIS tidak ditulis dengan kinerja dalam pikiran dan setiap versi terus berusaha untuk melemparkan lebih banyak fungsi ke platform kode yang sudah kelebihan beban.
sumber
Saya tidak begitu terbiasa dengan QGIS, tapi saya bertanya-tanya bagaimana hal ini dibandingkan dengan ArcGIS dalam hal ekstensibilitas. Sayangnya tampaknya ada setidaknya beberapa pengorbanan antara ekstensibilitas dan kinerja. Cara terbaik yang saya temukan untuk merasakan ekstensibilitas ArcGIS adalah dengan melihat pada kategori komponen COM Esri yang ditemukan dalam registri.
Setiap kategori mewakili tempat di mana pengguna dapat mendaftarkan dll yang berisi kelas yang mengimplementasikan antarmuka Esri. Ada banyak kategori. Kategori-kategori ini juga mengandung makanan anjing - Esri menggunakannya tidak hanya untuk menemukan penyesuaian pihak ketiga, tetapi juga fungsionalitas di luar kotak. Meskipun ini memberikan tingkat penyesuaian yang sangat halus, itu juga berarti bahwa semua butiran halus ini perlu ditemukan dan dimuat pada saat dijalankan. Saya tidak yakin berapa biaya relokasi , tetapi harus signifikan.
C:\Program Files (x86)\ArcGIS\Desktop10.0\Bin\Categories.exe
Ketika Anda membuat dll di Visual Studio ada tempat di mana Anda dapat menentukan alamat dasar untuk memuat dll. Karena ada begitu banyak dll dari berbagai ukuran yang dimuat mengetahui ini sebelumnya untuk kustomisasi ArcObjects akan sangat sulit. Namun, saya bertanya-tanya apakah file config dapat dibuat menginstruksikan di mana dll harus dimuat ke dalam memori. Jika demikian, setelah pengguna menjalankan arcmap dengan dll yang dimuat, ia biasanya akan menggunakan ia dapat menjalankan rutin yang akan menulis alamat dasar dll ke file konfigurasi. Dengan begitu ketika arcmap dimulai, ia bisa menghindari relokasi dengan memasukkan alamat-alamat itu. Kemudian lagi mungkin dengan 64 bit ini tidak masalah.
Pada 10.0 Esri memperkenalkan Add-in. Kategori peralatan tambahan jauh lebih kecil, dan penemuan tidak bergantung pada registri windows. Sebagai gantinya, add-in dll di-zip dan ditempatkan di folder yang dikenal. Saya tidak yakin bagaimana ini membandingkan kinerja-bijaksana dengan dll yang ditemukan melalui windows registry. Saya pikir tujuan utamanya adalah mengizinkan instalasi oleh non-admin.
Saya berasumsi pertanyaannya merujuk pada produk Desktop. Produk ArcGIS Runtime yang baru jauh lebih ringan. Saya pernah mendengarnya digambarkan sebagai pengganti MapObjects. Akan menarik untuk melihat bagaimana itu berkembang. Jika Esri memang memperkenalkan ekstensibilitas untuk WPF Runtime, saya harap mereka tidak menggunakan mekanisme yang sama untuk penemuan yang digunakan oleh Visual Studio ketika mengisi daftar majelis. Itu pertama kali mengklik "Tambahkan Referensi ..." telah menjadi sangat lambat.
sumber
Maafkan saya karena menghidupkan kembali utas, tetapi saya dapat memberikan contoh spesifik tentang bagaimana pengalaman pengguna berbeda untuk ArcMap dan QGIS.
Hari ini saya perlu membangun sebuah grid titik dengan jarak 250 meter melintasi sebuah negara kecil, memotong grid poin ke poligon perbatasan negara, dan mengaitkan nilai beberapa raster ke grid titik.
Di ArcMap, ini membutuhkan waktu sekitar 10 menit, dari mengunduh data ke set data yang sudah jadi. Di QGIS (Wroclaw), Program macet dua kali hanya memotong grid dengan poligon, lalu berlari selama satu jam sebelum menyelesaikan pada upaya ketiga. Ini ada pada kotak dengan 4 dual-core dan 6Gb RAM.
Saya suka QGIS, dan itu mengganggu saya untuk menggunakan ArcMap, tapi saya menemukan banyak kasus penggunaan umum di mana QGIS tidak memenuhi kebutuhan saya.
Sekarang, jika ada orang yang memiliki saran penyesuaian kinerja yang dapat menyelesaikan kesenjangan kinerja ini, saya setuju.
Chris
sumber
Saya tidak berpikir bahwa Arc ditulis dalam .NET. Arcobjects ditulis dalam C ++. Arc mungkin lebih lambat karena menggunakan banyak GUI canggih, alat bantu, add-on dll. QGIS adalah perangkat lunak yang hebat tetapi tidak memiliki beberapa fitur berguna yang mungkin baik untuk pemula. Juga saya tidak berpikir bahwa alat lavel dasar dalam ESRI (Arcobjects) lambat. Biasanya karena keterampilan pengguna, jika pengguna tahu cara menggunakan Arc, itu tidak lambat sama sekali. Karena itu, saya harus menyebutkan juga bahwa setiap alat harus dipertimbangkan berdasarkan kasus per kasus mengenai kinerjanya. Hal lain adalah bahwa, Arc pertama kali berada di panggung GIS. Pertama (relatif ke QGIS) selalu dengan bug dan generasi berikutnya sedikit lebih baik, dalam hal ini lebih cepat, tetapi semua ini hanya pendapat pribadi saya.
sumber
Ctrl+C
ketika ArcObjects melakukan beberapa operasi, Anda akan mendapatkan pesan dari pustaka runtime Fortran.Ini terkait dengan kinerja ArcGIS: ArcMap, ArcCatalog sangat lambat untuk dibuka pada laptop baru dengan sumber daya yang cukup? yang mungkin merupakan bagian dari beberapa masalah kinerja. Utas itu menunjukkan bagaimana konfigurasi perangkat keras, jaringan, dan lisensi dapat memiliki efek substansial pada kinerja ArcGIS. Mungkin, beberapa perbedaan kecepatan yang dilaporkan dapat disebabkan oleh faktor-faktor tersebut daripada perbedaan yang melekat dalam kemampuan.
(Diposting sebagai tautan jawaban, karena komentar cenderung hilang.)
sumber
Saya bekerja dengan data tingkat perusahaan (data point of interest untuk seluruh Turki misalnya) dan kadang-kadang hanya untuk memeriksa dataset, saya memerlukan rendering itu.
Jika Anda ingin meningkatkan kinerja Anda dengan ArcGIS, ada beberapa hal yang dapat saya sarankan;
Selalu gunakan data yang diproyeksikan. Gunakan geodatabases atau ArcSDE dengan postgresql berfungsi sempurna untuk saya.
Menggunakan file geodatabase dan jika mungkin arcsde meningkatkan kecepatan operasi Anda. Pengalaman pribadi saya dengan QGIS dan ArcMap sebenarnya sebaliknya. Karena Dibutuhkan hampir beberapa menit untuk membuat 3 juta poin di peta. Di sisi lain ArcMap membuat mereka dalam hitungan detik.
Hanya pendapat saya saja.
sumber