中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

Python 批量寫入 Elasticsearch 腳本
來源:易賢網 閱讀:5273 次 日期:2015-05-04 14:38:07
溫馨提示:易賢網小編為您整理了“Python 批量寫入 Elasticsearch 腳本”,方便廣大網友查閱!

Elasticsearch 官方和社區提供了各種各樣的客戶端庫,在之前的博客中,我陸陸續續提到和演示過 Perl 的,Javascript 的,Ruby 的。上周寫了一版 Python 的,考慮到好像很難找到現成的示例,如何用 python 批量寫數據進 Elasticsearch,今天一并貼上來。

#!/usr/bin/env pypy

#coding:utf-8

import re

import sys

import time

import datetime

import logging

from elasticsearch import Elasticsearch

from elasticsearch import helpers

from elasticsearch import ConnectionTimeout

es = Elasticsearch(['192.168.0.2', '192.168.0.3'], sniff_on_start=True, sniff_on_connection_fail=True, max_retries=3, retry_on_timeout=True)

logging.basicConfig()

logging.getLogger('elasticsearch').setLevel(logging.WARN)

logging.getLogger('urllib3').setLevel(logging.WARN)

def parse_www(logline):

try:

time_local, request, http_user_agent, staTus, remote_addr, http_referer, request_time, body_bytes_sent, http_x_forwarded_proto, http_x_forwarded_for, http_host, http_cookie, upstream_response_time = logline.split('`')

try:

upstream_response_time = float(upstream_response_time)

except:

upstream_response_time = None

method, uri, verb = request.split(' ')

arg = {}

try:

url_path, url_args = uri.split('?')

for args in url_args.split('&'):

k, v = args.split('=')

arg[k] = v

except:

url_path = uri

# Why %z do not implement?

date = datetime.datetime.strptime(time_local, '[%d/%b/%Y:%H:%M:%S +0800]')

ret = {

"@timestamp": date.strftime('%FT%T+0800'),

"host": "127.0.0.1",

"method": method.lstrip('"'),

"url_path": url_path,

"url_args": arg,

"verb": verb.rstrip('"'),

"http_user_agent": http_user_agent,

"status": int(staTus),

"remote_addr": remote_addr.strip('[]'),

"http_referer": http_referer,

"request_time": float(request_time),

"body_bytes_sent": int(body_bytes_sent),

"http_x_forwarded_proto": http_x_forwarded_proto,

"http_x_forwarded_for": http_x_forwarded_for,

"http_host": http_host,

"http_cookie": http_cookie,

"upstream_response_time": upstream_response_time

}

return {"_index":"logstash-mweibo-www-"+date.strftime('%Y.%m.%d'), "_type":"nginx","_source":ret}

except:

return {"_index":"logstash-mweibo-www-"+datetime.datetime.now().strftime('%Y.%m.%d'), "_type":"nginx","_source":{"message":logline}}

def get_log():

start_time = time.time()

log_buffer = []

while True:

try:

line = sys.stdin.readline()

except:

break

if not line:

helpers.bulk(es, log_buffer)

del log_buffer[0:len(log_buffer)]

break

if line:

ret = parse_www(line.rstrip())

log_buffer.append(ret)

while ( len(log_buffer) > 2000 and len(log_buffer) % 2000 == 0 ):

try:

helpers.bulk(es, log_buffer)

except ConnectionTimeout:

print("try again")

continue

del log_buffer[0:len(log_buffer)]

break

else:

if (time.time() - startime > timeout ):

helpers.bulk(es, log_buffer)

start_time = time.time()

del log_buffer[0:len(log_buffer)]

time.sleep(1)

if __name__ == '__main__':

get_log()

和 Perl、Ruby 的客戶端不同,Python 的客戶端只支持兩種 transport 方式,urllib3 或者 thrift。也就是說,木有像事件驅動啊之類的辦法。

測試一下,這個腳本如果不發送數據,一秒處理日志條數在15k,發送數據,一秒只有2k。確實比較讓人失望,于是決定換成 pypy 試試——我司不少日志處理腳本都是用 pypy 運行的。

