Cassandra
CassandraCassandra قاعدهای دارد که برای کسی که با SQL بزرگ شده تکاندهنده است: **اول کوئری را بنویس، بعد جدول را طراحی کن.** نرمالسازی اینجا اشتباه است و تکرار داده درست. این مسیر آن وارونگی ذهنی را جا میاندازد، چون بدون آن هر چیزی که در Cassandra بسازی بالاخره از کار میافتد.
پیشرفت تو
درصد هر فصل از دو چیز میآید: چقدر از بخشهایش را خواندهای (۵۵٪) و چند تمرینش را تیک زدهای (۴۵٪). همهچیز داخل مرورگر خودت میماند.
فصل
فصلها به هم وابستهاند و ترتیبشان معنا دارد. هر مسیر با پروژههای نهایی تمام میشود: ساده، متوسط، پیچیده.
چرا Cassandra
مقیاس افقی، بدون نقطهٔ شکست واحد.
در نوبت نوشتنمعماری
حلقه، گره، تکرار و gossip.
در نوبت نوشتنمدل داده
keyspace، جدول، ستون و انواع.
در نوبت نوشتنکلید partition
مهمترین تصمیم: توزیع و hot partition.
در نوبت نوشتنمدلسازی کوئریمحور
اول کوئری، بعد جدول — و تکرار عمدی داده.
در نوبت نوشتنCQL
شبیه SQL است، ولی نیست.
در نوبت نوشتنثبات قابل تنظیم
ONE، QUORUM، ALL و قضیهٔ CAP در عمل.
در نوبت نوشتنمسیر نوشتن
commit log، memtable، SSTable و compaction.
در نوبت نوشتنحذف و tombstone
چرا حذف در Cassandra گران است.
در نوبت نوشتنعملیات
افزودن گره، repair و مانیتورینگ.
در نوبت نوشتناتصال از اپ
prepared statement، صفحهبندی و تلاش مجدد.
در نوبت نوشتنضدالگوها
ALLOW FILTERING، صف، و مدل رابطهای تحمیلی.
در نوبت نوشتنپروژهٔ ۱ — مدلسازی از روی کوئری
سه کوئری، سه جدول.
در نوبت نوشتنپروژهٔ سادهپروژهٔ ۲ — سری زمانی
دادهٔ حسگر با partition زمانمحور.
در نوبت نوشتنپروژهٔ متوسطپروژهٔ ۳ — کلاستر چندگره
replication، ثبات و تحمل خطا.
در نوبت نوشتنپروژهٔ پیچیده