elasticsearch river 参数文档

JDBC River parameters

Jörg Prante edited this page on 23 Jan 2014 · 3 revisions

Pages 15

Clone this wiki locally

Clone in Desktop

Overview of the default parameter settings:

{
    "jdbc" :{
        "strategy" : "simple",
        "url" : null,
        "user" : null,
        "password" : null,
        "sql" : null,
        "schedule" : null,
        "poolsize" : 1,
        "rounding" : null,
        "scale" : 2,
        "autocommit" : false,
        "fetchsize" : 10, /* Integer.MIN for MySQL */
        "max_rows" : 0,
        "max_retries" : 3,
        "max_retries_wait" : "30s",
        "locale" : Locale.getDefault().toLanguageTag(),
        "index" : "jdbc",
        "type" : "jdbc",
        "bulk_size" : 100,
        "max_bulk_requests" : 30,
        "bulk_flush_interval" : "5s",
        "index_settings" : null,
        "type_mapping" : null
    }
}

strategy -the strategy of the JDBC river, currently implemented: "simple", "column"

url - the JDBC URL

user - the JDBC database user

password - the JDBC database password

sql - SQL statement(s), either a string or a list. If a statement ends with .sql, the statement is looked up in the file system. Example for a list of SQL statements:

"sql" : [
    {
        "statement" : "select ... from ... where a = ?, b = ?, c = ?",
        "parameter" : [ "value for a", "value for b", "value for c" ],
        "callable" : false
    },
    {
        "statement" : ...
    }
]

parameter - bind parameters for the SQL statement (in order)

callable - boolean flag, if true, the SQL statement is interpreted as a JDBC CallableStatement (default: false)

schedule - a cron expression for scheduled execution. Syntax is equivalent to the Quartz cron expression format and is documented at http://jprante.github.io/elasticsearch-river-jdbc/apidocs/org/xbib/elasticsearch/river/jdbc/support/cron/CronExpression.html

poolsize - the pool size of the thread pool that executes the scheduled SQL statements

rounding - rounding mode for numeric values: "ceiling", "down", "floor", "halfdown", "halfeven", "halfup", "unnecessary", "up"

scale - the precision of the numeric values

autocommit - true if each statement should be automatically executed

fetchsize - the fetchsize for large result sets, most drivers implement fetchsize to control the amount of rows in the buffer while iterating through the result set

max_rows - limit the number of rows fetches by a statement, the rest of the rows is ignored

max_retries - the number of retries to (re)connect to a database

max_retries_wait - the time that should be waited between retries

locale - the default locale (used for parsing numerical values, floating point character)

index - the Elasticsearch index used for indexing the data from JDBC

type - the Elasticsearch type of the index used for indexing the data from JDBC

bulk_size - the length of each bulk index request submitted

max_bulk_requests - the maximum number of concurrent bulk requests

bulk_flush_interval - the time period the bulk processor is flushing outstanding documents

index_settings - optional settings for the Elasticsearch index

type_mapping - optional mapping for the Elasticsearch index type

时间: 2024-12-26 09:00:23

elasticsearch river 参数文档的相关文章

增删改查 elasticsearch中的文档API 的使用

文档为何物?一个对象 就相当于mysql的一个record记录 参考: http://www.learnes.net/data/README.html curl 192.168.100.10:9200?preety curl 192.168.100.10:9200/_count?pretty shell 中的curl的用法 -X 指定请求方法默认是  -XGET -i 返回数据的时候,也一并返回请求结果 -d 发送的数据 这个返回值意味着我们的索引请求已经被成功创建,其中还包含了_index,

ElasticSearch中实现文档操作后立即被搜索到

ElasticSearch一般称为近实时的大数据处理引擎,为什么是近实时呢?原因是当我们提交索引数据时,实际上只是写到了Buffer里面,并不是立即可搜索的,最多需要等1秒才可搜索(index.refresh_interval由这个参数控制,可以通过动态API自定义设置,或在建索引时在settings里面设置),还有一点,当存在副本时,只保证主分片写入成功写入请求就会返回,此时搜索请求如果分配到了副本上,有可能是搜索不到的. 那怎么做到实时搜索呢,在Java的UpdateRequest.Inde

elasticsearch插入索引文档 对数字字符串的处理

对于字符串在搜索匹配的时候,字符串是数字的话需要匹配的是精准匹配,如果是部分匹配字符串的话,需要进行处理,把数字型字符串作为一个字符中的数组表示插入之后显示如下: 如果插入之后显示如画线部分的话,则表示精准匹配 在用clien的java api插入的时候: String json=null;            if (req.getTagId() != null) {            String[] test = req.getTagId().split(",");    

elasticsearch更新doc文档

在elasticsearch-head中: http://localhost:9200/my_index/products/2/ _update { "script" : { "inline": "ctx._source.name = 'xxx'" } } 原文地址:https://www.cnblogs.com/chenmz1995/p/10534545.html

elasticsearch 路由文档到分片

路由文档到分片 当你索引一个文档,它被存储在单独一个主分片上.Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 进程不能是随机的,因为我们将来要检索文档.事实上,它根据一个简单的算法决定: shard = hash(routing) % number_of_primary_shards routing值是一个任意字符串,它默认是_id但也可以自定义.这个routing字符串通过哈希函数生成一个数字,然后除以主切片的数量

Elasticsearch分布式文档存储(四)

1.将文档路由到分片 索引文档时,它存储在单个主分片上. Elasticsearch如何知道文档属于哪个分片?当我们创建一个新文档时,它是如何知道它是否应该将该文档存储在分片1或分片2上? 该过程不能是随机的,因为我们将来可能需要检索文档.事实上,它由一个简单的公式决定: shard = hash(routing)%number_of_primary_shards 该routing值是一个任意字符串,默认为文档 _id,但也可以设置为自定义值. 此routing字符串通过散列函数传递以生成一个数

ElasticSearch 面向文档性

在应用程序中对象很少只是一个简单的键和值的列表.通常,它们拥有更复杂的数据结构,可能包括日期.地理信息.其他对象或者数组等. 也许有一天你想把这些对象存储在数据库中.使用关系型数据库的行和列存储,这相当于是把一个表现力丰富的对象挤压到一个非常大的电子表格中:你必须将这个对象扁平化来适应表结构--通常一个字段>对应一列--而且又不得不在每次查询时重新构造对象. Elasticsearch 是 面向文档 的,意味着它存储整个对象或 文档_.Elasticsearch 不仅存储文档,而且 _索引每个文

007-elasticsearch【一】概述、Elasticsearch 访问方式、Elasticsearch 面向文档、常用概念

一.概述 Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上. Elasticsearch 也是使用 Java 编写的,它的内部使用 Lucene 做索引与搜索,但是它的目标是使全文检索变得简单, 通过隐藏 Lucene 的复杂性,取而代之的提供一套简单一致的 RESTful API. 然而,Elasticsearch 不仅仅是 Lucene,并且也不仅仅只是一个全文搜索引擎. 它可以被下面这样准确的形容: 一个分布式的实时文档存储

REST API (更新删除文档)

Elasticsearch的更新文档API准许通过脚本操作来更新文档.更新操作从索引中获取文档,执行脚本,然后获得返回结果.它使用版本号来控制文档获取或者重建索引. 我们新建一个文档: 请求:PUT http://localhost:9200/test/type1/1?pretty 参数: { "counter" : 1, "tags" : ["red"] } 脚本开启功能 在最新版本的Elasticsearch中,基于安全考虑(如果用不到,请保