服務器上使用 pypy ,是通過 EPEL 安裝的,之前都只用核心模塊,這次需要安裝 elasticsearch 模塊。所以需要先給 pypy 加上 pip:

wget

pypy get-pip.py

網上大多說之前還要下載一個叫 distribute_setup.py 的腳本來運行,實測不需要,而且這個腳本的下載鏈接也失效了。

然后通過 pip 安裝 elasticsearch 包即可:

/usr/lib64/pypy-2.0.2/bin/pip install elasticsearch

測試,pypy 比 python 處理日志速度快一倍,寫 ES 速度快一半。不過 3300eps 依然很慢就是了。

測試中碰到的其他問題

可以看到腳本里已經設置了多次重試和超時重連,不過依然會收到寫入超時和失敗的返回,原來 Elasticsearch 默認對每個 node 做 segment merge 的時候,有磁盤保護措施,速度上限限制在 20MB/s。這在壓測的時候就容易觸發。

[2015-01-10 09:41:51,273][INFO ][index.engine.internal ] [node1][logstash-2015.01.10][2] now throttling indexing: numMergesInFlight=6,maxNumMerges=5

修改配置重啟即可:

indices.store.throttle.type:merge

indices.store.throttle.max_bytes_per_sec:500mb

關于這個問題,ES 也有討論:Should we lower the default merge IO throttle rate?。或許未來會有更靈活的策略。

更多 ES 性能測試和優化建議,參

更多信息請查看IT技術專欄

