icelake
Pure Rust Iceberg Implementation
파일 탐색기
최종 버전 다운로드 (.zip)- ci.yml
- build.sh
- Dockerfile
- pom.xml
- settings.xml
- README.md
- read_iceberg_table.rs
- io.rs
- layer.rs
- mod.rs
- prometheus.rs
- rest.rs
- storage.rs
- mod.rs
- prometheus.rs
- rolling_writer.rs
- data_file_writer.rs
- equality_delete_writer.rs
- mod.rs
- position_delete_writer.rs
- append_only_writer.rs
- equality_delta_writer.rs
- mod.rs
- upsert_writer.rs
- mod.rs
- track_writer.rs
- write.rs
- location_generator.rs
- mod.rs
- scan.rs
- writer_builder.rs
- data_file_writer.rs
- equality_delete_writer.rs
- mod.rs
- position_delete_writer.rs
- sort_writer.rs
- base_file_writer.rs
- mod.rs
- parquet_writer.rs
- track_writer.rs
- dispatcher_writer.rs
- equality_delta_writer.rs
- mod.rs
- partition_writer.rs
- precompute_partition_writer.rs
- prometheus.rs
- builder_helper.rs
- input_wrapper.rs
- location_generator.rs
- mod.rs
- mod.rs
- to_array.rs
- to_primitive.rs
- types.rs
- mod.rs
- to_arrow.rs
- manifest_file.rs
- manifest_list.rs
- mod.rs
- partition_spec.rs
- schema.rs
- snapshot.rs
- sort_order.rs
- table_metadata.rs
- transform.rs
- types.rs
- value.rs
- bucket.rs
- identity.rs
- mod.rs
- temporal.rs
- truncate.rs
- void.rs
- in_memory.rs
- mod.rs
- partition_splitter.rs
- to_avro.rs
- config.rs
- error.rs
- lib.rs
- metrics.rs
- table.rs
- transaction.rs
- docker.rs
- mod.rs
- poetry.rs
- test_generator.rs
- delta_test.rs
- delta_test_v2.rs
- insert_compact_test.rs
- insert_tests.rs
- insert_tests_v2.rs
- precompute_partition_test.rs
- rest_catalog_tests.rs
- scan_test.rs
- Cargo.toml
- README.md
- 1.csv
- 2.csv
- 3.csv
- docker-compose.yaml
- docker-compose.yaml
- mc_init.sh
- minio_server.sh
- .gitignore
- init-table.sql
- insert-table.sql
- inspect-table.sql
- query-table.sql
- run-sql-file.sh
- spark-connect-server.sh
- spark-connect-server2.sh
- 00000-0-1971bd95-8f45-4b60-a703-207eed9b48b2-00001.parquet
- 00000-11-8a16a1fe-46b8-4571-99df-46f7a7d457bf-00001.parquet
- 00000-3-e54bbc88-2087-49ce-abf4-0c4be3636b97-00001.parquet
- 00000-7-45268d71-54eb-476c-b42c-942d880c04a1-00001.parquet
- 00001-1-fb24490d-a162-42a8-9b0e-06b17ee00d87-00001.parquet
- 00001-12-8aef3353-a097-457a-a70b-1f99018548ca-00001.parquet
- 00001-4-eb1a8e9a-3848-4b91-9361-ace1d137ec89-00001.parquet
- 00001-8-0bd1dd3f-91c6-4f7c-b96c-24cfe217ce73-00001.parquet
- 00002-2-4905bb62-7b5a-4b16-991b-e1dff961ca9d-00001.parquet
- 00002-5-0b2f22de-dc14-471d-a71d-4d1c6d3d47cc-00001.parquet
- 00002-9-d3b554b1-5252-43f1-ab41-28b5a91ba963-00001.parquet
- 00003-10-b0fcc339-e01a-4fc1-8f75-09acf00a9839-00001.parquet
- 00000-74d4bfd7-0dee-46ab-85c5-ef90df8b2c20.metadata.json
- 00001-e40071cb-570f-4f62-a206-072677f67865.metadata.json
- 00002-0e3f3480-280c-49c2-8f18-67061f464330.metadata.json
- 00003-762873ab-ac0f-4c0a-a34c-d033c11790cb.metadata.json
- 00004-624c12b5-ca17-4804-91ae-40f8622b406c.metadata.json
- 00005-032145b7-6a0c-4a53-bc3d-b7b571ccab3b.metadata.json
- 172ea76d-6692-4e39-a239-81b8d467c50f-m0.avro
- 172ea76d-6692-4e39-a239-81b8d467c50f-m1.avro
- 172ea76d-6692-4e39-a239-81b8d467c50f-m2.avro
- b51968b3-8837-4c13-a9ec-74d71bac3565-m0.avro
- ba3e3b20-02d8-47b7-8aba-5432b9aa72b9-m0.avro
- cb85d90a-3e9f-44ae-90da-2391c97d9b9c-m0.avro
- snap-2966623707104393227-1-172ea76d-6692-4e39-a239-81b8d467c50f.avro
- snap-402819370943546960-1-cb85d90a-3e9f-44ae-90da-2391c97d9b9c.avro
- snap-6788296308394418127-1-ba3e3b20-02d8-47b7-8aba-5432b9aa72b9.avro
- snap-8380191719297762539-1-b51968b3-8837-4c13-a9ec-74d71bac3565.avro
- README.md
- 00010-1-d5c93668-1e52-41ac-92a6-bba590cbf249-00001.parquet
- 00000-8e744276-bd72-4cb1-a7c8-c5bb250c5fa4.metadata.json
- 00001-d73c6ed6-f422-4ee7-9d41-39fd748f4026.metadata.json
- b60343c9-e792-4e41-993e-0f3cd2aab484-m0.avro
- snap-8205833995881562618-1-b60343c9-e792-4e41-993e-0f3cd2aab484.avro
- check.py
- check_pyiceberg.py
- check_result.py
- execute.py
- init.py
- poetry.lock
- pyproject.toml
- .00000-0-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet.crc
- .00001-1-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet.crc
- .00002-2-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet.crc
- 00000-0-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet
- 00001-1-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet
- 00002-2-b8982382-f016-467a-84e4-5e6bbe0ff19a-00001.parquet
- .10d28031-9739-484c-92db-cdf2975cead4-m0.avro.crc
- .snap-1646658105718557341-1-10d28031-9739-484c-92db-cdf2975cead4.avro.crc
- .v1.metadata.json.crc
- .v2.metadata.json.crc
- .version-hint.text.crc
- 10d28031-9739-484c-92db-cdf2975cead4-m0.avro
- snap-1646658105718557341-1-10d28031-9739-484c-92db-cdf2975cead4.avro
- v1.metadata.json
- v2.metadata.json
- version-hint.text
- no_partition_test.toml
- partition_day_test.toml
- partition_hash_test.toml
- partition_hour_test.toml
- partition_identity_test.toml
- partition_month_test.toml
- partition_truncate_test.toml
- partition_year_test.toml
- docker-compose.yml
- README.md
- .gitignore
- Cargo.toml
- CHANGELOG.md
- LICENSE
- README.md
- rust-toolchain.toml
- rustfmt.toml
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/icelake-io/icelake
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd icelake
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Docker
쉬움 추천사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
docker compose -f testdata/docker/iceberg-fs/docker-compose.yaml up -d --build
compose 설정 파일에 정의된 서비스들을 대상으로 명령을 실행합니다.
터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.
3. Maven (Java)
보통사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- JDK (Java) Java 프로젝트를 빌드/실행하려면 필요합니다.
- Maven mvn 명령어를 쓰기 위한 빌드 도구입니다.
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
cd docker/spark
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
mvn clean install
Maven으로 의존성 설치와 빌드를 진행합니다.
BUILD SUCCESS 메시지가 뜨면 성공입니다. target/ 폴더에 결과물이 생성됩니다.
4. Python
쉬움사전 준비물
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
pip install .
PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.
python <실행할 파일명>.py # README에서 정확한 실행 파일명을 확인하세요
파이썬 스크립트(또는 모듈)를 실행합니다.
에러 메시지 없이 실행되고 터미널에 안내 문구가 출력되면 정상입니다.
5. Rust
보통사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Rust (rustup) rustup으로 설치하면 cargo도 함께 설치됩니다.
cargo build --release
Rust 프로젝트를 컴파일합니다.
cargo run
빌드 후 바로 실행까지 진행합니다.
cargo build가 에러 없이 끝나면 성공입니다. target/ 폴더에 실행 파일이 생성됩니다.
// repository documentation
Was this content helpful?
(0 ratings)
