{"adoption": {"forks": 1168, "observed_at": "2026-08-28T04:08:03.076577+00:00", "stars": 3406}, "canonical_url": "https://ross.abutalabs.com/products/linkis", "card": {"archived": false, "artifact_type": "service", "description": "Apache Linkis builds a computation middleware layer to facilitate connection, governance and orchestration between the upper applications and the underlying data engines.", "domain": ["big-data", "databases", "backend", "apis", "microservices"], "enriched": true, "function": ["api-framework", "http-server", "rpc", "scheduling", "workflow-automation", "database", "middleware"], "health_score": 94, "homepage": "https://linkis.apache.org/", "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["apache/linkis"], "name": "apache/linkis", "platform": ["jvm", "self-hosted"], "pushed_at": "2026-08-19T08:13:46+00:00", "repo": "apache/linkis", "stars": 3406, "tags": ["computation-middleware", "spark", "hive", "presto", "flink", "jdbc-gateway", "engine-orchestration", "multi-tenant", "resource-management", "scriptis", "job-execution", "data-engineering", "linux", "docker", "web-server"], "topics": ["sql", "spark", "hive", "pyspark", "livy", "linkis", "engine", "storage", "resource-manager", "application-manager", "context-service", "scriptis", "udf", "hive-table", "rest-api", "jobserver", "thrift-server", "jdbc", "presto", "impala"], "urls": [], "use_cases": ["submit Spark or Hive jobs through a unified REST/JDBC gateway", "give multiple applications one entrance to many big data engines", "manage multi-tenant compute resource quotas and load balancing", "share UDFs, variables, and scripts across applications and engines", "route and orchestrate tasks across OLAP, OLTP, and streaming engines", "decouple applications from engine changes in a data platform", "run interactive SQL queries against Presto, Hive, or Trino via one API"], "what_it_is": "Apache Linkis is a computation middleware layer that sits between upper-layer applications and underlying big data engines such as Spark, Hive, Presto, Flink, and JDBC databases. It exposes standardized REST, WebSocket, and JDBC interfaces for submitting and governing jobs, with unified resource sharing (variables, UDFs, scripts), task routing, load balancing, and multi-tenant resource control.", "when_to_avoid": ["you only need a single engine connection - use the engine's native client or Livy directly", "you want a lightweight SQL client or BI tool rather than platform middleware", "your stack is not JVM/big-data oriented and the deployment overhead outweighs benefits", "you need a fully managed cloud service rather than self-hosted infrastructure"], "when_to_choose": ["you operate a big data platform with many engines and need a unified access layer", "you want standardized REST/JDBC/WS interfaces instead of direct engine connections", "you need multi-tenant resource governance, task routing, and audit controls", "you want to share user resources like UDFs and scripts across tools"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/linkis", "repo": "apache/linkis", "role": "main", "score": 71}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:03.076577+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:38:36.098936+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "edb7a2d97b210dafdcff031faabb426101b73487297507ea5ff749c4192e50e3", "fetched_at": "2026-08-28T04:08:03.076577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/linkis"}, {"content_hash": "54350c6f5878bf549b24e77662b1acbceb27389665e915bcead9841c28cb78f7", "fetched_at": "2026-08-29T09:32:41.921932+00:00", "kind": "homepage", "missing": false, "url": "https://linkis.apache.org/"}, {"content_hash": "9bb896250b269d88bf3fb905415d0498e3d668ee94471ef33f42f5a554e5198f", "fetched_at": "2026-08-29T09:32:41.924293+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/latest/about/introduction"}, {"content_hash": "dee10a92a2d1613639287a6ed003ae777cf7062e7d72613cfce33f0046179228", "fetched_at": "2026-08-29T09:32:41.926295+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.7.0/about/introduction"}, {"content_hash": "6aa4df9665df3426ea567057febdadacdd49fa71876b0ef0fdac175322976948", "fetched_at": "2026-08-29T09:32:41.927968+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.6.0/about/introduction"}, {"content_hash": "7fa5268afe65a81a87d675e3b130de85fecc8589c75640da98cc331eae0be037", "fetched_at": "2026-08-29T09:32:41.929726+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.5.0/about/introduction"}, {"content_hash": "69631d3f056e2ebaa0c76895cff1ae1c6eec8f04f6e0d01a0693707c60f30384", "fetched_at": "2026-08-29T09:32:41.931452+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.4.0/about/introduction"}, {"content_hash": "8579b3df3ffb1e6e71096c7b9956c4b8ce6a43c625989128ec1df50b08e5df06", "fetched_at": "2026-08-29T09:32:41.933081+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/docs/1.9.0/about/introduction"}, {"content_hash": "c395abe8e745cd9e787faa625d17d5f9364dbd5927c98d5e54e5e7d58eef5d11", "fetched_at": "2026-08-29T09:32:41.934814+00:00", "kind": "site_page", "missing": false, "url": "https://linkis.apache.org/faq/main"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 20}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2598, "days_push": 14, "days_rel": 320, "gap_med": 281, "n_releases_24m": 2}, "score": 71, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}