Geocoding dan Pemrosesan Skala Besar di ESRI

9

Ok, jadi saya kira pertanyaan / survei informal semacam ini tentang seberapa besar dataset yang Anda gunakan di dunia ESRI Anda ...

Saya membangun dan memelihara dataset di seluruh negara bagian, di mana saya harus memproses ke tingkat rumah masing-masing, tidak tingkat paket tetapi beberapa alamat surat per paket untuk sistem kami. Di banyak tempat saya menggunakan alamat teoritis yang dihitung dari jaringan jalan atau data USPS AMS / AIS. Jadi Daftar Alamat saya kira-kira 13,5 juta alamat dan bertambah setiap bulan atau triwulanan.

Adakah orang di luar sana saat ini yang memelihara sistem alamat / informasi pencarian yang benar yang sebesar ini dalam dataset berkelanjutan?

Saya ingin berkolaborasi atau berbicara lebih banyak tentang bagaimana orang lain menangani setumpuk data yang begitu besar. Saya melihat masalah di mana perangkat lunak ESRI tampaknya meledak ketika saya mencoba melakukan tugas-tugas seperti memotong atau bergabung spasial. ESRI mengatakan mereka tidak melihat masalah seperti ini tetapi saya sudah memiliki masalah ini sejak kembali ke 9.3.1 jadi saya tidak bisa menjadi orang pertama / satu-satunya yang melakukan ini karena saya dapat membuatnya kembali di beberapa mesin.

Platform saya sekarang adalah ESRI ArcGIS 10 pada Desktop, berbicara dengan ArcSDE 9.3.1-sp1 pada backend SQL2008 menggunakan objek spasial GEOMETRI. Jadi saya tidak melakukan sesuatu yang sangat eksotis; tetapi bagi saya masih ada beberapa daerah yang saya mungkin mendorong amplop.

[Lebih lanjut]

Apa yang saya tertarik ketahui adalah apa yang dilakukan orang lain untuk mengoptimalkan proses yang ada untuk menangani dataset ini. Saya akan menambahkan upwords dari satu juta catatan sebulan ke depan, dan sementara Geocoding dll tidak menjadi masalah ketika Anda mulai menjalankan proses lain dan menghubungkan data untuk analisis lebih lanjut Anda mulai berurusan dengan gabungan yang kompleks. Nah, Anda menampilkan data dari Intersects / Overlays / Identities menggunakan Only_FID dan Anda mendapatkan tabel tengah yang tipis untuk bergabung juga; tetapi ketika Anda mulai mencoba untuk membagi dan menaklukkan pembuatan tabel itu, Anda mulai mengalami masalah di mana Anda perlu membagi data sumber Anda ke dalam area kerja tetapi kemudian Anda telah mengulangi IDS yang tidak dapat Anda gabungkan kembali; jadi Anda dibiarkan dengan blok data yang lebih kecil sehingga Anda tidak dapat dengan mudah membuat keseluruhan lagi.

Berpikir tentang opsi yang memecah data ke skala County-by-County, kemudian menggunakan tampilan spasial untuk bergabung kembali bersama dll ... Hanya ingin tahu jika pengguna lain melihat jenis masalah yang sama pada skala besar tetapi pada skala kecil jejak kaki.

D.E.Wright
sumber
3
60 juta alamat di-geocode dalam Oracle Spatial (11g) ArcSDE dan Divisualisasikan di ArcGIS dan Aplikasi Web (Internal). Ini bukan tentang alamat geocode tetapi fuzzy (alamat yang tidak cocok) ini adalah panduan yang bagus scdhec.gov/gis/presentations/ESRI_Conference_08/tws/workshops/…
Mapperz
Saya setuju, geocoding tidak pernah menjadi masalah. Masalah saya menjadi ketika Anda memiliki dataset yang begitu besar sehingga Anda perlu memiliki proses yang berkesinambungan sehingga proses lainnya menjadi sangat sulit. Fungsi / Tugas seperti Intersect, Spatial-Joins dll, di mana Anda harus bergabung dengan data lain dalam lingkungan yang sangat normal untuk pemodelan.
DEWright
Apakah data spasial Anda diindeks? Menurut dokumen, SQL Server menggunakan indeks B-Tree. Cobalah memuat data ke dalam database PostGIS dengan indeks GIST dan membandingkan kinerja. Ini akan memberi tahu Anda jika ini masalah SQL Server.
Sean
Tidak ada masalah dengan hal semacam itu, tetapi apa yang saya lihat secara keseluruhan adalah bahwa ketika Anda berhadapan dengan begitu banyak poin, dan melakukan fungsi mendalam yang berjalan begitu lama, Anda mencari cara untuk mengoptimalkannya. Dan saya ingin tahu apa yang dilakukan pengguna skala besar lainnya.
DEWright
Jika pertanyaannya terbuka, itu harus diulang dan dibuat wiki komunitas.
Sean

Jawaban:

1

Karena ini merupakan pertanyaan terbuka (lama), saya akan memberikan jawaban terbuka: Menggunakan database dengan benar dapat menghemat banyak waktu. Cara yang jelas untuk melakukan sesuatu belum tentu yang tercepat, misalnya ketika saya baru-baru ini ingin menghapus banyak baris dari Oracle, ternyata hanya mengirim: delete from TABLE1 where ID = 123untuk setiap fitur sangat lambat dan bahwa ada beberapa hal Oracle mewah yang bisa saya lakukan untuk membuatnya urutan besarnya lebih cepat.

Jadi pada dasarnya jika Anda menemukan masalah tertentu yang merupakan hambatan, tanyakan pertanyaan spesifik terkait dengan hambatan tersebut kepada para ahli. Jadi untuk sisi ArcGIS yang mungkin ada di sini (atau forum ESRI, atau dukungan ESRI Anda), tetapi untuk masalah sisi basis data (dan hal-hal yang biasanya akan lebih cepat jika Anda melakukannya di sana) Anda ingin bertanya di http : //www.stackoverflow.com

GIS-Jonathan
sumber
Tidak begitu banyak berakhir terbuka; tetapi mencari lebih banyak cara teoritis yang lebih baik untuk menangani topik ini. Jalur saya yang terbaru membuat saya membangun logika fuzzy-lookup saya sendiri untuk berbicara dengan DB SQL2008 saya sendiri. Menghapus ketergantungan pada mesin ESRI untuk mengandalkan indeks yang disetel dengan baik untuk mencoba dan membuatnya lebih cepat. Karena kita tidak cukup tahu tentang bagian dalam mesin BING atau Google, kita hanya bisa berasumsi mereka akan menggunakan logika berbutir halus itu sendiri.
DEWright
Anda dapat mengetahui sedikit di balik layar Google dari makalah penelitian mereka - research.google.com/pubs/papers.html
GIS-Jonathan