更多信息請查看技術文章
易賢網手機網站地址:Python 批量寫入 Elasticsearch 腳本
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
久久精品人人| 欧美成人精品一区二区| 欧美激情第1页| 久久精品国产第一区二区三区| 国产精品久久久999| 欧美成人首页| 免费在线观看日韩欧美| 欧美影院一区| 午夜精品一区二区三区在线播放| 久久这里只有| 性欧美办公室18xxxxhd| 亚洲图片在线观看| 亚洲精品久久久久久久久| 国内精品久久久久影院色| 国产精品福利网| 国产精品男女猛烈高潮激情| 欧美日韩三级| 国产精品二区在线观看| 国产精品毛片在线看| 国产精品麻豆欧美日韩ww| 欧美日韩免费精品| 欧美日韩一级黄| 久久精选视频| 欧美黑人多人双交| 欧美人与禽猛交乱配| 美女精品在线观看| 农村妇女精品| 欧美国产在线电影| 欧美成人一区二区三区在线观看| 久久一区国产| 欧美成人dvd在线视频| 久久aⅴ国产欧美74aaa| 久久免费视频在线观看| 久久九九99视频| 欧美国产丝袜视频| 欧美三区美女| 国产综合在线视频| 在线播放不卡| 夜夜爽www精品| 欧美一级网站| 一区久久精品| 欧美伊人久久久久久久久影院| 亚洲视频精选在线| 久久久久欧美精品| 黑人操亚洲美女惩罚| 99视频精品免费观看| 在线亚洲+欧美+日本专区| 午夜精品久久久久久99热| 亚洲欧美日韩视频二区| 欧美精品成人一区二区在线观看 | 久久久久国产精品人| 欧美视频在线视频| 欧美三级乱码| 亚洲男人的天堂在线| 欧美视频日韩视频在线观看| 亚洲人成7777| 国产精品久久久久久亚洲毛片| 9久re热视频在线精品| 欧美日韩在线一区二区| 亚洲欧美另类在线| 欧美专区在线观看| 91久久精品国产91久久性色| 欧美极品色图| 国产一级揄自揄精品视频| 亚洲片国产一区一级在线观看| 久久国产精品99精品国产| 午夜精品福利一区二区三区av| 免费在线欧美黄色| 黄色av成人| 巨胸喷奶水www久久久免费动漫| 国产香蕉久久精品综合网| 香蕉精品999视频一区二区 | 日韩午夜在线电影| 久久精品国产一区二区三区免费看| 久久久精品免费视频| 亚洲国产精品www| 免费成人在线观看视频| 国产欧美一区二区视频| 欧美专区在线| 亚洲国产综合在线| 噜噜噜91成人网| 亚洲一区视频| 亚洲国产美女精品久久久久∴| 欧美人与禽猛交乱配视频| 在线一区二区视频| 国产真实乱偷精品视频免| 久久精品午夜| 亚洲精品视频中文字幕| 欧美日韩一区二区国产| 久久国产天堂福利天堂| 在线看日韩av| 亚洲一级二级| 好看的亚洲午夜视频在线| 老司机一区二区| aa成人免费视频| 国产欧亚日韩视频| 鲁大师成人一区二区三区| 91久久精品国产| 国产小视频国产精品| 欧美国产三区| 久久精品人人做人人综合| 亚洲精品久久视频| 日韩写真在线| 欧美日韩精品欧美日韩精品| 亚洲一区亚洲| 99国产一区| 日韩系列在线| 免费视频一区二区三区在线观看| 性色av香蕉一区二区| 日韩午夜三级在线| 99视频有精品| 日韩视频一区二区三区在线播放免费观看| 亚洲黄色成人久久久| 精品电影在线观看| 国内视频一区| 韩国成人福利片在线播放| 国产一区二区三区网站| 伊人一区二区三区久久精品| 亚洲精品一区二区三区99| 亚洲福利在线观看| 亚洲精品国产精品国自产观看| 亚洲三级色网| 久久精品免费看| 欧美精品一二三| 国产一区二区三区的电影 | 日韩一级免费观看| 久久国产精品一区二区| 女仆av观看一区| 欧美日韩国产麻豆| 国产主播一区二区三区四区| 亚洲精品中文字幕在线| 久久精品99无色码中文字幕| 欧美另类videos死尸| 亚洲国产日韩欧美在线动漫| 国产一区二区av| 亚洲大片在线| 久久精品国产免费| 国产欧美日韩另类一区| 亚洲视屏一区| 欧美无乱码久久久免费午夜一区| 亚洲电影在线播放| 国产欧美一区二区精品秋霞影院| 国产精品美女久久久浪潮软件| 欧美亚洲第一页| 欧美日韩国产另类不卡| 欧美日韩国产高清| 国产精品午夜在线观看| 国产亚洲精品bv在线观看| 在线播放豆国产99亚洲| 亚洲日本欧美| 亚洲一二三四久久| 久久日韩精品| 欧美日韩精品一区| 久久综合色88| 亚洲第一精品影视| 欧美搞黄网站| 在线中文字幕日韩| 国产麻豆精品久久一二三| 久久久久www| 99这里只有久久精品视频| 国产精品一区二区三区成人| 你懂的国产精品永久在线| 欧美日韩精品系列| 亚洲精品字幕| 国产精品久久久久久久久久久久| 久久久国产91| 亚洲免费一级电影| 亚洲乱码国产乱码精品精| 国产欧美精品在线| 国产精品久久久一区二区三区| 蜜臀久久久99精品久久久久久 | 亚洲人成小说网站色在线| 午夜老司机精品| 欧美三级视频在线| 亚洲欧美日韩在线播放| 国模吧视频一区| 亚洲自拍偷拍一区| 欧美私人啪啪vps| 欧美中文在线视频| 欧美日韩不卡一区| 欧美在线播放| 国产一区深夜福利| 欧美精品一区二区三区在线播放| 亚洲欧洲一区二区三区| 欧美福利在线| 欧美激情精品久久久久久| 欧美日韩天堂| 国产乱码精品一区二区三区av| 久久精品中文字幕一区| 亚洲第一区在线观看| 欧美精品一区二区视频| 亚洲精品影院| 国产伦精品一区二区三区在线观看| 欧美中文字幕久久| 免费中文日韩| 精品成人在线视频| 黄色成人精品网站| 在线不卡中文字幕| 亚洲第一天堂无码专区| 1000部精品久久久久久久久 |