#apache-drill #dremio
#apache-drill #dremio
Вопрос:
Я использую dremio для запроса большого объема данных, и он работает очень хорошо. У него есть rest API для извлечения данных, но единственным ограничением является то, что в результате он может выдавать 500 записей. В java сообщество Dremio предоставило строку подключения jdbc, но наш проект находится в .net или c #, поэтому нам нужна строка подключения для извлечения огромного объема данных из dremio. Если строка подключения отсутствует для C #, может кто-нибудь подсказать нам, как мы можем использовать строку подключения JDBC в C #.
Ответ №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.
}
}
где примеры строки подключения:
ДРАЙВЕР = 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
ДРАЙВЕР = 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=drillbits1