elastic
入力data.frameまたはlistからデータ型をキャプチャしようとはしませんdocs_bulk()
-それを試みることを考えることができますが、Rデータ型はElasticsearch型に正確にマップされないだろうと思います-データをマップしようとすることで遊ぶかもしれません種類。これが私がそれを行う方法です:
library('elastic')
connect()
ダミー data.frame
df <- data.frame(
date = as.POSIXct(seq(from = as.Date("2016-10-01"),
to = as.Date("2016-10-31"), by = 'day')),
num = 1:31
)
リストまたは JSON 文字列としてマッピングを作成します
mapping <- list(
world = list(properties = list(
date = list(
type = "date",
format = "yyyy-mm-dd HH:mm:ss"
),
num = list(type = "long")
)))
インデックスを作る
index_create(index = "hello")
インデックスにマッピングを作成する
mapping_create(index = "hello", type = "world", body = mapping)
マッピングを取得する
mapping_get("hello")
#> $hello
#> $hello$mappings
#> $hello$mappings$world
#> $hello$mappings$world$properties
#> $hello$mappings$world$properties$date
#> $hello$mappings$world$properties$date$type
#> [1] "date"
#>
#> $hello$mappings$world$properties$date$format
#> [1] "yyyy-mm-dd HH:mm:ss"
#>
#>
#> $hello$mappings$world$properties$num
#> $hello$mappings$world$properties$num$type
#> [1] "long"
data.frame の一括読み込み
docs_bulk(df, index = "hello", type = "world")
インデックスで検索
Search("hello")