Skalowalne przetwarzanie danych w R
Michael Kane
Assistant Professor, Yale University
bigmemorysłuży do przechowywania, manipulowania i przetwarzania dużych macierzy, które mogą przekraczać dostępną pamięć RAM
Obiekty R są przechowywane w pamięci RAM
Gdy zabraknie pamięci RAM
Lepiej przenosić dane do pamięci RAM tylko wtedy, gdy są potrzebne do przetwarzania.
bigmemory implementuje typ danych big.matrix, służący do tworzenia, przechowywania, dostępu i manipulowania macierzami na dysku
Dane są przechowywane na dysku i przenoszone do pamięci RAM w sposób niejawny
Obiekt big.matrix:
library(bigmemory)# Create a new big.matrix object x <- big.matrix(nrow = 1, ncol = 3, type = "double", init = 0, backingfile = "hello_big_matrix.bin", descriptorfile = "hello_big_matrix.desc")
# See what's in it
x[,]
0 0 0
x
An object of class "big.matrix"
Slot "address":
<pointer: 0x108e2a9a0>
# Change the value in the first row and column
x[1, 1] <- 3
# Verify the change has been made
x[,]
3 0 0
Skalowalne przetwarzanie danych w R