iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 22
0
Elastic Stack on Cloud

Elastic 30天自我修行系列 第 22

上傳三國演義120回到Elastic Cloud

因為這一次上傳的不是 Json 也不是 CSV ,而是長篇文字為主的內容。
所以改用 docs_create 而不是之前常用的 docs_bulk 函數。

程式本身也很簡單,就是把昨天下載好的120回,今天讀取後再直接塞到 body 中進行上傳;
然後有個參數是 id ,就直接把三國演義的回數權充做為 id 吧。

所以簡單執行從 1到120 的迴圈,快速搞定。
R Code 如下:

library(elastic)

save_path <- "/home/temp123"

con1 <- connect(
  host = "11111.asia-east1.gcp.elastic-cloud.com",
  path = "",
  user = "elastic",
  pwd = "11111",
  port = 9243,
  transport_schema = "https"
)

for (i in 1:120) {
  upload_file <- file.path(save_path, paste0(i, ".txt"))
  
  docs_create(conn = con1, index = "three_kingdoms2", 
       body = list(body = readr::read_file(upload_file)), 
       id = i)
}

最後透過 Elastic co 網頁進行檢查:
今天不知何故,圖片上傳失敗,先以文字複製貼上做為示意。雖然僅僅120回,若不透過 API 方式傳輸,也是浪費人力成本啊!

卓甚輕之,不為禮。玄德出,張飛大怒曰:「我等親赴血戰,救了這廝,他卻如此無禮;若不殺之,難消我氣!」便要提刀入帳來殺董卓。正是:人情勢利古猶今,誰識英雄是白身?安得快人如翼德,盡誅世上負心人!畢竟董卓性命如何,且看下文分解。"
        },
        "_index": "three_kingdoms2"
      },
      {
        "_score": 1,
        "_type": "_doc",
        "_id": "2",
        "_source": {
          "body": "且說董卓字仲顈,隴西臨洮人也。官拜河東太守,自來驕傲。當日怠慢了玄德,張飛性發,便欲殺之。玄德與關公急止之曰:「他是朝廷命官,豈可擅殺?」飛曰:「若不殺這廝,反要在他部下聽令,其實不甘!二兄要便住在此,我自投別處去也!」玄德曰:「我三人義同生死,豈可相離?不若都投別處去便了。」飛曰:「若如此,稍解吾恨。」於是三人連夜引軍來投朱雋。雋待之其厚,合兵一處,

最後,希望能在這幾天,將 Elastic Search 的蒐尋功能做更進一步的瞭解。


上一篇
下載三國演義120回,等待明天上傳Elastic Cloud
下一篇
用三國演義中的角色名做為自訂詞庫
系列文
Elastic 30天自我修行31

尚未有邦友留言

立即登入留言