{"id":29571862,"url":"https://github.com/oceanbase/obkv-table-client-java","last_synced_at":"2026-03-03T09:09:11.265Z","repository":{"id":37099015,"uuid":"425679279","full_name":"oceanbase/obkv-table-client-java","owner":"oceanbase","description":"OBKV Table Client is Java Library that can be used to access table data from OceanBase storage layer.","archived":false,"fork":false,"pushed_at":"2026-02-06T06:57:52.000Z","size":3878,"stargazers_count":31,"open_issues_count":30,"forks_count":25,"subscribers_count":7,"default_branch":"master","last_synced_at":"2026-02-06T15:15:35.671Z","etag":null,"topics":["hbase","key-value-database","obkv","oceanbase"],"latest_commit_sha":null,"homepage":"https://en.oceanbase.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oceanbase.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-11-08T02:56:35.000Z","updated_at":"2026-02-06T06:57:59.000Z","dependencies_parsed_at":"2023-12-25T12:49:23.114Z","dependency_job_id":"9ddd7492-8246-4c99-af83-c90c26e08d4c","html_url":"https://github.com/oceanbase/obkv-table-client-java","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/oceanbase/obkv-table-client-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oceanbase%2Fobkv-table-client-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oceanbase%2Fobkv-table-client-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oceanbase%2Fobkv-table-client-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oceanbase%2Fobkv-table-client-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oceanbase","download_url":"https://codeload.github.com/oceanbase/obkv-table-client-java/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oceanbase%2Fobkv-table-client-java/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30038676,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-03T06:58:30.252Z","status":"ssl_error","status_checked_at":"2026-03-03T06:58:15.329Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["hbase","key-value-database","obkv","oceanbase"],"created_at":"2025-07-19T04:36:24.145Z","updated_at":"2026-03-03T09:09:11.259Z","avatar_url":"https://github.com/oceanbase.png","language":"Java","readme":"# OBKV Table Client\nOBKV Table Client is Java Library that can be used to access table data from [OceanBase](https://github.com/oceanbase/oceanbase) storage layer. Its access method is different from JDBC, it skips the SQL parsing layer, so it has significant performance advantage.\n\n## Quick Start\n\nCreate table in the OceanBase database:\n\n``` sql\nCREATE TABLE IF NOT EXISTS `test_varchar_table` (\n    `c1` varchar(20) NOT NULL,\n    `c2` varchar(20) DEFAULT NULL,\n    PRIMARY KEY (`c1`)\n) PARTITION BY KEY(`c1`) PARTITIONS 10;\n```\n\nImport the dependency for your maven project:\n``` xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.oceanbase\u003c/groupId\u003e\n    \u003cartifactId\u003eobkv-table-client\u003c/artifactId\u003e\n    \u003cversion\u003e2.3.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nThe code demo:\n``` java\n    // 1. initail ObTableClient\n    ObTableClient obTableClient = new ObTableClient();\n    obTableClient.setFullUserName(\"full_user_name\");\n    obTableClient.setParamURL(\"param_url\");\n    obTableClient.setPassword(\"password\");\n    obTableClient.setSysUserName(\"sys_user_name\");\n    obTableClient.setSysPassword(\"sys_user_passwd\");\n    obTableClient.init();\n    \n    // set primary key for partition table\n    obTableClient.addRowKeyElement(\"test_varchar_table\", new String[]{\"c1\"});\n    \n    // 2. single execute\n    // return affectedRows\n    obTableClient.insert(\"test_varchar_table\", \"foo\", new String[] { \"c2\" }, new String[] { \"bar\" });\n    // return Map\u003cString, Object\u003e\n    obTableClient.get(\"test_varchar_table\", \"foo\", new String[] { \"c2\" });\n    // return affectedRows\n    obTableClient.delete(\"test_varchar_table\", \"foo\");\n\n    // 3. batch execute\n    TableBatchOps batchOps = obTableClient.batch(\"test_varchar_table\");\n    batchOps.insert(\"foo\", new String[] { \"c2\" }, new String[] { \"bar\" });\n    batchOps.get(\"foo\", new String[] { \"c2\" });\n    batchOps.delete(\"foo\");\n    \n    List\u003cObject\u003e results = batchOps.execute();\n    // the results include 3 item: 1. affectedRows; 2. Map; 3. affectedRows.\n```\n**NOTE:**\n1. param_url is generated by [ConfigServer](https://ask.oceanbase.com/t/topic/35601923).\n2. More example [Demo](https://github.com/oceanbase/obkv-table-client-java/tree/master/example)\n4. full_user_name: the user for accessing obkv, which format is `user_name@tenant_name#cluster_name`\n5. sys_user_name: `root@sys` or `proxy@sys`, which have privileges to access routing system view\n\n## Release Notes\nLatest release notes could be found in [Release notes](https://github.com/oceanbase/obkv-table-client-java/wiki#release-notes)\n\n## Documentation\n\n- English [Coming soon]\n- [Simplified Chinese (简体中文)](https://github.com/oceanbase/obkv-table-client-java/wiki/OBKV-Java%E5%AE%A2%E6%88%B7%E7%AB%AF-%E8%AF%B4%E6%98%8E%E6%96%87%E6%A1%A3)\n\n## Licencing\n\nOBKV Table Client is under [MulanPSL - 2.0](http://license.coscl.org.cn/MulanPSL2) licence. You can freely copy and use the source code. When you modify or distribute the source code, please obey the MulanPSL - 2.0 licence.\n\n## Contributing\n\nContributions are warmly welcomed and greatly appreciated. Here are a few ways you can contribute:\n\n- Raise us an [Issue](https://github.com/oceanbase/obkv-table-client-java/issues)\n- Submit Pull Requests. For details, see [How to contribute](CONTRIBUTING.md).\n\n## Support\n\nIn case you have any problems when using OceanBase Database, welcome reach out for help:\n\n- GitHub Issue [GitHub Issue](https://github.com/oceanbase/obkv-table-client-java/issues)\n- Official forum [Official website](https://open.oceanbase.com)\n- Knowledge base [Coming soon]\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foceanbase%2Fobkv-table-client-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foceanbase%2Fobkv-table-client-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foceanbase%2Fobkv-table-client-java/lists"}