我正在使用 dremio 查询大量数据,它工作得很好。它有 REST API 来获取数据,但唯一的限制是它可以提供 500 条记录作为结果。在java中,Dremio社区提供了jdbc连接字符串,但我们的项目是.net或c#,所以我们需要连接字符串来从dremio获取大量数据。如果 C# 没有连接字符串,那么任何人都可以建议我们如何在 C# 中使用 JDBC 连接字符串。
1 回答
Drill 和 Dremio 具有用于此目的的 ODBC 接口,请参见:
https ://drill.apache.org/docs/configuring-odbc/
https://docs.dremio.com/drivers/dremio-odbc-driver.html
因此,您可以设置您的 C# 项目以使用 ODBC 连接字符串而不是 JDBC: https: //support.office.com/en-us/article/connect-to-an-odbc-source-49b0cf4d-ef78-4ad1-b224 -39091c067953
或以编程方式:static private void InsertRow(string connectionString)
{
string queryString =
"INSERT INTO Customers (CustomerID, CompanyName) Values('NWIND', 'Northwind Traders')";
OdbcCommand command = new OdbcCommand(queryString);
using (OdbcConnection connection = new OdbcConnection(connectionString))
{
command.Connection = connection;
connection.Open();
command.ExecuteNonQuery();
// The connection is automatically closed at
// the end of the Using block.
}
}
其中连接字符串示例:
DRIVER=MapR Drill ODBC Driver;AdvancedProperties={HandshakeTimeout=0;QueryTimeout=0;TimestampTZDisplayTimezone=utc;ExcludedSchemas=sys,INFORMATION_SCHEMA;};Catalog=DRILL;Schema=hivestg;ConnectionType=Direct;Host=192.168.202.147;Port= 31010
DRIVER=MapR Drill ODBC Driver;AdvancedProperties={HandshakeTimeout=0;QueryTimeout=0;TimestampTZDisplayTimezone=utc;ExcludedSchemas=sys, INFORMATION_SCHEMA;};Catalog=DRILL;Schema=;ConnectionType=ZooKeeper;ZKQuorum=192.168.39.43:5181;ZKClusterID =钻头1