You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Converts the main README file to asciidoc.
Also includes the following changes:
* Mentioning Slack instead of IRC
* Removed mentioning of native java API, HTTP should be used
* Removed java as a installed requirement
Elasticsearch is a distributed RESTful search engine built for the cloud. Features include:
8
8
@@ -15,39 +15,34 @@ Elasticsearch is a distributed RESTful search engine built for the cloud. Featur
15
15
** Index level configuration (number of shards, index storage, ...).
16
16
* Various set of APIs
17
17
** HTTP RESTful API
18
-
** Native Java API.
19
18
** All APIs perform automatic node operation rerouting.
20
19
* Document oriented
21
20
** No need for upfront schema definition.
22
21
** Schema can be defined for customization of the indexing process.
23
22
* Reliable, Asynchronous Write Behind for long term persistency.
24
23
* (Near) Real Time Search.
25
-
* Built on top of Lucene
24
+
* Built on top of Apache Lucene
26
25
** Each shard is a fully functional Lucene index
27
26
** All the power of Lucene easily exposed through simple configuration / plugins.
28
27
* Per operation consistency
29
28
** Single document level operations are atomic, consistent, isolated and durable.
30
29
31
-
h2. Getting Started
30
+
== Getting Started
32
31
33
32
First of all, DON'T PANIC. It will take 5 minutes to get the gist of what Elasticsearch is all about.
34
33
35
-
h3. Requirements
34
+
=== Installation
36
35
37
-
You need to have a recent version of Java installed. See the "Setup":http://www.elastic.co/guide/en/elasticsearch/reference/current/setup.html#jvm-version page for more information.
38
-
39
-
h3. Installation
40
-
41
-
* "Download":https://www.elastic.co/downloads/elasticsearch and unzip the Elasticsearch official distribution.
42
-
* Run @bin/elasticsearch@ on unix, or @bin\elasticsearch.bat@ on windows.
43
-
* Run @curl -X GET http://localhost:9200/@.
36
+
* https://www.elastic.co/downloads/elasticsearch[Download] and unpack the Elasticsearch official distribution.
37
+
* Run `bin/elasticsearch` on Linux or macOS. Run `bin\elasticsearch.bat` on Windows.
38
+
* Run `curl -X GET http://localhost:9200/`.
44
39
* Start more servers ...
45
40
46
-
h3. Indexing
41
+
=== Indexing
47
42
48
-
Let's try and index some twitter like information. First, let's index some tweets (the @twitter@ index will be created automatically):
43
+
Let's try and index some twitter like information. First, let's index some tweets (the `twitter` index will be created automatically):
There are many more options to perform search, after all, it's a search product no? All the familiar Lucene queries are available through the JSON query language, or through the query parser.
126
121
127
-
h3. Multi Tenant and Indices
122
+
=== Multi Tenant and Indices
128
123
129
124
Man, that twitter index might get big (in this case, index size == valuation). Let's see if we can structure our twitter system a bit differently in order to support such large amounts of data.
130
125
131
-
Elasticsearch supports multiple indices. In the previous example we used an index called @twitter@ that stored tweets for every user.
126
+
Elasticsearch supports multiple indices. In the previous example we used an index called `twitter` that stored tweets for every user.
132
127
133
128
Another way to define our simple twitter system is to have a different index per user (note, though that each index has an overhead). Here is the indexing curl's in this case:
The above will index information into the @kimchy@ index. Each user will get their own special index.
146
+
The above will index information into the `kimchy` index. Each user will get their own special index.
152
147
153
148
Complete control on the index level is allowed. As an example, in the above case, we might want to change from the default 1 shard with 1 replica per index, to 2 shards with 1 replica per index (because this user tweets a lot). Here is how this can be done (the configuration can be in yaml as well):
{One liner teaser}: And the cool part about that? You can easily search on multiple twitter users (indices), with different boost levels per user (index), making social search so much simpler (results from my friends rank higher than results from friends of my friends).
183
+
And the cool part about that? You can easily search on multiple twitter users (indices), with different boost levels per user (index), making social search so much simpler (results from my friends rank higher than results from friends of my friends).
189
184
190
-
h3. Distributed, Highly Available
185
+
=== Distributed, Highly Available
191
186
192
187
Let's face it, things will fail....
193
188
194
189
Elasticsearch is a highly available and distributed search engine. Each index is broken down into shards, and each shard can have one or more replicas. By default, an index is created with 1 shard and 1 replica per shard (1/1). There are many topologies that can be used, including 1/10 (improve search performance), or 20/1 (improve indexing performance, with search executed in a map reduce fashion across shards).
195
190
196
191
In order to play with the distributed nature of Elasticsearch, simply bring more nodes up and shut down nodes. The system will continue to serve requests (make sure you use the correct http port) with the latest data indexed.
197
192
198
-
h3. Where to go from here?
193
+
=== Where to go from here?
199
194
200
-
We have just covered a very small portion of what Elasticsearch is all about. For more information, please refer to the "elastic.co":http://www.elastic.co/products/elasticsearch website. General questions can be asked on the "Elastic Discourse forum":https://discuss.elastic.coor on IRC on Freenode at "#elasticsearch":https://webchat.freenode.net/#elasticsearch. The Elasticsearch GitHub repository is reserved for bug reports and feature requests only.
195
+
We have just covered a very small portion of what Elasticsearch is all about. For more information, please refer to the http://www.elastic.co/products/elasticsearch[elastic.co] website. General questions can be asked on the https://discuss.elastic.co[Elastic Forum] or https://ela.st/slack[on Slack]. The Elasticsearch GitHub repository is reserved for bug reports and feature requests only.
201
196
202
-
h3. Building from Source
197
+
=== Building from Source
203
198
204
-
Elasticsearch uses "Gradle":https://gradle.org for its build system.
199
+
Elasticsearch uses https://gradle.org[Gradle] for its build system.
205
200
206
-
In order to create a distribution, simply run the @./gradlew assemble@ command in the cloned directory.
201
+
In order to create a distribution, simply run the `./gradlew assemble` command in the cloned directory.
207
202
208
-
The distribution for each project will be created under the @build/distributions@ directory in that project.
203
+
The distribution for each project will be created under the `build/distributions` directory in that project.
209
204
210
-
See the "TESTING":TESTING.asciidoc file for more information about running the Elasticsearch test suite.
205
+
See the xref:TESTING.asciidoc[TESTING] for more information about running the Elasticsearch test suite.
211
206
212
-
h3. Upgrading from older Elasticsearch versions
207
+
=== Upgrading from older Elasticsearch versions
213
208
214
-
In order to ensure a smooth upgrade process from earlier versions of Elasticsearch, please see our "upgrade documentation":https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-upgrade.html for more details on the upgrade process.
209
+
In order to ensure a smooth upgrade process from earlier versions of Elasticsearch, please see our https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-upgrade.html[upgrade documentation] for more details on the upgrade process.
0 commit comments