{"id":13565250,"url":"https://github.com/JetBrains/xodus","last_synced_at":"2025-04-03T22:30:53.024Z","repository":{"id":16518058,"uuid":"19271154","full_name":"JetBrains/xodus","owner":"JetBrains","description":"Transactional schema-less embedded database used by JetBrains YouTrack and JetBrains Hub.","archived":false,"fork":false,"pushed_at":"2025-03-13T10:56:18.000Z","size":36838,"stargazers_count":1217,"open_issues_count":0,"forks_count":115,"subscribers_count":62,"default_branch":"master","last_synced_at":"2025-04-03T10:52:05.924Z","etag":null,"topics":["database","db","embedded-database","entity-store","java","key-value","kotlin","log-structured","nosql","schema-less","snapshot-isolation","transactional","xodus","youtrack"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JetBrains.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2014-04-29T09:36:04.000Z","updated_at":"2025-03-31T12:38:25.000Z","dependencies_parsed_at":"2023-10-04T17:58:16.895Z","dependency_job_id":"5462a8ff-453e-49de-8a73-ebaf996948b7","html_url":"https://github.com/JetBrains/xodus","commit_stats":{"total_commits":3075,"total_committers":36,"mean_commits":85.41666666666667,"dds":0.3401626016260163,"last_synced_commit":"7b728d185aa648da1414f6ceb2c876c4399e6311"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JetBrains%2Fxodus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JetBrains%2Fxodus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JetBrains%2Fxodus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JetBrains%2Fxodus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JetBrains","download_url":"https://codeload.github.com/JetBrains/xodus/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247089925,"owners_count":20881887,"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":["database","db","embedded-database","entity-store","java","key-value","kotlin","log-structured","nosql","schema-less","snapshot-isolation","transactional","xodus","youtrack"],"created_at":"2024-08-01T13:01:43.191Z","updated_at":"2025-04-03T22:30:53.001Z","avatar_url":"https://github.com/JetBrains.png","language":"Java","funding_links":[],"categories":["项目","Java","Projects","数据库"],"sub_categories":["数据库","Database"],"readme":"# \u003ca href=\"https://github.com/JetBrains/xodus/wiki\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/wiki/jetbrains/xodus/xodus.png\" width=160\u003e\u003c/a\u003e\n\n[![official JetBrains project](https://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)\n[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.jetbrains.xodus/xodus-openAPI/badge.svg)](https://search.maven.org/#search%7Cga%7C1%7Corg.jetbrains.xodus%20-dnq%20-time)\n[![Last Release](https://img.shields.io/github/release-date/jetbrains/xodus.svg?logo=github)](https://github.com/jetbrains/xodus/releases/latest)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)\n![Pure Java + Kotlin](https://img.shields.io/badge/100%25-java%2bkotlin-orange.svg)\n[![Stack Overflow](https://img.shields.io/:stack%20overflow-xodus-brightgreen.svg)](https://stackoverflow.com/questions/tagged/xodus)\n\nJetBrains Xodus is a transactional schema-less embedded database that is written in Java and [Kotlin](https://kotlinlang.org).\nIt was initially developed for [JetBrains YouTrack](https://jetbrains.com/youtrack), an issue tracking and project\nmanagement tool. Xodus is also used in [JetBrains Hub](https://jetbrains.com/hub), the user management platform\nfor JetBrains' team tools, and in some internal JetBrains projects.\n\n- Xodus is transactional and fully ACID-compliant.\n- Xodus is highly concurrent. Reads are completely non-blocking due to [MVCC](https://en.wikipedia.org/wiki/Multiversion_concurrency_control) and\ntrue [snapshot isolation](https://en.wikipedia.org/wiki/Snapshot_isolation).\n- Xodus is schema-less and agile. It does not require schema migrations or refactorings.\n- Xodus is embedded. It does not require installation or administration.\n- Xodus is written in pure Java and [Kotlin](https://kotlinlang.org).\n- Xodus is free and licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0.html).\n\n## Hello Worlds!\n\nTo start using Xodus, define dependencies:\n```xml\n\u003c!-- in Maven project --\u003e\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.jetbrains.xodus\u003c/groupId\u003e\n    \u003cartifactId\u003exodus-openAPI\u003c/artifactId\u003e\n    \u003cversion\u003e2.0.1\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n```kotlin\n// in Gradle project\ndependencies {\n    implementation(\"org.jetbrains.xodus:xodus-openAPI:2.0.1\")\n}\n```\n\nRead more about [managing dependencies](https://github.com/JetBrains/xodus/wiki/Managing-Dependencies).\n\nThere are two different ways to deal with data, which results in two different API layers: [Environments](https://github.com/JetBrains/xodus/wiki/Environments) and [Entity Stores](https://github.com/JetBrains/xodus/wiki/Entity-Stores).\n \n### Environments\n\nAdd dependency on `org.jetbrains.xodus:xodus-environment:2.0.1`.\n\n```java\ntry (Environment env = Environments.newInstance(\"/home/me/.myAppData\")) {\n    env.executeInTransaction(txn -\u003e {\n        final Store store = env.openStore(\"Messages\", StoreConfig.WITHOUT_DUPLICATES, txn);\n        store.put(txn, StringBinding.stringToEntry(\"Hello\"), StringBinding.stringToEntry(\"World!\"));\n    });\n}\n```\n### Entity Stores\n\nAdd dependency on `org.jetbrains.xodus:xodus-entity-store:2.0.1`, `org.jetbrains.xodus:xodus-environment:2.0.1` and `org.jetbrains.xodus:xodus-vfs:2.0.1`.\n\n```java\ntry (PersistentEntityStore entityStore = PersistentEntityStores.newInstance(\"/home/me/.myAppData\")) {\n    entityStore.executeInTransaction(txn -\u003e {\n        final Entity message = txn.newEntity(\"Message\");\n        message.setProperty(\"hello\", \"World!\");\n    });\n}\n```\n\n## Building from Source\n[Gradle](https://www.gradle.org) is used to build, test, and publish. JDK 1.8 or higher is required. To build the project, run:\n\n    ./gradlew build\n\nTo assemble JARs and skip running tests, run:\n\n    ./gradlew assemble\n\n\n## Find out More\n- [Xodus wiki](https://github.com/JetBrains/xodus/wiki)\n- [Report an issue](https://youtrack.jetbrains.com/issues/XD)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJetBrains%2Fxodus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJetBrains%2Fxodus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJetBrains%2Fxodus/lists"}