Python Elasticsearch
以下所用版本为Elasticsearch 7.2.0
1.安装
pip3 install elasticsearch -i https://pypi.tuna.tsinghua.edu.cn/simple
2.连接ES
es = Elasticsearch([{'host': '127.0.0.1', 'port': 9200}])
3.创建index
index = 'index_tushare'
body = {
"mappings": {
"properties": {
"ts_code": {
"type": "keyword"
},
"symbol": {
"type": "keyword"
},
"ts_name": {
"type": "keyword"
},
"fullname": {
"type": "keyword"
},
"area": {
"type": "keyword"
},
"industry": {
"type": "keyword"
},
"list_date": {
"type": "keyword"
},
"tab_name": {
"type": "keyword"
}
}
}
}
# create an index in elasticsearch, ignore status code 400 (index already exists)
es.indices.create(index=index, body=body, ignore=400)
4.创建mapping之后,添加字段
index_daily_close = 'index_daily_close'
body_daily_close = {
"mappings": {
"properties": {
"trade_date": {
"type": "keyword"
}
}
}
}
es.indices.create(index=index_daily_close, body=body_daily_close, ignore=400) properties = body_daily_close.get("mappings").get("properties") def daily_close_add_tscodes(tscode):
properties.setdefault(tscode, {"type": "keyword"})
es.indices.put_mapping(index=index_daily_close, body=body_daily_close.get("mappings"))
print(body_daily_close.get("mappings"))
添加字段的时候要注意,elasticsearch默认最大字段数为1000,超过1000就会报错
{
"error": {
"root_cause": [
{
"type": "illegal_argument_exception",
"reason": "Limit of total fields [1000] in index [index_daily_close] has been exceeded"
}
],
"type": "illegal_argument_exception",
"reason": "Limit of total fields [1000] in index [index_daily_close] has been exceeded"
},
"status": 400
}
这里的1000是整个节点不能超过1000,我尝试了在多个索引里面添加字段,最终出现的结果是:

以上实验的方式是在第一个表中500个,然后第二个表中500个,在第998个的时候报错了。加上每个表本身有的 trade_date 字段,刚好加起来1000个。然后报错在了第1001个

Python Elasticsearch的更多相关文章
- Python Elasticsearch api,组合过滤器,term过滤器,正则查询 ,match查询,获取最近一小时的数据
Python Elasticsearch api 描述:ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.下 ...
- Python Elasticsearch api
描述:ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.下面介绍了利用Python API接口进行数据查询,方便 ...
- Python Elasticsearch批量操作客户端
基于Python实现的Elasticsearch批量操作客户端 by:授客 QQ:1033553122 1. 代码用途 1 2. 测试环境 1 3. 使用方法 1 3.1 配置ES服务器信息 1 ...
- python elasticsearch 批量写入数据
from elasticsearch import Elasticsearch from elasticsearch import helpers import pymysql import time ...
- Elasticsearch安装配置
文档地址: https://www.elastic.co/guide/en/elasticsearch/reference/6.5/setup.html 官方页面提供自0.9版本以来的说明文档,由于我 ...
- django学习系列——python和php对比
python 和 php 我都是使用过,这里不想做一个非常理性的分析,只是根据自己的经验谈一下感想. 在web开发方面,无疑 php 更甚一筹. 从某种角度来说,php 就是专门为 web 定制的语言 ...
- ELK系列三:Elasticsearch的简单使用和配置文件简介
1.定义模板创建索引: 首先定义好一个模板的例子 { "order":14, "template":"ids-1", "state ...
- linux 安装elasticsearch
一.检测是否已经安装的elasticsearch ps aux|grep elasticsearch. 二.下载elasticsearch.tar.gz并上传至服务器usr/local/文件夹下 三. ...
- 工作笔记 之 Python应用技术
python socket编程详细介绍 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket,建立网络通信连接至少要一对端口号(socket). Socket本质是 ...
随机推荐
- 数字pid笔记(2)
void pid_Cal(void) { //float index = 0; IncPid * p = NULL; p = &g_PID_Inc; p->SetVal = sys_pa ...
- 不一样的 Null
前不久处理一个异常的时候发现了一段有趣的代码,一同事在往表里(Sql Server 数据库)添加数据的时候给可以为 null 的字段赋了如下的值: Student stu = new Student( ...
- 【题解】在你窗外闪耀的星星-C++
题目题目描述飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀着你玫瑰色 ...
- Java Part 001( 02_01_理解面向对象 )
Java完全支持面向对象的三个基本特征: 继承.封装.多态 面向对象的方式实际上由OOA(面向对象分析).OOD(面向对象设计).OOP(面向对象编程)三个部分有机组成 目前业界统一采用UML(统一建 ...
- 009_Linux驱动之_request_irq()函数
1. request_irq()函数原型 int request_irq(unsigned int irq, irq_handler_t handler, unsigned long irqflags ...
- chrome扩展开发实战入门之一-hellocrx
后记:在写这篇文章时,我还没搞懂chrome扩展的基本原理.后来才明白,最简单(且实用)的扩展只需要manifest.json和content_scripts.js两个文件,无需background. ...
- Public model for matrix
以下是可以加减乘除(就是乘逆矩阵啦)以及求若干次幂.行列式和逆的矩阵模板. 欢迎大家指正其中可能存在的错误(只验证了求逆的正确性). 顺便提一下这种复杂度低于定义式求逆的方法,来自于我的高等代数书,思 ...
- 安装包设计-------卸载(MFC)---------知识总结
1.删除目录及其下所有文件 bool MyDeleteFile(CString Path) { // SHFILEOPSTRUCT FileOp={0}; // FileOp.fFlags = FOF ...
- 数据结构实验之栈与队列六:下一较大值(二)(SDUT 3333)
#include <bits/stdc++.h> using namespace std; int a[1000006]; int b[1000006]; int sta[100006]; ...
- tarjan——校园网(缩点,再构图)
P2746 [USACO5.3]校园网Network of Schools 任务一:求缩完点后入度为0的点的个数(有向边) 任务二:求缩完点后入度为0和出度为0的最大值(要把图构造成强连通分量) 注意 ...