greptimedb_ingester/lib.rs
1// Copyright 2023 Greptime Team
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15#![doc = include_str!("../README.md")]
16
17pub mod api;
18pub mod bulk;
19pub mod channel_manager;
20pub mod client;
21pub mod database;
22mod error;
23pub mod flight;
24pub mod helpers;
25pub mod load_balance;
26pub mod table;
27
28pub use self::channel_manager::{ChannelConfig, ChannelManager, ClientTlsOption, GrpcCompression};
29pub use self::error::{Error, Result};
30
31// Re-export bulk module components for easier access
32pub use self::bulk::{
33 BulkInserter, BulkStreamWriter, BulkWriteOptions, ColumnType, CompressionType, RowBuilder, Rows,
34};
35
36// Re-export arrow types for easier access
37pub use arrow_array;
38pub use arrow_schema;
39
40// Re-export table module components for easier access
41pub use self::table::{Column, DataTypeExtension, Row, TableSchema, TableSchemaBuilder, Value};
42
43// Re-export API types for direct access
44pub use self::api::v1::{ColumnDataType, SemanticType};
45
46pub const DEFAULT_SCHEMA_NAME: &str = "public";