首页 > 编程语言 >Go源码阅读——github.com/medcl/esm —— esapi.go

Go源码阅读——github.com/medcl/esm —— esapi.go

时间:2023-05-09 09:56:55浏览次数:44  
标签:esapi github string License 索引 源码 error interface esm

esm(An Elasticsearch Migration Tool)—— esapi.go 

https://github.com/medcl/esm release: 8.7.1

通过阅读好的源代码,细致思考,理性分析并借鉴优秀实践经验,提高 zuoyang 的编程水平,所谓 "他山之石,可以攻玉"  该是如此吧。 

/*
Copyright 2016 Medcl (m AT medcl.net)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package main

import "bytes"

/*
定义了一些常用的 API 的接口
*/
type ESAPI interface {

	/*获取 Elasticsearch 集群的健康状态*/
	ClusterHealth() *ClusterHealth
	/*批量插入、更新或删除文档*/
	Bulk(data *bytes.Buffer)
	/*获取索引的设置信息*/
	GetIndexSettings(indexNames string) (*Indexes, error)
	/*删除索引*/
	DeleteIndex(name string) error
	/*创建索引*/
	CreateIndex(name string, settings map[string]interface{}) error
	/*获取一个或多个索引的映射信息*/
	GetIndexMappings(copyAllIndexes bool, indexNames string) (string, int, *Indexes, error)
	/*更新索引的设置信息*/
	UpdateIndexSettings(indexName string, settings map[string]interface{}) error
	/*更新索引的映射信息*/
	UpdateIndexMapping(indexName string, mappings map[string]interface{}) error
	/*滚动搜索,用于读取大批量数据*/
	NewScroll(indexNames string, scrollTime string, docBufferCount int, query string, slicedId, maxSlicedCount int, fields string) (interface{}, error)
	/*获取下一批滚动搜索结果*/
	NextScroll(scrollTime string, scrollId string) (interface{}, error)
	/*刷新一个或多个索引的缓存*/
	Refresh(name string) (err error)
}

标签:esapi,github,string,License,索引,源码,error,interface,esm
From: https://www.cnblogs.com/zuoyang/p/17384000.html

相关文章

  • 咚咚咚,你的王国之泪已上线「GitHub 热点速览」
    本周最大的热点,莫过于Mojo语言了,几大媒体均有报道这门兼顾Python优点和性能的新语言。当然还有凭借Switch游戏《塞尔达传说·王国之泪》登上热榜,获得3,500+star的Switch模拟器Ryujinx。当然,还有一些日常工作可能用到的测试工具gitleaks、网页加速qwik,处理数据的c......
  • java基于ssm的求职招聘管理系统、校园求职招聘管理系统,附源码+数据库,适合毕业设计、课
    1、项目介绍​该求职招聘网站基于B/S架构,采用SSM框架,运用JSP网页开发技术,并结合MySQL数据库,为招聘者和求职者搭建了一个高效、便捷的网络招聘平台。系统总共有三个角色:求职者、招聘者、管理员​本系统分别为前台求职招聘和后台系统管理,功能如下:​1.前台求职招聘​前台首......
  • Go源码阅读——github.com/medcl/esm —— bulk.go
    esm(AnElasticsearchMigrationTool)—— bulk.gohttps://github.com/medcl/esmrelease:8.7.1通过阅读好的源代码,细致思考,理性分析并借鉴优秀实践经验,提高zuoyang的编程水平,所谓"他山之石,可以攻玉" 该是如此吧。 /*Copyright2016Medcl(mATmedcl.net)Licensed......
  • GitHub搭建个人博客2023
    1.登录github2.上传一个index.html的文件3.点击settings-->然后点击pages3.选择分支->点击save ......
  • Linux源码包编译安装
    1.获取安装包地址并下载下载源代码安装包文件,以APACHE服务为例,我们需要进入https://httpd.apache.org/找到httpd的软件包。如果想要在虚拟机中下载,则复制链接地址,然后使用wget链接地址下载2.解压安装包使用tarxvf压缩包名字将压缩包解压,解压后会在同级目录下出现一个以......
  • linux源码包编译安装
    用rpmbuild命令制作成二进制格式的rpm 包,而后再安装;   源代码组织格式:      多文件:文件中的代码段之间,很有可能存在跨文件依赖关系;   各个语言的项目管理器:      C,C++:make;      Java:maven;   make执行过程:      make针对每一个源代......
  • Github工具库
    0x01漏洞练习平台WebGoat漏洞练习平台:https://github.com/WebGoat/WebGoatwebgoat-legacy漏洞练习平台:https://github.com/WebGoat/WebGoat-Legacyzvuldirll漏洞练习平台:https://github.com/710leo/ZVulDrillvulapps漏洞练习平台:https://github.com/Medicean/VulApps......
  • Go源码阅读——github.com/medcl/esm —— buffer.go
    esm(AnElasticsearchMigrationTool)—— buffer.gohttps://github.com/medcl/esmrelease:8.7.1通过阅读好的源代码,细致思考,理性分析并借鉴优秀实践经验,提高zuoyang的编程水平,所谓"他山之石,可以攻玉" 该是如此吧。 /*CopyrightMedcl(mATmedcl.net)Licensedun......
  • linux环境部署--MySQL5.7二进制源码文件安装
    linux环境部署--MySQL5.7二进制源码文件安装mysql-5.7.11-Linux-glibc2.5-x86_64.tar提取码:1999MySQL5.7卸载1、将安装包解压到/usr/local/sudotarzxvfmysql-5.7.11-Linux-glibc2.5-x86_64.tar.gz-C/usr/local/2、解压后为了方便后面操作可把解压后文件名修改为mysql......
  • 记录github ssh 下载代码失败解决过程
    windows机器下载airflow代码失败:[email protected]:apache/airflow.gitCloninginto'airflow'...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WARNING:REMOTEHOSTIDENTIFICATIONHASCHANGED!@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@......