apache / apache/datafusion-sqlparser-rs
snowflake column identifier for copy into / query data staged in files
- Ngôn ngữ chính
- Rust
- Star
- 3.5k
- Fork
- 772
- Merge trung bình
- 4 ngày 9 giờ
- Pull request đã merge (30 ngày)
- 17
Mô tả
According to documentation, Snowflake allows:
* [query data staged in files](https://docs.snowflake.com/en/user-guide/querying-stage.html#required-parameters) with an identifier of a form `[.]$[.]`
* [copy into table](https://docs.snowflake.com/en/user-guide/data-load-transform.html) with an column identifier containing `$` character like `select t.$1,t.$2,t.$3 from @~/datafile.csv.gz t;`
Although the feature seems to be snowflake specific, it cannot be implemented within snowflake dialect. It's because tokens starting with `$` character are tokenized into `Token::Placeholder`. That's why parser's change is required.
Initial OpenLineage project issue: https://github.com/OpenLineage/OpenLineage/issues/814
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu trong lexer và parser bằng cách xem xét việc xử lý các token bắt đầu bằng `$`, đặc biệt là đường dẫn hiện đang tạo ra `Token::Placeholder`, và xem xét việc xử lý dialect Snowflake. Công việc hoàn tất khi các dạng cột staged-file và COPY INTO được ghi lại trong tài liệu được parse chính xác mà không làm hồi quy cú pháp placeholder hiện có.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- rust, sql
- Lĩnh vực
- compilers, databases
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100