{"id":15069065,"url":"https://github.com/mincong-h/learning-elasticsearch","last_synced_at":"2025-04-10T16:51:52.829Z","repository":{"id":37984224,"uuid":"223585062","full_name":"mincong-h/learning-elasticsearch","owner":"mincong-h","description":"Elasticsearch Demos","archived":false,"fork":false,"pushed_at":"2023-03-06T04:57:13.000Z","size":257,"stargazers_count":22,"open_issues_count":17,"forks_count":8,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T14:44:28.677Z","etag":null,"topics":["demo","demos","docker","elasticsearch","elasticsearch7","java","java-11","learning","learning-by-doing","maven","testing"],"latest_commit_sha":null,"homepage":"https://mincong.io/en/categories/elasticsearch/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mincong-h.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-11-23T12:28:45.000Z","updated_at":"2024-03-26T23:00:57.000Z","dependencies_parsed_at":"2024-10-13T03:41:05.495Z","dependency_job_id":"9def6668-58f2-400b-b415-c4477275955d","html_url":"https://github.com/mincong-h/learning-elasticsearch","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mincong-h%2Flearning-elasticsearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mincong-h%2Flearning-elasticsearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mincong-h%2Flearning-elasticsearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mincong-h%2Flearning-elasticsearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mincong-h","download_url":"https://codeload.github.com/mincong-h/learning-elasticsearch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248256093,"owners_count":21073461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["demo","demos","docker","elasticsearch","elasticsearch7","java","java-11","learning","learning-by-doing","maven","testing"],"created_at":"2024-09-25T01:40:17.754Z","updated_at":"2025-04-10T16:51:52.805Z","avatar_url":"https://github.com/mincong-h.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Learning Elasticsearch [![Build Status][actions-img]][actions]\n\nElasticsearch is a distributed, RESTful search and analytics engine capable of\naddressing a growing number of use cases. As the heart of the Elastic Stack,\nit centrally stores your data so you can discover the expected and uncover the\nunexpected.\n\n## Quickstart\n\nThe fastest way to test any basic Elasticsearch feature is to start a Docker image with the desired Elasticsearch version:\n\n\u003c!-- MANAGED_BLOCK_RUN_ES_START --\u003e\n\n```sh\ndocker run \\\n  --rm \\\n  -e discovery.type=single-node \\\n  -p 9200:9200 \\\n  docker.elastic.co/elasticsearch/elasticsearch:7.12.0\n```\n\n\u003c!-- MANAGED_BLOCK_RUN_ES_END --\u003e\n\n## Articles\n\nArticles wrote using code of this repository and other related repositories:\n\n- [Testing Elasticsearch With Docker And Java High Level REST Client](https://mincong.io/2020/04/05/testing-elasticsearch-with-docker-and-java-client/)\n- [Testing Elasticsearch with ESSingleNodeTestCase](https://mincong.io/2019/11/24/essinglenodetestcase/)\n- [Elasticsearch: cat nodes API](https://mincong.io/2020/03/07/elasticsearch-cat-nodes-api/)\n- [Elasticsearch: Scroll API in Java](https://mincong.io/2020/01/19/elasticsearch-scroll-api/)\n- [Indexing New Data in Elasticsearch](https://mincong.io/2019/12/02/indexing-new-data-in-elasticsearch/)\n- [Common Index Exceptions](https://mincong.io/2020/09/13/es-index-exceptions/)\n- [Wrap Elasticsearch Response Into CompletableFuture](https://mincong.io/2020/07/26/es-client-completablefuture/)\n- [Discovery in Elasticsearch](https://mincong.io/2020/08/22/discovery-in-elasticsearch/)\n- [GC in Elasticsearch](https://mincong.io/2020/08/30/gc-in-elasticsearch/)\n- [18 Allocation Deciders in Elasticsearch](https://mincong.io/2020/09/27/shard-allocation/)\n- [Using Java Time in Different Frameworks](https://mincong.io/2020/10/25/java-time/)\n- [DVF: Indexing New Documents](https://mincong.io/2020/12/16/dvf-indexing/)\n- [DVF: Indexing Optimization](https://mincong.io/2020/12/17/dvf-indexing-optimization/)\n- [DVF: Storage Optimization](https://mincong.io/2020/12/25/dvf-storage-optimization/)\n- [DVF: Snapshot And Restore](https://mincong.io/2021/01/10/dvf-snapshot-and-restore/)\n- [DVF: Aggregations](https://mincong.io/2021/04/12/dvf-aggregations/)\n- [DVF: Real Estate Analysis For Île-de-France in 2020](https://mincong.io/2021/04/16/dvf-real-estate-analysis-idf-2020/)\n- [Disk Watermarks In Elasticsearch](https://mincong.io/2021/04/10/disk-watermarks-in-elasticsearch/)\n- [Elasticsearch: Generate Configuration With Python Jinja 2](https://mincong.io/2021/04/11/elasticsearch-generate-configuration-with-python-jinja2/)\n- [Fix Corrupted Index in Elasticsearch](https://mincong.io/en/elasticsearch-corrupted-index/) / [修复 Elasticsearch 中损坏的索引](https://mincong.io/cn/elasticsearch-corrupted-index/)\n- [【翻译】Netflix 资产管理平台 (AMP) 中的 Elasticsearch 索引策略](https://mincong.io/cn/elasticsearch-indexing-strategy-in-asset-management-platform-amp/)\n- [How to prevent data loss in Elasticsearch?](https://mincong.io/en/prevent-data-loss-in-elasticsearch/) / [如何防止 Elasticsearch 中的数据丢失？](https://mincong.io/cn/prevent-data-loss-in-elasticsearch/)\n- [Elasticsearch Settings](https://mincong.io/en/elasticsearch-settings/) / [一文了解 Elasticsearch 设置](https://mincong.io/cn/elasticsearch-settings/)\n- [Internal Structure Of Snapshot Repository](https://mincong.io/en/elasticsearch-snapshot-repository-structure/) / [Elasticsearch 快照仓库的内部结构](https://mincong.io/cn/elasticsearch-snapshot-repository-structure/)\n- [Elasticsearch Snapshot Plugins](https://mincong.io/en/elasticsearch-snapshot-plugins/) / [Elasticsearch 的快照插件](https://mincong.io/cn/elasticsearch-snapshot-plugins/)\n- [Slow Query Logs In Elasticsearch](https://mincong.io/en/slow-logs-in-elasticsearch/)\n- [The Decision System For Shard Allocation in Elasticsearch](https://mincong.io/en/shard-allocation-deciders/)\n- [Internal Structure Of Elasticsearch Java High-Level REST Client](https://mincong.io/en/elasticsearch-hlrc/)\n\n## Resources\n\nNot related to this repository, but interesting resources to read about Elasticsearch.\n\nElasticsearch documentation:\n\n- [Java High Level REST Client](https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/java-rest-high.html)\n- [Java Testing Framework](https://www.elastic.co/guide/en/elasticsearch/reference/current/testing-framework.html)\n- [REST APIs](https://www.elastic.co/guide/en/elasticsearch/reference/current/rest-apis.html)\n\nCertifications:\n\n- [Elastic Certified Engineer](https://www.elastic.co/training/elastic-certified-engineer-exam)\n- ^ Article [ElasticSearch Engineer Exam v7.13 (2021)](https://kapuablog.wordpress.com/2021/10/15/elasticsearch-engineer-exam-v7-13-2021/) and Github project [Elastic Certified Engineer exam notes](https://github.com/mohclips/Elastic-Certified-Engineer-Exam-Notes) by [Nicholas Cross](https://github.com/mohclips)\n\nBooks:\n\n- Radu Gheorghe, Matthew Lee hinman, Roy Russo, \"Elasticsearch in Action\", Manning, 2016.\n- Clinton Gormley and Zachary Tong, \"Elasticsearch: The Definitive Guide\", O'Reilly Media, 2014 - 2015.\u003cbr\u003e\n  \u003chttps://www.elastic.co/guide/en/elasticsearch/guide/2.x/index.html\u003e\n\nGitHub:\n\n- Awesome Search\u003cbr\u003e\n  https://github.com/frutik/awesome-search\n- 互联网 Java 工程师进阶知识完全扫盲 / Elasticsearch\u003cbr\u003e\n  https://github.com/doocs/advanced-java\n\nBlogs:\n\n- Code 972, A blog about BigData, Cloud and Search technologies by Itamar Syn-Hershko \u003chttps://code972.com/blog\u003e\n- 铭毅天下, Elasticsearch Expert, \u003chttps://elastic.blog.csdn.net/\u003e\n- 少强, Alicloud, \u003chttps://www.zhihu.com/people/8080/posts\u003e\n- 木洛, Alicloud, \u003chttps://www.zhihu.com/people/zhougong-cap/posts\u003e\n\nArticles:\n\n- Michael McCandless, \"Visualizing Lucene's segment merges\", 2011.\u003cbr\u003e\n  \u003chttp://blog.mikemccandless.com/2011/02/visualizing-lucenes-segment-merges.html\u003e\n- Nico Tonozzi and Dumitru Daniliuc, \"Reducing search indexing latency to one second\", _Twitter_, 2020.\u003cbr\u003e\n  \u003chttps://blog.twitter.com/engineering/en_us/topics/infrastructure/2020/reducing-search-indexing-latency-to-one-second.html\u003e\n- Prabin Meitei M, \"Garbage Collection in Elasticsearch and the G1GC\", _Medium_, 2018.\u003cbr\u003e\n  \u003chttps://medium.com/naukri-engineering/garbage-collection-in-elasticsearch-and-the-g1gc-16b79a447181\u003e\n\nForums:\n\n- Elastic 中文社区 https://elasticsearch.cn/\n\n## Development\n\nUpgrade Elasticsearch version, e.g 7.8.0 -\u003e 7.10.0:\n\n```sh\n\u003e scripts/upgrade-es-version.sh 7.8.0 7.10.0\n✅ pom.xml\n✅ cluster/src/test/resources/docker-compose.yml\n✅ README.md\nFinished.\n```\n\n[actions]:     https://github.com/mincong-h/learning-elasticsearch/actions\n[actions-img]: https://github.com/mincong-h/learning-elasticsearch/workflows/Actions/badge.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmincong-h%2Flearning-elasticsearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmincong-h%2Flearning-elasticsearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmincong-h%2Flearning-elasticsearch/lists"}