{"id":37044762,"url":"https://github.com/xqrzd/kudu-client-net","last_synced_at":"2026-01-14T05:10:40.810Z","repository":{"id":36842086,"uuid":"150032480","full_name":"xqrzd/kudu-client-net","owner":"xqrzd","description":".NET/C# client for Apache Kudu","archived":false,"fork":false,"pushed_at":"2023-07-27T23:49:33.000Z","size":1959,"stargazers_count":14,"open_issues_count":7,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-11-30T13:07:04.480Z","etag":null,"topics":["apache-kudu","big-data","csharp","dotnet","kudu"],"latest_commit_sha":null,"homepage":"https://kudu.apache.org","language":"C#","has_issues":true,"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/xqrzd.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}},"created_at":"2018-09-23T22:54:14.000Z","updated_at":"2023-05-05T16:57:22.000Z","dependencies_parsed_at":"2023-02-17T02:16:37.127Z","dependency_job_id":null,"html_url":"https://github.com/xqrzd/kudu-client-net","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/xqrzd/kudu-client-net","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xqrzd%2Fkudu-client-net","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xqrzd%2Fkudu-client-net/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xqrzd%2Fkudu-client-net/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xqrzd%2Fkudu-client-net/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xqrzd","download_url":"https://codeload.github.com/xqrzd/kudu-client-net/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xqrzd%2Fkudu-client-net/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28410269,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["apache-kudu","big-data","csharp","dotnet","kudu"],"created_at":"2026-01-14T05:10:40.193Z","updated_at":"2026-01-14T05:10:40.803Z","avatar_url":"https://github.com/xqrzd.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# .NET Client for Apache Kudu\n\n![Apache Kudu](https://d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_345px.png)\n\n## Package\nYou can get the package on Nuget: https://www.nuget.org/packages/Knet.Kudu.Client\n\n## Supported Kudu Versions\nThis library supports Apache Kudu 1.3 and newer. The newest version of this library\nshould always be used, regardless of the Apache Kudu version.\nThis client tries to maintain feature parity with the official C++ and Java clients.\n\n## Quickstart\n\n### Docker\nFollow the [Apache Kudu Quickstart](https://kudu.apache.org/docs/quickstart.html) guide to get Kudu running in Docker.\n\n### Create a Client\n\n```csharp\nKuduClient client = KuduClient.NewBuilder(\"localhost:7051,localhost:7151,localhost:7251\")\n    .Build();\n```\n\n\u003e Note: KuduClient is intended to be a singleton. It is inefficient to create multiple clients.\n\n### Create a Table\n\n```csharp\nvar tableBuilder = new TableBuilder(\"twitter_firehose\")\n    .AddColumn(\"tweet_id\", KuduType.Int64, opt =\u003e opt.Key(true))\n    .AddColumn(\"user_name\", KuduType.String)\n    .AddColumn(\"created_at\", KuduType.UnixtimeMicros)\n    .AddColumn(\"text\", KuduType.String);\n\nawait client.CreateTableAsync(tableBuilder);\n```\n\nSee more table options in the [wiki](https://github.com/xqrzd/kudu-client-net/wiki/Create-Table).\n\n### Open a Table\n\n```csharp\nKuduTable table = await client.OpenTableAsync(\"twitter_firehose\");\n```\n\n\u003e Note: This table can be cached and reused concurrently. It simply stores the table schema.\n\n### Insert Data\n\n```csharp\nvar rows = Enumerable.Range(0, 100).Select(i =\u003e\n{\n    var row = table.NewInsert();\n    row.SetInt64(\"tweet_id\", i);\n    row.SetString(\"user_name\", $\"user_{i}\");\n    row.SetDateTime(\"created_at\", DateTime.UtcNow);\n    row.SetString(\"text\", $\"sample tweet {i}\");\n    return row;\n});\n\nawait client.WriteAsync(rows);\n```\n\n### Query Data\n\n```csharp\nKuduScanner scanner = client.NewScanBuilder(table)\n    .SetProjectedColumns(\"tweet_id\", \"user_name\", \"created_at\")\n    .Build();\n\nawait foreach (ResultSet resultSet in scanner)\n{\n    Console.WriteLine($\"Received {resultSet.Count} rows\");\n\n    foreach (RowResult row in resultSet)\n    {\n        var tweetId = row.GetInt64(\"tweet_id\");\n        var userName = row.GetString(\"user_name\");\n        var createdAtUtc = row.GetDateTime(\"created_at\");\n\n        Console.WriteLine($\"tweet_id: {tweetId}, user_name: {userName}, created_at: {createdAtUtc}\");\n    }\n}\n```\n\nThis client includes a simple object mapper,\n\n```csharp\nrecord Tweet(long TweetId, string Username, DateTime CreatedAt);\n\nvar tweets = await scanner.ScanToListAsync\u003cTweet\u003e();\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxqrzd%2Fkudu-client-net","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxqrzd%2Fkudu-client-net","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxqrzd%2Fkudu-client-net/lists"}