Импортируйте большие данные Используя DatabaseDatastore Объект и MySQL Native Interface

В этом примере показано, как использовать databaseDatastore функция, чтобы создать DatabaseDatastore объект для доступа к наборам данных, хранимых в базе данных MySQL® с помощью собственного интерфейса MySQL. После создания DatabaseDatastore объект, можно предварительно просмотреть данные, считать данные во фрагментах и считать каждую запись в наборе данных.

Чтобы анализировать большие данные, можно запустить алгоритмы на больших наборах данных с помощью длинного массива. В качестве альтернативы можно написать алгоритм MapReduce, который определяет фрагментацию и сокращение данных.

Этот пример использует предварительно сконфигурированный источник данных MySQL, чтобы создать соединение с базой данных. Для получения дополнительной информации смотрите databaseConnectionOptions функция.

Создайте DatabaseDatastore Объект

Создайте собственное соединение с базой данных интерфейса MySQL к базе данных MySQL с помощью имени источника данных, имени пользователя и пароля.

datasource = "MySQLDataSource";
username = "root";
password = "matlab";
conn = mysql(datasource,username,password);

Создайте DatabaseDatastore объект с помощью соединения с базой данных и SQL-запроса. Этот запрос получает все данные от airlinesmall таблица.

sqlquery = "select * from airlinesmall"; 
dbds = databaseDatastore(conn,sqlquery); 

Предварительно просмотрите данные в DatabaseDatastore Объект

Предварительно просмотрите первые восемь записей в наборе данных, возвращенном путем выполнения SQL-запроса.

preview(dbds) 
ans=8×29 table
    Year    Month    DayofMonth    DayOfWeek    DepTime    CRSDepTime    ArrTime    CRSArrTime    UniqueCarrier    FlightNum    TailNum     ActualElapsedTime    CRSElapsedTime    AirTime    ArrDelay    DepDelay    Origin    Dest     Distance    TaxiIn    TaxiOut    Cancelled    CancellationCode    Diverted    CarrierDelay    WeatherDelay    NASDelay    SecurityDelay    LateAircraftDelay
    ____    _____    __________    _________    _______    __________    _______    __________    _____________    _________    ________    _________________    ______________    _______    ________    ________    ______    _____    ________    ______    _______    _________    ________________    ________    ____________    ____________    ________    _____________    _________________

    1990      9          11            2         1810         1812        1939         1930           "AA"           1426       "NA"                89                 78           "NA"          9          -2       "RST"     "ORD"       268       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          27            6         1353         1355        1634         1640           "US"            112       "NA"               161                165           "NA"         -6          -2       "TPA"     "SYR"      1104       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          23            2         1057         1055        1205         1155           "US"           1621       "NA"                68                 60           "NA"         10           2       "ROC"     "EWR"       246       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10           8            1         1515         1440        1609         1535           "NW"            749       "NA"                54                 55           "NA"         34          35       "MSP"     "FSD"       197       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          19            5         1130         1120        1203         1154           "UA"            369       "NA"                93                 94           "NA"          9          10       "BUF"     "ORD"       473       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          12            5         1755         1733        1858         1820           "DL"            590       "NA"                63                 47           "NA"         38          22       "BOS"     "BGR"       201       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     11          22            4         1345         1355        1530         1549           "MQ"           4982       "#NAME?"           105                114           "90"        -19         -10       "JAX"     "MIA"       334       "8"       "7"           0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     11          26            1         2105         2110        2209         2237           "AA"           1947       "N3BäA1"            64                 87           "47"        -28          -5       "SFO"     "LAX"       337       "6"       "11"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       

Считайте данные в DatabaseDatastore Объект

Считайте первые 10 записей.

