Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: SQL Server 2016 (13.x) i nowsze wersje
To jest tutorial 10 z serii tutoriali RevoScaleR, jak korzystać z funkcji RevoScaleR z SQL Server.
W tym samouczku nauczysz się, jak pobrać dane z SQL Server, a następnie użyć funkcji rxImport, aby umieścić interesujące dane w pliku lokalnym. Dzięki temu możesz wielokrotnie analizować ją w lokalnym kontekście obliczeniowym, bez konieczności ponownego zapytywania bazy danych.
Funkcja rxImport może być używana do przenoszenia danych ze źródła danych do ramki danych w pamięci sesji lub do pliku XDF na dysku. Jeśli nie określisz pliku jako celu, dane są umieszczane w pamięci jako ramka danych.
Wyodrębnij podzbiór danych z SQL Server do pamięci lokalnej
Postanowiłeś, że chcesz dokładniej zbadać tylko osoby wysokiego ryzyka. Tabela źródłowa w SQL Server jest duża, więc chcesz uzyskać informacje tylko o klientach wysokiego ryzyka. Następnie ładujesz te dane do ramki danych w pamięci lokalnej stacji roboczej.
Zresetuj kontekst obliczeniowy do lokalnej stacji roboczej.
rxSetComputeContext("local")Utworzenie nowego obiektu źródłowego SQL Server, dostarczającego prawidłowe zapytanie SQL w parametrze sqlQuery. Ten przykład otrzymuje podzbiór obserwacji o najwyższych wynikach ryzyka. Dzięki temu tylko dane, których naprawdę potrzebujesz, trafiają do pamięci lokalnej.
sqlServerProbDS \<- RxSqlServerData( sqlQuery = paste("SELECT * FROM ccScoreOutput2", "WHERE (ccFraudProb > .99)"), connectionString = sqlConnString)Wywołaj funkcję rxImport , aby odczytać dane do ramki danych w lokalnej sesji R.
highRisk <- rxImport(sqlServerProbDS)Jeśli operacja zakończyła się powodzeniem, powinieneś zobaczyć komunikat o stanie taki jak ten: "Odczytane wiersze: 35, Łączna liczba przetworzonych wierszy: 35, Łączny czas przetwarzania porcji: 0,036 sekundy"
Teraz, gdy obserwacje wysokiego ryzyka znajdują się w ramce danych w pamięci, możesz użyć różnych funkcji R do manipulacji ramką danych. Na przykład możesz uporządkować klientów według ich oceny ryzyka i wydrukować listę tych, którzy stanowią największe ryzyko.
orderedHighRisk <- highRisk[order(-highRisk$ccFraudProb),] row.names(orderedHighRisk) <- NULL head(orderedHighRisk)
Results
ccFraudLogitScore state gender cardholder balance numTrans numIntlTrans creditLine ccFraudProb1
9.786345 SD Male Principal 23456 25 5 75 0.99994382
9.433040 FL Female Principal 20629 24 28 75 0.99992003
8.556785 NY Female Principal 19064 82 53 43 0.99980784
8.188668 AZ Female Principal 19948 29 0 75 0.99972235
7.551699 NY Female Principal 11051 95 0 75 0.99947516
7.335080 NV Male Principal 21566 4 6 75 0.9993482
Więcej o rxImport
Możesz używać rxImport nie tylko do przenoszenia danych, ale także do transformacji danych podczas ich odczytu. Na przykład możesz określić liczbę znaków dla kolumn o stałej szerokości, podać opis zmiennych, ustawić poziomy dla kolumn czynników, a nawet stworzyć nowe poziomy do użycia po imporcie.
Funkcja rxImport przypisuje nazwy zmiennych kolumnom podczas procesu importu, ale możesz wskazać nowe nazwy zmiennych za pomocą parametru colInfo lub zmienić typy danych za pomocą parametru colClasses .
Określając dodatkowe operacje w parametrze transformacji , można przeprowadzić podstawowe przetwarzanie każdego fragmentu danych, który jest odczytywany.