Python Elasticsearch 插入数据

  1. index
    这是很简单的一个插入数据的方法,每条数据调用一个index方法,代码如下
from datetime import datetime
from elasticsearch import Elasticsearch

es = Elasticsearch( "localhost:9200" ) 
data = {
    "@timestamp" : datetime.now().strftime( "%Y-%m-%dT%H:%M:%S.000+0800" ),
    "http_code" : "404",
    "count" : "10"
}

es.index( index="http_code", doc_type="error_code", body=data )
  1. bulk
    一次性插入多条数据的方法
from datetime import datetime
from elasticsearch import Elasticsearch
import elasticsearch.helpers
import random

es = Elasticsearch( "localhost:9200" ) 
package = []
for i in range( 10 ):
    row = {
        "@timestamp":datetime.now().strftime( "%Y-%m-%dT%H:%M:%S.000+0800" ),
        "http_code" : "404",
        "count" : random.randint(  1, 100 )
    }
    package.append( row )

actions = [
    {
        '_op_type': 'index',
        '_index': "http_code",  //index
        '_type': "error_code",  //type
        '_source': d
    }
    for d in package
]    

elasticsearch.helpers.bulk( es, action )
posted @   luoganttcc  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示