dbds.ReadSize = 10; 
read(dbds) 
ans=10×29 table
    Year    Month    DayofMonth    DayOfWeek    DepTime    CRSDepTime    ArrTime    CRSArrTime    UniqueCarrier    FlightNum    TailNum     ActualElapsedTime    CRSElapsedTime    AirTime    ArrDelay    DepDelay    Origin    Dest     Distance    TaxiIn    TaxiOut    Cancelled    CancellationCode    Diverted    CarrierDelay    WeatherDelay    NASDelay    SecurityDelay    LateAircraftDelay
    ____    _____    __________    _________    _______    __________    _______    __________    _____________    _________    ________    _________________    ______________    _______    ________    ________    ______    _____    ________    ______    _______    _________    ________________    ________    ____________    ____________    ________    _____________    _________________

    1990      9          11            2         1810         1812        1939         1930           "AA"           1426       "NA"                89                 78           "NA"          9          -2       "RST"     "ORD"       268       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          27            6         1353         1355        1634         1640           "US"            112       "NA"               161                165           "NA"         -6          -2       "TPA"     "SYR"      1104       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          23            2         1057         1055        1205         1155           "US"           1621       "NA"                68                 60           "NA"         10           2       "ROC"     "EWR"       246       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10           8            1         1515         1440        1609         1535           "NW"            749       "NA"                54                 55           "NA"         34          35       "MSP"     "FSD"       197       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          19            5         1130         1120        1203         1154           "UA"            369       "NA"                93                 94           "NA"          9          10       "BUF"     "ORD"       473       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          12            5         1755         1733        1858         1820           "DL"            590       "NA"                63                 47           "NA"         38          22       "BOS"     "BGR"       201       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     11          22            4         1345         1355        1530         1549           "MQ"           4982       "#NAME?"           105                114           "90"        -19         -10       "JAX"     "MIA"       334       "8"       "7"           0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     11          26            1         2105         2110        2209         2237           "AA"           1947       "N3BäA1"            64                 87           "47"        -28          -5       "SFO"     "LAX"       337       "6"       "11"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     11          18            7         1407         1415        1442         1457           "DL"            628       "N521D1"            35                 42           "22"        -15          -8       "OKC"     "TUL"       111       "3"       "10"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     12          23            7         1327         1310        1530         1530           "WN"            658       "N789@@"            63                 80           "48"          0          17       "SNA"     "PHX"       338       "5"       "10"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       

Считайте DatabaseDatastore возразите еще два раза при помощи встречного n. Считайте 10 записей за один раз.

n = 0; 
while(hasdata(dbds) && n~=2) 
    read(dbds) 
    n = n+1; 
end 
ans=10×29 table
    Year    Month    DayofMonth    DayOfWeek    DepTime    CRSDepTime    ArrTime    CRSArrTime    UniqueCarrier    FlightNum    TailNum     ActualElapsedTime    CRSElapsedTime    AirTime    ArrDelay    DepDelay    Origin    Dest     Distance    TaxiIn    TaxiOut    Cancelled    CancellationCode    Diverted    CarrierDelay    WeatherDelay    NASDelay    SecurityDelay    LateAircraftDelay
    ____    _____    __________    _________    _______    __________    _______    __________    _____________    _________    ________    _________________    ______________    _______    ________    ________    ______    _____    ________    ______    _______    _________    ________________    ________    ____________    ____________    ________    _____________    _________________

    2001     12           8            6         1402         1410        1642         1626           "NW"            809       "N324N2"           220                196           "199"        16          -8       "BOS"     "MEM"      1139       "4"       "17"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     12          22            6         1707         1715        1823         1821           "UA"            725       "N361ä1"           136                126           "104"         2          -8       "RIC"     "ORD"       642       "20"      "12"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2001     12           9            7          656          650         824          823           "DL"           1224       "N37438"            88                 93           "73"          1           6       "ATL"     "BWI"       576       "4"       "11"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6          19            3          632          640         748          756           "NW"            126       "N773NC"            76                 76           "58"         -8          -8       "BIS"     "MSP"       386       "9"       "9"           0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6          10            1          927          930        1031         1031           "UA"            501       "N304UA"           124                121           "101"         0          -3       "DFW"     "DEN"       641       "5"       "18"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6          15            6         1120         1115        1401         1413           "DL"            406       "N1402A"           161                178           "132"       -12           5       "FLL"     "LGA"      1076       "7"       "22"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6           8            6         1557         1600        1703         1711           "HP"            660       "N334AW"            66                 71           "52"         -8          -3       "PHX"     "SNA"       338       "4"       "10"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6          26            3         2026         1840          47         2257           "AA"            636       "N420AA"           141                137           "115"       110         106       "PHX"     "DFW"       868       "6"       "20"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      6           5            3         2032         2031        2233         2248           "AA"           3163       "N4WFAA"           241                257           "220"       -15           1       "STL"     "SMF"      1679       "8"       "13"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    2002      7          25            4         1032         1035        1853         1852           "US"            180       "N174UW"           321                317           "289"         1          -3       "SEA"     "PHL"      2378       "9"       "23"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       

