Aby odpowiedzieć na pierwszą część pytania, myślę, że warto spojrzeć na dodatkowy tekst w pliku pomocy Tworzenie indeksów atrybutów na temat indeksów wielokolumnowych.
Ważna jest kolejność pojawiania się pól w indeksie wielokolumnowym. W indeksie wielokolumnowym z kolumną A poprzedzającą kolumnę B, kolumna A zostanie użyta do przeprowadzenia wstępnego wyszukiwania. Taki indeks będzie także znacznie bardziej użyteczny w przypadku zapytań obejmujących tylko kolumnę A niż w przypadku zapytań obejmujących tylko kolumnę B.
Utwórz indeks wielokolumnowy na A i B. Ten indeks byłby zwykle bardziej wydajny w przypadku zapytań obejmujących obie kolumny. W przypadku zapytań dotyczących tylko A indeks ten byłby wolniejszy niż indeks samego A. Ten indeks byłby mało przydatny w przypadku zapytań obejmujących tylko B. Aby to zrekompensować, można utworzyć dodatkowy indeks na B.
Oba te fragmenty pokazują, że indeksy wielokolumnowe są lepsze do specjalistycznego użytku. Ponadto użycie takiego indeksu do sortowania tylko jednej z uwzględnionych kolumn może faktycznie zaszkodzić wydajności. Z tego powodu prawdopodobne jest, że indeksy poszczególnych kolumn będą konieczne dla każdego z atrybutów zawartych w indeksie wielokolumnowym.
Znalazłem link do starego, ale interesującego dokumentu ESRI, w którym podano 9 powodów, dla których warto wybrać plik zamiast osobistego GDB . Interesujące jest to, że konkretnie określa wydajność jako jeden z powodów. Część tego wzrostu wydajności wynika z systemu pamięci masowej opartego na plikach. Myślę, że może to również mieć wpływ na brak obsługi wielu kolumn. W przeciwieństwie do Personal GDB, który jest pojedynczym plikiem, indeks w pliku GDB jest przechowywany jako osobny plik w strukturze GDB. Oznacza to, że plik indeksu i plik atrybutu dla określonej klasy obiektów będą musiały być połączone i dostępne razem. Widziałem, gdzie indeks wielokolumnowy prowadziłby do przeskakiwania między plikami indeksu i plików atrybutów i potencjalnie powodując wzrost wydajności przewyższający wzrost wydajności indeksowania.
Ponieważ już osiągnięto znaczny wzrost wydajności pliku GDB w porównaniu z osobistym GDB, prawdopodobnie nie było warto wdrożyć indeksu wielokolumnowego.
Z mojego doświadczenia w pracy z obydwoma typami GDB, widziałem, że Personal GDB działa o około 50% większy niż plik. Na podstawie danych podanych w związku z plikiem GDB, gdybyś przekonwertował na PGDB, prawdopodobnie uzyskałbyś około 300 MB osobistego GDB. Z tego, co widziałem, praca z bazami MS Access, zarówno w produktach ESRI, jak i osobno, polega na tym, że zauważasz spadek wydajności, gdy pliki „.mdb” wzrosną znacznie ponad 100 MB.
Innym problemem byłoby prawdopodobnie to, że nawet gdybyś mógł przyspieszyć wyszukiwanie atrybutów, zobaczyłbyś duży spadek wydajności związany z poruszaniem się w ramce danych i odświeżaniem widoku. Warstwa po prostu nie rysowałaby tak szybko, gdyby była w PGDB. W tym artykule porównującym typy Geodat baz danych podano więcej informacji na temat różnic w wydajności.
Podobnie jak w przypadku wielu rzeczy, najlepszy wybór ostatecznie sprowadza się do Twojego przypadku użycia. Jeśli istnieje wiele operacji specyficznych dla bazy danych, które chcesz wykonać, takich jak zapytania i aktualizacje, które możesz wykonać w interfejsie Access, to Personal GDB może być lepszy. Jeśli planujesz tylko wykonać kilka zapytań, ale przede wszystkim będziesz wizualizować dane przestrzenne, wydajność zdecydowanie spada na stronę pliku GDB.