I migrated a couple of projects from Java, TS and Go to Rust and honesly, I couldn't be happier.
95 karma · joined November 25, 2016
I migrated a couple of projects from Java, TS and Go to Rust and honesly, I couldn't be happier.
I'm not a programming language expert, but my understanding is that discrimitated enums is jut a way to support sum types. Dart now has the sealed class modifier [1], that fills this role.
Did you notice any improvements with your condition (type 1 diabetes) once you started to do intermittent fasting?
Great that someone is productionalizing this!
Btw, is Jon involved in ReadySet?
[1] Partial State in Dataflow-Based Materialized Views - https://github.com/mit-pdos/noria
I always liked this model since it gives the best isolation and not having to code with multi-tenant in mind really simplifies development and security. But maintaing an infra for this is hard and costly.
[1] https://docs.microsoft.com/en-us/azure/architecture/isv/appl...
I tried creating this culture of blogging but failed, would love to hear strategies that worked to achieve this.
I dindn't get this:
`OrioleDB implements default 64-bit transaction identifiers, thus eliminating the well-known and painful wraparound problem`
I thought that PG's 32-bit transaction identifier and wraparound issue was due to the current MVCC implementation that keeps old versions of rows in page tables, so there is the need to vacuum to clean up the dead rows. So my assumption was that using another approach for MVCC, like the UNDO log, this problem wouldn't exist (since page tables would only have the latest version).
What am I missing here?
I once started building as a side project something similar but focused on querying cloud resources (like S3 buckets, ec2s, etc... discovering the biggest file from a bucket was trivial with this). I abandoned the project but someone else built a startup on the same concept - even the name was the same: cloudquery.
I built it using the multicorn [1] postgres extension and it is deligthful of how easy it to get something simple running.
Just read that the meaning of oku [1] is 1) private, intimate, and deep; 2) exalted and sacred; and, 3) profound and recondite
anyway, your brazilian users will find this funny since oku has the same sound of "o cu" that literally means "the butt hole".
[1] https://en.wikipedia.org/wiki/Oku_(theory)#:~:text=3%20Bound....
This comes with the advantes for Pg developers (and us!) that they don't need to deal with tons of data races issues, but the trade off is that memory wise, a process takes way more memory than a thread.
However, the product in question (Upstash), looks very interesting: serverless storage with a pay as you go model with a maximum price cap is an excelent idea.
I would love to have more options in this space, especially in GCP to use together with Cloud Run.
However, the competion was fierce and each Big Data vendor (MapR, Cloudera and HortonWorks) was pushing its own solution: Drill, Impala and Hive on Tez. Competion is always a good thing, but it fragmented the user base too much so no clear winner emerged.
At the same time, Spark SQL got sufficiently better to replace these tools in most use cases and Presto (from Facebook) got the traction and the user base that none of these projects had by being vendor agnostic (and its adoption by AWS in Athena and EMR also helped boost its popularity).
If you have mongodb enterprise you can use Mongo bi connector and connect it with any bi tool. I recommend metabase since it is open source and very good for slice and dice and reports.
The mongodb bi connector is a postgres with foreign data wrapper to mongodb. So even if you don't have a mongodb subscription, you may be able to pull this off using the OS version https://github.com/EnterpriseDB/mongo_fdw
https://corporate.takeaway.com/investors/results-and-reports
Prices were raised and I doubt restaurants and delivery guys are making more money in this scenario than they used to.
This is the only official implementation from AWS: https://github.com/awslabs/amazon-kinesis-client
The client handles horizontal scalling, checkpoiting, shards split and shards merges. Using just the SDK, you have to build this yourself (unless you are using Kinesis for use cases that dont need it to be done correctly).
This is the doc for developing consumers using the SDK https://docs.aws.amazon.com/streams/latest/dev/developing-co...
And in the second paragraph of this documentation: "These examples discuss the Kinesis Data Streams API and use the AWS SDK for Java to get data from a stream. However, for most use cases, you should prefer using the Kinesis Client Library (KCL) . For more information, see Developing KCL 1.x Consumers."
It is possible to write clients in any language, however, it is not that simple especially when you need to handle logic of scalling out or in your kinesis stream (that will split or join shards) and when you have multiple consumers in the same consumer group (you will need a distributed locking mechanism and a logic to steal locks if one consumer dies).
So it is not trivial.
https://medium.com/revolut/recording-more-events-but-where-w...
Not exactly the same architecture you are proposing, and quite complex tbh, but it is working for them.
But aws offers a proxy exactly for this purpose.
This cost is kind of hidden since to estimate this in the early stages of a project is an art. In one project on my team the IO cost is about 8x more than cost of instances. But imo it is still worth and I never actually calculated how much we would pay if we were running on RDS + provisioned IOPS.
https://g1.globo.com/economia/agronegocios/noticia/2019/05/2...
Most of the code base of this company was java, go and PHP. And the comments were on Chinese and they were doing a task force to translate to English.
[1] https://github.com/alibaba/jstorm [2] https://dubbo.incubator.apache.org/en-us/ [3] https://github.com/CodisLabs/codis [4] https://github.com/alibaba/canal
for instance, for a query like:
select day_of_year, year, count(*) from orders where year >= 2016 group by day_of_year, year
you can create a line visualization that will display the different years as different lines in about 2 or 3 clicks.
AFAIK, there is no book for Metabase. But the documentation and the project is really straightforward.
Tableau is awesome, but I believe that most of its features are not used soo often. A simpler tool can provide almost the same or more value than Tableau in some cases. Well, a tool that you don't need to pay expensive licenses for each user makes it more democratic, everyone on the organization can visualize and create new analysis.
If by reports you mean a daily email sent with a table and some graphs attached them both suck. The only tool that I know that excels on this is Reporting Services from Microsoft.
But they are really OK for dashboards and visualizations. Metabase has a pulse feature where you can schedule to send a visualization to email or slack, but not something very fancy.