ans=10×29 table
    Year    Month    DayofMonth    DayOfWeek    DepTime    CRSDepTime    ArrTime    CRSArrTime    UniqueCarrier    FlightNum    TailNum    ActualElapsedTime    CRSElapsedTime    AirTime    ArrDelay    DepDelay    Origin    Dest     Distance    TaxiIn    TaxiOut    Cancelled    CancellationCode    Diverted    CarrierDelay    WeatherDelay    NASDelay    SecurityDelay    LateAircraftDelay
    ____    _____    __________    _________    _______    __________    _______    __________    _____________    _________    _______    _________________    ______________    _______    ________    ________    ______    _____    ________    ______    _______    _________    ________________    ________    ____________    ____________    ________    _____________    _________________

    1987     10          30            5         1329         1329        1434         1436           "US"            683        "NA"              65                 67           "NA"         -2           0       "LGA"     "BUF"       292       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11           7            6         1316         1315        1713         1647           "TW"            810        "NA"             177                152           "NA"         26           1       "STL"     "BOS"      1046       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11          28            6          815          815        1015         1015           "WN"            441        "NA"             120                120           "NA"          0           0       "BNA"     "HOU"       670       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11           2            1          700          700         800          800           "NW"            790        "NA"              60                 60           "NA"          0           0       "BTR"     "MEM"       319       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11          14            6          840          840        1127         1120           "CO"            733        "NA"             167                160           "NA"          7           0       "EWR"     "MCO"       938       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11           1            7         1625         1625        1823         1758           "DL"            957        "NA"             118                 93           "NA"         25           0       "EWR"     "CVG"       569       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1987     11          26            4         1314         1315        1538         1542           "AA"            398        "NA"              84                 87           "NA"         -4          -1       "BNA"     "RDU"       443       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1992      7          18            6         1538         1540        1703         1720           "NW"            199        "NA"             145                160           "NA"        -17          -2       "DCA"     "MSP"       931       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1992      7          19            7          932          932        1130         1052           "AA"           1433        "NA"             118                 80           "NA"         38           0       "DFW"     "HRL"       461       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1992      8           4            2          NaN         1815         NaN         1940           "US"            127        "NA"             NaN                 85           "NA"        NaN         NaN       "EWR"     "PIT"       319       "NA"      "NA"          1              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       

Сбросьте DatabaseDatastore Объект

Сбросьте DatabaseDatastore возразите против его исходного состояния, где никакие данные не были считаны из него. Сброс позволяет вам перечитывать от того же DatabaseDatastore объект.

reset(dbds) 

Считайте каждую запись в DatabaseDatastore Объект

Считайте каждую запись в DatabaseDatastore объект с шагом 50 000 записей за один раз.

dbds.ReadSize = 50000; 
data = readall(dbds); 

Отобразите первые три записи полного набора данных.

head(data,3)
ans=3×29 table
    Year    Month    DayofMonth    DayOfWeek    DepTime    CRSDepTime    ArrTime    CRSArrTime    UniqueCarrier    FlightNum    TailNum    ActualElapsedTime    CRSElapsedTime    AirTime    ArrDelay    DepDelay    Origin    Dest     Distance    TaxiIn    TaxiOut    Cancelled    CancellationCode    Diverted    CarrierDelay    WeatherDelay    NASDelay    SecurityDelay    LateAircraftDelay
    ____    _____    __________    _________    _______    __________    _______    __________    _____________    _________    _______    _________________    ______________    _______    ________    ________    ______    _____    ________    ______    _______    _________    ________________    ________    ____________    ____________    ________    _____________    _________________

    1990      9          11            2         1810         1812        1939         1930           "AA"           1426        "NA"              89                 78           "NA"          9          -2       "RST"     "ORD"       268       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          27            6         1353         1355        1634         1640           "US"            112        "NA"             161                165           "NA"         -6          -2       "TPA"     "SYR"      1104       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       
    1990     10          23            2         1057         1055        1205         1155           "US"           1621        "NA"              68                 60           "NA"         10           2       "ROC"     "EWR"       246       "NA"      "NA"          0              "NA"             0            "NA"            "NA"          "NA"          "NA"               "NA"       

Закройте DatabaseDatastore Объект и соединение с базой данных

close(dbds)

Смотрите также

| | | | | |

Похожие темы