[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73059":3},{"id":4,"name":5,"fullName":6,"owner":5,"repo":5,"description":7,"homepage":8,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":24,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":16,"lastSyncTime":29,"discoverSource":30},73059,"unitycatalog","unitycatalog\u002Funitycatalog","Open, Multi-modal Catalog for Data & AI","https:\u002F\u002Funitycatalog.io\u002F",null,"Java",3417,633,50,271,0,2,5,27,6,30.41,"Apache License 2.0",false,"main",true,[],"2026-06-12 02:03:09","\u003Cimg src=\".\u002Fdocs\u002Fassets\u002Fimages\u002Fuc-logo.png\" width=\"600px\" \u002F>\n\n# Unity Catalog: Open, Multimodal Catalog for Data & AI\n\nUnity Catalog is the industry’s only universal catalog for data and AI.\n\n- **Multimodal interface supports any format, engine, and asset**\n  - Multi-format support: It is extensible and supports Delta Lake, Apache Iceberg and Apache Hudi via UniForm, Apache Parquet, JSON, CSV, and many others.\n  - Multi-engine support: With its open APIs, data cataloged in Unity can be read by many leading compute engines.\n  - Multimodal: It supports all your data and AI assets, including tables, files, functions, AI models.\n- **Open source API and implementation** - OpenAPI spec and OSS implementation (Apache 2.0 license). It is also compatible with Apache Hive's metastore API and Apache Iceberg's REST catalog API. Unity Catalog is currently a sandbox project with LF AI and Data Foundation (part of the Linux Foundation).\n- **Unified governance** for data and AI - Govern and secure tabular data, unstructured assets, and AI assets with a single interface.\n\nThe current roadmap is available at [Unity Catalog Roadmap](roadmap.md).\n\n![UC Hero Image](.\u002Fdocs\u002Fassets\u002Fimages\u002Fuc.png)\n\n### Vibrant ecosystem\n\nThis is a community effort. Unity Catalog is supported by\n\n- [Amazon Web Services](https:\u002F\u002Faws.amazon.com\u002F)\n- [Confluent](https:\u002F\u002Fwww.confluent.io\u002F)\n- [Daft (Eventual)](https:\u002F\u002Fgithub.com\u002FEventual-Inc\u002FDaft)\n- [dbt Labs](https:\u002F\u002Fwww.getdbt.com\u002F)\n- [DuckDB](https:\u002F\u002Fduckdblabs.com\u002F)\n- [Fivetran](https:\u002F\u002Fwww.fivetran.com\u002F)\n- [Google Cloud](https:\u002F\u002Fcloud.google.com\u002F)\n- [Granica](https:\u002F\u002Fgranica.ai\u002F)\n- [Immuta](https:\u002F\u002Fwww.immuta.com\u002F)\n- [Informatica](https:\u002F\u002Fwww.informatica.com\u002F)\n- [Kuzu](https:\u002F\u002Fwww.kuzudb.com\u002F)\n- [LanceDB](https:\u002F\u002Flancedb.com\u002F)\n- [LangChain](https:\u002F\u002Fwww.langchain.com\u002F)\n- [LlamaIndex](https:\u002F\u002Fwww.llamaindex.ai\u002F)\n- [Microsoft Azure](https:\u002F\u002Fazure.microsoft.com)\n- [NVIDIA](https:\u002F\u002Fwww.nvidia.com\u002F)\n- [Onehouse](https:\u002F\u002Fwww.onehouse.ai\u002F)\n- [PuppyGraph](https:\u002F\u002Fwww.puppygraph.com\u002F)\n- [Salesforce](https:\u002F\u002Fwww.salesforce.com\u002F)\n- [StarRocks (CelerData)](https:\u002F\u002Fcelerdata.com\u002F)\n- [Spice AI](https:\u002F\u002Fgithub.com\u002Fspiceai\u002Fspiceai)\n- [Tecton](https:\u002F\u002Fwww.tecton.ai\u002F)\n- [Unstructured](https:\u002F\u002Funstructured.io\u002F)\n\nUnity Catalog is proud to be hosted by the LF AI & Data Foundation.\n\n\u003Ca href=\"https:\u002F\u002Flfaidata.foundation\u002Fprojects\">\n  \u003Cimg src=\".\u002Fdocs\u002Fassets\u002Fimages\u002Flfaidata-project-badge-sandbox-color.png\" width=\"200px\" \u002F>\n\u003C\u002Fa>\n\n## Quickstart - Hello UC!\n\nLet's take Unity Catalog for spin. In this guide, we are going to do the following:\n\n- In one terminal, run the UC server.\n- In another terminal, we will explore the contents of the UC server using a CLI.\n  An example project is provided to demonstrate how to use the UC SDK for various assets\n  as well as provide a convenient way to explore the content of any UC server implementation.\n\n> If you prefer to run Unity Catalog in Docker use `docker compose up`. See the [Docker Compose docs](.\u002Fdocs\u002Fdocker_compose.md) for more details.\n\n### Prerequisites\n\nYou have to ensure that your local environment has the following:\n\n- Clone this repository.\n- Ensure the `JAVA_HOME` environment variable your terminal is configured to point to JDK17.\n- Compile the project using `build\u002Fsbt package`\n\n### Run the UC Server\n\nIn a terminal, in the cloned repository root directory, start the UC server.\n\n```sh\nbin\u002Fstart-uc-server\n```\n\nFor the remaining steps, continue in a different terminal.\n\n### Operate on Delta tables with the CLI\n\nLet's list the tables.\n\n```sh\nbin\u002Fuc table list --catalog unity --schema default\n```\n\nYou should see a few tables. Some details are truncated because of the nested nature of the data.\nTo see all the content, you can add `--output jsonPretty` to any command.\n\nNext, let's get the metadata of one of those tables.\n\n```sh\nbin\u002Fuc table get --full_name unity.default.numbers\n```\n\nYou can see that it is a Delta table. Now, specifically for Delta tables, this CLI can\nprint a snippet of the contents of a Delta table (powered by the [Delta Kernel Java](https:\u002F\u002Fdelta.io\u002Fblog\u002Fdelta-kernel\u002F) project).\nLet's try that.\n\n```sh\nbin\u002Fuc table read --full_name unity.default.numbers\n```\n\n### Operate on Delta tables with DuckDB\n\nFor operating on tables with DuckDB, you will have to [install it](https:\u002F\u002Fduckdb.org\u002Fdocs\u002Finstallation\u002F) (version 1.0).\nLet's start DuckDB and install a couple of extensions. To start DuckDB, run the command `duckdb` in the terminal.\nThen, in the DuckDB shell, run the following commands:\n\n```sql\ninstall uc_catalog from core_nightly;\nload uc_catalog;\ninstall delta;\nload delta;\n```\n\nIf you have installed these extensions before, you may have to run `update extensions` and restart DuckDB\nfor the following steps to work.\n\nNow that we have DuckDB all set up, let's try connecting to UC by specifying a secret.\n\n```sql\nCREATE SECRET (\n      TYPE UC,\n      TOKEN 'not-used',\n      ENDPOINT 'http:\u002F\u002F127.0.0.1:8080',\n      AWS_REGION 'us-east-2'\n );\n```\n\nYou should see it print a short table saying `Success` = `true`. Then we attach the `unity` catalog to DuckDB.\n\n```sql\nATTACH 'unity' AS unity (TYPE UC_CATALOG);\n```\n\nNow we are ready to query. Try the following:\n\n```sql\nSHOW ALL TABLES;\nSELECT * from unity.default.numbers;\n```\n\nYou should see the tables listed and the contents of the `numbers` table printed.\nTo quit DuckDB, press `Ctrl`+`D` (if your platform supports it), press `Ctrl`+`C`, or use the `.exit` command in the DuckDB shell.\n\n### Interact with the Unity Catalog UI\n\n![UC UI](.\u002Fdocs\u002Fassets\u002Fimages\u002Fuc-ui.png)\n\nTo use the Unity Catalog UI, start a new terminal and ensure you have already started the UC server (e.g., `.\u002Fbin\u002Fstart-uc-server`)\n\n**Prerequisites**\n\n- Node: https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002Fpackage-manager\n- Yarn: https:\u002F\u002Fclassic.yarnpkg.com\u002Flang\u002Fen\u002Fdocs\u002Finstall\n\n**How to start the UI through yarn**\n\n```\ncd \u002Fui\nyarn install\nyarn start\n```\n\n## CLI tutorial\n\nYou can interact with a Unity Catalog server to create and manage catalogs, schemas and tables,\noperate on volumes and functions from the CLI, and much more.\nSee the [cli usage](docs\u002Fusage\u002Fcli.md) for more details.\n\n## APIs and Compatibility\n\n- Open API specification: See the [Unity Catalog Rest API](https:\u002F\u002Fdocs.unitycatalog.io\u002Fswagger-docs\u002F).\n- Compatibility and stability: The APIs are currently evolving and should not be assumed to be stable.\n\n## Building Unity Catalog\n\nUnity Catalog is built using [sbt](https:\u002F\u002Fwww.scala-sbt.org\u002F).\n\nTo build UC (incl. [Spark Integration](.\u002Fconnectors\u002Fspark) module), run the following command:\n\n```sh\nbuild\u002Fsbt clean package publishLocal\n```\n\nRefer to [sbt docs](https:\u002F\u002Fwww.scala-sbt.org\u002F1.x\u002Fdocs\u002F) for more commands.\n\n## Deployment\n\n- To create a tarball that can be used to deploy the UC server or run the CLI, run the following:\n  ```sh\n  build\u002Fsbt createTarball\n  ```\n  This will create a tarball in the `target` directory. See the full [deployment guide](docs\u002Fdeployment.md) for more details.\n\n## Compiling and testing\n\n- Install JDK 17 by whatever mechanism is appropriate for your system, and\n  set that version to be the default Java version (e.g. via the env variable `JAVA_HOME`)\n- To compile all the code without running tests, run the following:\n  ```sh\n  build\u002Fsbt clean compile\n  ```\n- To compile and execute tests, run the following:\n  ```sh\n  build\u002Fsbt -J-Xmx2G clean test\n  ```\n- To execute tests with coverage, run the following:\n  ```sh\n  build\u002Fsbt -J-Xmx2G jacoco\n  ```\n- To update the API specification, just update the `api\u002Fall.yaml` and then run the following:\n  ```sh\n  build\u002Fsbt generate\n  ```\n  This will regenerate the OpenAPI data models in the UC server and data models + APIs in the client SDK.\n- To format the code, run the following:\n  ```sh\n  build\u002Fsbt javafmtAll\n  ```\n\n## Setting up IDE\n\nIntelliJ is the recommended IDE to use when developing Unity Catalog. The below steps outline how to add the project to IntelliJ:\n\n1. Clone Unity Catalog into a local folder, such as `~\u002Funitycatalog`.\n2. Select `File` > `New Project` > `Project from Existing Sources...` and select `~\u002Funitycatalog`.\n3. Under `Import project from external model` select `sbt`. Click `Next`.\n4. Click `Finish`.\n\nJava code adheres to the [Google style](https:\u002F\u002Fgoogle.github.io\u002Fstyleguide\u002Fjavaguide.html), which is verified via `build\u002Fsbt javafmtCheckAll` during builds.\nIn order to automatically fix Java code style issues, please use `build\u002Fsbt javafmtAll`.\n\n### Configuring Code Formatter for Eclipse\u002FIntelliJ\n\nFollow the instructions for [Eclipse](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fgoogle-java-format#eclipse) or\n[IntelliJ](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fgoogle-java-format#intellij-android-studio-and-other-jetbrains-ides) to install the **google-java-format** plugin (note the required manual actions for IntelliJ).\n\n### Using more recent JDKs\n\nThe build script [checks for a lower bound on the JDK](.\u002Fbuild.sbt#L14) but the [current SBT version](.\u002Fproject\u002Fbuild.properties)\nimposes an upper bound. Please check the [JDK compatibility](https:\u002F\u002Fdocs.scala-lang.org\u002Foverviews\u002Fjdk-compatibility\u002Foverview.html) documentation for more information\n\n### Serving the documentation with mkdocs\n\nFor an overview of how to contribute to the documentation, please see our introduction [here](.\u002Fdocs\u002FREADME.md).\nFor the official documentation, please take a look at [https:\u002F\u002Fdocs.unitycatalog.io\u002F](https:\u002F\u002Fdocs.unitycatalog.io\u002F).\n","Unity Catalog 是一个开放的多模态数据和AI目录系统。它支持多种格式、引擎和资产，包括Delta Lake、Apache Iceberg、Apache Hudi等多种数据格式，并且可以通过其开放API被主流计算引擎读取。此外，Unity Catalog还能够管理表格数据、非结构化资产以及AI模型等所有类型的数据和AI资产，提供统一的治理界面。适用于需要跨不同存储格式和计算引擎进行数据管理和访问的企业级应用场景。项目采用Apache 2.0许可证开源，并得到了来自AWS、Google Cloud等多个知名企业的支持。","2026-06-11 03:44:08","high_star"]