Were you using it for simple grep search or actually required advanced searching for eg: BM25. Clickhouse will only help you with grep like search from what I understand.
HN user
arunmu
There is pgvectorscale from timescale which uses disk ann based data structure and has support for pre and post filtering.
Thanks. We are already using timescale postgres image for pgvectorscale with some customizations on tsvector and GIN indexes. Would be nice to have bm25 as well. Any specific reason why this was not made open source from the get go or is it the usual phased approach by Timescale (now Tigerdata)? If not, it is a worrying signal as the same could happen with pgvectorscale development as well.
Anyways really appreciate the free offerings by timescale. Really makes things easy.
I would very much like it if it was opensourced like pgvectorscale and timescale extension itself
I am a big fan of cloudflare blogs. The tech blogs are usually highly detailed and there is so much to learn from those.
But this one, interesting but was not a practical choice at all from what I gather reading the blog. The reason given for not using Clickhouse which they are already using for analytics was vague and ambiguous. Clickhouse does support JSON which can be re-written into a more structured table using MV. Aggregation and other performance tuning steps are bread and butter of using Clickhouse.
The decision to go with postgres and learn the already known limitations the hard way and then continue using it by bringing up a new technology (Timescale) does not sound good, assuming that Cloudflare at this point might already have lots of internal tools for monitoring clickhouse clusters.
Thanks. I would have preferred to use Go instead of Python, but somehow the language is not picking up a lot in terms of new LLM frameworks.
As of now, I am using very light weight abstractions over prompts in python and that gets the job done. But, it is way too early and I can see how pipelining multiple LLM calls would need a good library that is not too complex and involved. In the end it is just a API call and you hope for the best result :)
No LangChain, no LangGraph, no LlamaIndex, no CrewAI
Bless you. Using these over complicated abstractions (except CrewAI which I haven't yet checked out) never made sense to me. I understand that LLM is no magic wand and there is a need to make it systematic rather than slapping prompts everywhere. But these frameworks are not the solution to it. Next I will be looking at is Microsofts semantic-kernel. Anybody has any good words for it ?
I wonder why not clickhouse. Cloudflare has already deployed a lot of analytics services based on CH. Would have been nice if they could provide more details on that.
I have been a big fan of C++ and have had used it for about 8-9 years professionally as well as for side projects. The baggage that comes with it is just not worth it. My recommendation for any new project is to go either with Go or Rust as a C++ replacement unless the environment or hardware or resource constraints does not allow you otherwise.
As an individual developer, learning and being an expert in C++ intricacies is not worth the time and effort. Instead learn more about data layout in memory, hardware, language tooling etc and write code accordingly in a much better language as per the _need_ and C++ would really only qualify for very niche requirements.
Really disappointing post from QuestDB. I would have expected them to do some research on how to design CH table schema before doing such kind of benchmark. The queries used does not take into account the primary key/order by fields. Based on query to be optimized, once could use Projections or MV. Perhaps a bit more work is needed, but that's the clickhouse way of doing it.
Thank you. My only nit is the way the ratio (CH/TS) is shown. What is the purpose of that ? It will show a bigger percentage for cases in which TS is better, but lower percentage for cases where CH is giving better results. From the data representation perspective, I do not thinnk that is fair.
What is the difference w.r.t the comparison done by Altinity of clickhouse with timescale ? Clickhouse performed better there for the same test. What gives ?
Thats awseome! Thanks for sharing.
Its only fair to also write "Also be slower but definitely more safer than C++".
Most optimizations you can do by reusing a moved value could be done automatically by the compiler
Not if constructing the object is costly. It is very well possible for an object not to have a default constructor.
Moves are runtime moves, so you can still attempt to access the value at compile time.
What do you mean by that ? Are you saying the standard decided to make it non-destructive moves ? Then yes, it is a possible scenario for error but also a performance advantage in some cases.
I do not contest on the opinion that Rust is a good language, but it slightly hurts me when people club C and C++ together. One can easily write correct by construction code using modern C++. Use of meta-programs allows you to create typesafe constructs. It provides you with zero cost abstractions to specify ownership of resources and ..... <I can go on> One has to just strive to not use the C baggage that comes with it.
If its written in python all they have to do is `import soul` ;)
How and who allowed them to publish such a ridiculous paper !!?? There is so many un-idiomatic C++ code... And does the topic even fit to be published as part of ACM ??
Yeah. That would be really nice as these languages are competing for the same ground. Go beats all in ease of programming but something is not quite satisfying with it(my personal opinion). I really like having control of my memory. But that doesn't matter usually for most of the application processes.
Would love to repeat this sometime using pure modern C++.