来自C#客户端的Apache Arrow飞行SQL



我正在尝试开发一个c#客户端代码,以使用基本身份验证使用Apache Arrow Flight查询数据,但到目前为止还没有成功。

如果有人能分享一个工作样本,我将不胜感激。

谢谢Manoj George

这里有示例代码:

https://github.com/apache/arrow/blob/master/csharp/examples/FlightClientExample/Program.cs

但是,要在Dremio中实现这一点,您需要添加身份验证。以下是如何使用"基本认证"的示例;HTTP";(而不是https(。航班在32010端口监听。在这个例子中,我的用户名是"mydremiouser",密码是"mydremiopassword"。

// ...
string host = args.Length > 0 ? args[0] : "localhost";
string port = args.Length > 1 ? args[1] : "32010";
string encoded = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes("mydremiouser" + ":" + "mydremiopassword"));

var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Add("Authorization", "Basic " + encoded);
var address = $"http://{host}:{port}";
var channel = GrpcChannel.ForAddress(address, new GrpcChannelOptions
{
HttpClient = httpClient
});
FlightClient client = new FlightClient(channel);
// ...

相关内容

  • 没有找到相关文章

最新更新