본문으로 건너뛰기
cccskills
무료GitHub에 공개

cache-function-results

Add caching to Datagrok functions using meta.cache annotations

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md3.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Cache Function Results

Help the user add caching to Datagrok functions to improve performance by storing results for repeated calls with the same inputs.

Usage

/cache-function-results [function-name] [--mode <client|server|all>]

Instructions

1. Choose the cache mode

Add meta.cache annotation to the function header:

  • client — stores results in the browser's IndexedDB
  • server — stores results on the Datagrok server
  • all — uses both client and server caches together

2. Add caching to a TypeScript/JavaScript function

//name: Get Users
//meta.cache: all
//meta.cache.invalidateOn: 0 0 * * *
//output: dataframe result
export async function getUsers(): Promise<DG.DataFrame> {
  // Expensive operation — results will be cached
}

3. Add caching to a Python/R script

#name: Example
#language: python
#meta.cache: client
#meta.cache.invalidateOn: 0 * * * *
#input: string table [Data table]
#output: int result

...

4. Add caching to a SQL query

--name: ActivityDetails
--connection: Chembl
--meta.cache: all
--meta.cache.invalidateOn: 0 0 * * *
--input: string target = "CHEMBL1827"
SELECT * FROM activity_details WHERE target_id = @target
--end

5. Set cache invalidation

Use meta.cache.invalidateOn with a cron expression to control when cached results expire:

Cron expressionMeaning
0 * * * *Every hour
0 0 * * *Every day at midnight
0 0 * * 1Every Monday at midnight
0 0 1 * *First day of each month

If meta.cache.invalidateOn is not specified, the cache never expires automatically.

6. Cache all queries under a connection

Instead of annotating each query, enable caching at the connection level:

Via UI: Right-click the connection > Edit... > check Cache Results and optionally fill Invalidate On.

Via connection JSON:

{
  "name": "Northwind",
  "parameters": {
    "server": "db.example.com",
    "port": 5432,
    "db": "mydb",
    "cacheResults": true,
    "cacheSchema": false
  }
}

7. Client-side cache limits

  • Function output must be scalar (int, float, string) or dataframe, graphics, datetime
  • Maximum cache size per function: 100 MB
  • Maximum record count: 100,000
  • Users enable it in Settings > Cache > Client-side cache

8. Server-side cache

  • No restrictions on size or parameter types
  • Users enable it in Settings > Cache > Server-side cache
  • Works together with client-side cache when mode is all

Behavior

  • Default to meta.cache: all unless the user specifies a preference.
  • Always suggest adding meta.cache.invalidateOn with an appropriate schedule — warn that without it the cache never refreshes.
  • Only recommend caching for functions that are immutable (same input produces same output).
  • Warn against caching database queries when the underlying data changes frequently.
  • For connection-level caching, mention that it applies to all queries under that connection.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Add support for a new curve data format in the Curves package converter system

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

Create info panels that appear in the context panel based on semantic types

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

Add a new single-objective optimization algorithm to the sci-comp library. Use when the user asks to implement a new optimizer (e.g. gradient descent, BFGS, simulated annealing, differential evolution).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

Add unit tests to a Datagrok package

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

Answer a "how do I …" question about the platform with a Gherkin scenario on @datagrok-libraries/bdd that is filmed into a how-to video (grok-bdd guide), so the answer is demonstrated, sent as a video plus numbered steps, and kept as a regression test; the same scenarios, filmed in help mode, are the GIFs of the help pages

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

Translate hand-written Playwright specs (or any existing UI tests) into Gherkin features on @datagrok-libraries/bdd, then prove the features test what they claim by backward-matching them against the originals with independent reviewers, and fix the gaps in the core, the library and the features

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

datagrok-ai/public742026년 10월 22일 업데이트

datagrok-ai의 스킬 모두 보기

이 스킬의 문제 신고